Skip to content

Detach lifecycle span from L.Context()#64

Closed
danielorbach wants to merge 1 commit into
mainfrom
issue-56-attempt-1-detach
Closed

Detach lifecycle span from L.Context()#64
danielorbach wants to merge 1 commit into
mainfrom
issue-56-attempt-1-detach

Conversation

@danielorbach
Copy link
Copy Markdown
Owner

This PR preserves the first attempt at resolving #56 as a reference. It is opened as a draft and closed immediately; the goal is a persistent GitHub URL the merged PR can cite.

The attempt detaches the lifecycle span from l.Context() so handler-derived spans become roots, but keeps the lifecycle span itself open for the duration of the component. L.Span() exposes the span for callers that want to record onto it (loader's Claim.Exec) or use its SpanContext as a span link target. The shape was abandoned in favor of dropping the long-lived span entirely; the trade-offs that drove the change are captured in the discussion on the merged PR.

Not for review. Not for merge.

This attempt keeps a long-lived lifecycle span on L but stops propagating
it through l.Context(), so spans started from l.Context() are roots of
bounded per-handler traces. L.Span() exposes the lifecycle span; loader
opts back into nesting via trace.ContextWithSpan(l.Context(), l.Span()).

Saved as reference; the long-lived span itself remains an open issue and
the next attempt explores eliminating it entirely.
@danielorbach danielorbach self-assigned this May 31, 2026
@danielorbach
Copy link
Copy Markdown
Owner Author

Preserved as a reference for the discussion on #63. Not for merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant