refactor(tracing)!: drop the Agentex span processor and own the Span model in lib - #517
refactor(tracing)!: drop the Agentex span processor and own the Span model in lib#517mohammadatallah-scale wants to merge 2 commits into
Conversation
…he Span model in lib The Agentex server is retiring its Postgres-backed /spans API, so the processor that wrote to it goes, along with the Trace helpers that read spans back through the client. The SGP processor is the only sink. The in-memory Span handed to processors was the generated client type for that API. It now lives in agentex.lib.types.tracing and is still exported from agentex.lib.core.tracing, so it survives the generated surface disappearing when the server spec drops the routes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
P2 |
…, drop the tracer's dead client Review follow-ups on the span-processor removal: - Span keeps unknown keys like the generated model it replaces, so a custom processor's own attributes and older worker payloads survive. - set_processor_configs re-enters add_processor_config under the manager lock, which deadlocked on a plain Lock. Reentrant now, with tests for the SGP happy path and the batch registration. - Trace and Tracer no longer use the client they receive, so it is optional and the ADK tracing module stops building an httpx client per event loop. - Changelog entry for the breaking removals, stale prose updated. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Landed in 62b97be: changelog entry under the Unreleased breaking changes, SGP happy-path and batch-registration tests, the stale prose, the optional client (the ADK module no longer builds an httpx client per event loop) and the blank lines. Left as documented rather than shimmed: the generated base's to_dict / to_json defaults and model_construct coercion, named in the changelog entry. |
Important
Pending Mohammad's self-review. This note is removed by a human, not automation.
The problem. The Agentex server is retiring its Postgres spans API (scaleapi/scale-agentex#430). The SDK still ships the processor that writes to it and two trace helpers that read it back. The in-memory span handed to processors is that API's generated model, so it vanishes when the spec drops the routes.
The fix. This is a breaking change for the two removed surfaces.
Test plan
The changes since the previous review appear safe to merge, with no new actionable failures identified.
Summary
Spanthroughout tracing, ADK, Temporal, examples, and tests.Diagram
%%{init: {'theme': 'neutral'}}%% flowchart LR Caller[Tracing caller] --> Tracer[Tracer / AsyncTracer] Tracer --> Trace[Trace / AsyncTrace] Trace --> Span[Library-owned Span] Span --> Manager[TracingProcessorManager] Manager --> SGP[SGP tracing processor] SGP --> Backend[SGP backend]Reviews (2) · Last reviewed commit: "fix(tracing): keep extra span keys, make..."