You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix circular import by deferring tracing processor initialization
The circular import was caused by immediate instantiation of
AgentexTracingProcessorConfig at module load time in
tracing_processor_manager.py. This triggered a chain:
- tracer.py → tracing_processor_manager
- → agentex_tracing_processor → adk.utils.client
- → adk.utils → adk.providers → sgp → tracer.py (circular!)
Solution: Comment out the immediate initialization and defer it until
the tracing processor is actually needed. Added TODO to implement
proper lazy initialization pattern.
Also added late imports throughout the chain to break circular dependencies:
- templating.py modules use late imports
- TYPE_CHECKING for type-only imports
- Lazy proxy for adk.utils.templating module
Tests pass: test_function_tool.py now runs successfully.
0 commit comments