"""Traceability (KM-691): user-facing per-turn provenance. Captured by a per-request `TraceabilityScratchpad` inside `ChatHandler`, persisted through a `TraceabilityStore` before the `done` SSE event, and served by `GET /api/v1/traceability`. Kept separate from Langfuse observability (`src/observability/langfuse/`), which is engineering-only and PII-masked. """ from .schemas import ( PlanningInfo, PlanStep, ToolCallInfo, TraceabilityPayload, ) from .scratchpad import TraceabilityScratchpad, TraceabilityToolInvoker from .store import ( NullTraceabilityStore, PostgresTraceabilityStore, TraceabilityStore, ) __all__ = [ "NullTraceabilityStore", "PlanStep", "PlanningInfo", "PostgresTraceabilityStore", "ToolCallInfo", "TraceabilityPayload", "TraceabilityScratchpad", "TraceabilityStore", "TraceabilityToolInvoker", ]