| """BusinessContext reader — the single seam the slow path reads context through. |
| |
| `get_business_context(user_id)` is the one place the live flow obtains a |
| `BusinessContext`. Today it returns a minimal STUB so the slow path runs end to |
| end; when the lead's real Business Understanding source lands, swap the body here |
| (read the interview / stored context) and nothing upstream changes. |
| |
| See AGENT_ARCHITECTURE_CONTEXT_new.md §7.1. |
| """ |
|
|
| from __future__ import annotations |
|
|
| from .contracts import BusinessContext |
|
|
|
|
| async def get_business_context(user_id: str) -> BusinessContext: |
| """Return the user's BusinessContext. |
| |
| STUB until the lead's real source lands. `project_id` flows through as |
| `RunState.business_context_id`. Async so the real implementation (a DB / store |
| read) fits without changing this signature. |
| |
| TODO(lead): replace the body with the real read (Business Understanding store). |
| """ |
| return BusinessContext( |
| project_id=user_id, |
| industry="unknown", |
| completeness="partial", |
| business_description="(not yet captured — BusinessContext source pending)", |
| scale_and_scope="(unknown)", |
| ) |
|
|