✨ feat(telemetry): ReconfigureTracerProvider for sampler hot-reload (ADR-0023 Phase 3, sub-phase 3.1) #45
Reference in New Issue
Block a user
Delete Branch "feat/adr-0023-phase3a-telemetry-reconfigure"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sub-phase 3.1 of ADR-0023 Phase 3 (telemetry sampler hot-reload)
Per the Mistral-produced phase plan validated 2026-05-05 (Q-037 in mistral-quirks.md). Wiring lands in 3.2 (config callback) and 3.3 (server invocation) — kept separate for clean rollback.
What ships
ReconfigureTracerProvider(ctx, oldTP)onpkg/telemetry/telemetry.go: builds new TracerProvider with currentSetupsampler settings, swaps the global viaotel.SetTracerProvider, gracefully shuts down the old one.assert.Sameverifying actual behavior), error-tolerance when old TP shutdown fails.Verifier verdict (sub-agent review, applied)
Was: APPROVE_WITH_NITS. Two nits flagged + applied :
assert.Equal(X, X)line that was structural sanity, not behavior.Now: APPROVE.
Test plan
go test -race ./pkg/telemetry/...passesgo vet ./...clean