88a1dab810
---ci--- phase: 7 milestone: v0.2 status: complete requirements: covered: [REQ-2-001, REQ-2-002, REQ-2-003, REQ-2-004, REQ-2-005, REQ-2-006, REQ-2-007, REQ-2-008, REQ-2-009, REQ-2-010, REQ-2-011, REQ-2-012] partial: [] ---/ci--- Milestone v0.2 (ai-tutor-architecture) merged to main. Escalation record (audit remediation, durable): P1 executor delegation failed twice (empty subagent results, zero files created); auto-resolved at full autonomy to inline execution with identical plan fidelity (commit 3271373, reflog-only after phase branch squash-delete).
25 lines
655 B
Python
25 lines
655 B
Python
"""FastAPI dependencies — provider, settings, sessions, agents via app.state (DI)."""
|
|
|
|
from fastapi import Request
|
|
|
|
from ..agents.registry import AgentRegistry
|
|
from ..agents.session import SessionStore
|
|
from ..config import Settings
|
|
from ..llm.base import LLMProvider
|
|
|
|
|
|
def get_settings(request: Request) -> Settings:
|
|
return request.app.state.settings
|
|
|
|
|
|
def get_provider(request: Request) -> LLMProvider:
|
|
return request.app.state.provider
|
|
|
|
|
|
def get_session_store(request: Request) -> SessionStore:
|
|
return request.app.state.session_store
|
|
|
|
|
|
def get_agent_registry(request: Request) -> AgentRegistry:
|
|
return request.app.state.agent_registry
|