# Session notes — 24 Aug 2026

## Done

### Clarification flow
- Unit: `test_clarification_pause_and_resume` passed.
- Live Jira: created incomplete issue **AN-6** (thin description, label `agent-nova`).
  - Run `ef6248d4-a35d-4562-8c27-fe59e263e4f9` → `NEEDS_CLARIFICATION` + clarification comment posted.
  - Human-style reply via API → resume → `ARCHITECTING` with `requirements.json` + `design.json`.

### Live LLM wiring
- Startup logs now emit `jira_provider` and `llm_provider` on API and ARQ worker.
- `OpenAILLMClient` supports `analyze_requirements` and `design_solution`.
- Today `.env` still has `LLM_PROVIDER=mock` and empty `OPENAI_API_KEY` — live OpenAI comparison skipped.
- Mock comparison (SALES-101 / SALES-102):
  - clear → `is_clear=True`, confidence `0.82`, 0 questions
  - unclear → `is_clear=False`, confidence `0.35`, 2 questions
- To enable live: set `LLM_PROVIDER=openai`, `OPENAI_API_KEY=...`, restart **both** API and worker.

### Solution Architect (Phase 2 kickoff)
- New schema: `packages/artifacts/design.py` → `design.json`
- New agent: `packages/agents/solution_architect.py`
- Orchestrator node `architect` replaces stub; writes metadata plan; leaves run in `ARCHITECTING`
- No `DESIGN_REVIEW` human gate yet (deferred)

### Stabilization
- README: restart both uvicorn + arq after `.env` changes
- Tests force `JIRA_PROJECT_KEYS=SALES` so local `.env` (`AN`) does not break CI fixtures
- `pytest -q` → **12 passed**

## Blockers / next
- Paste OpenAI key and re-run mock vs live analyst comparison
- Optional: design approval (`DESIGN_REVIEW`) gate
- Phase 3: Salesforce Developer + Git/PR
- ngrok free URL still rotates — update Jira webhook URL after each ngrok restart
