Skip to content

Conversation

@apascal07
Copy link
Collaborator

@apascal07 apascal07 commented Aug 20, 2025

Summary of changes:

  • Tracer provider is now lazily instantiated when TracerProvider() is called instead of setting the state on each action.
  • Primitives have had underlying types changed to embed ActionDef[In, Out, Stream] which allows them to inherit all methods from the base core.Action interface. This was necessary to allow a common interface to be returned from plugins and passed around between NewAction, DefineAction, and registry.RegisterAction. This is a non-breaking change since all APIs operate on the interfaces only, not the underlying type.
  • Primitives now all have NewX functions that create a detached primitive which can then be registered with action.Register(registry).
  • Plugins have been updated to the new plugin API which does not concern itself with the registry and only returns action instances.

Checklist (if applicable):

@apascal07 apascal07 changed the title breaking(go): refactored primitives to be detached by default including in plugins Aug 20, 2025
@apascal07 apascal07 marked this pull request as ready for review August 20, 2025 23:10
@apascal07 apascal07 requested a review from pavelgj August 21, 2025 22:48
@huangjeff5
Copy link
Contributor

Resources + MCP changes look good to me.

Copy link
Contributor

@huangjeff5 huangjeff5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resources / MCP code changes LGTM

@apascal07 apascal07 merged commit df0d184 into main Aug 22, 2025
7 checks passed
@apascal07 apascal07 deleted the ap/go-detached-primitives branch August 22, 2025 19:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3 participants