Rifqi Hafizuddin Claude Opus 4.8 commited on
Commit Β·
726faa2
1
Parent(s): e4337a8
[KM-626] docs: record slow-path agent layer in PROGRESS
Browse filesPROGRESS.md: 2026-06-08 entry for the slow-path agent (TaskRunner + Assembler +
Coordinator under agents/slow_path/), the Orchestrator-vs-slow_path naming, and
the open follow-ups (live wiring, real invoker swap, GPT-mini deployment).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- PROGRESS.md +37 -1
PROGRESS.md
CHANGED
|
@@ -2,11 +2,47 @@
|
|
| 2 |
|
| 3 |
Persistent tracker mirroring the 42-item ownership table in `REPO_CONTEXT.md` "Team β division of work". Update as PRs land. Future Claude Code sessions read this to know what's already done.
|
| 4 |
|
| 5 |
-
**Last updated**: 2026-06-08 (
|
| 6 |
**Current open PR**: `pr/1` β active. Cleanup PR committed and pushed.
|
| 7 |
|
| 8 |
---
|
| 9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
## What just shipped (2026-06-08 β tool taxonomy + ownership revision)
|
| 11 |
|
| 12 |
Team decisions after the teammate pushed KM-624 (`src/tools/analytics/`):
|
|
|
|
| 2 |
|
| 3 |
Persistent tracker mirroring the 42-item ownership table in `REPO_CONTEXT.md` "Team β division of work". Update as PRs land. Future Claude Code sessions read this to know what's already done.
|
| 4 |
|
| 5 |
+
**Last updated**: 2026-06-08 (slow-path agent layer β TaskRunner + Assembler + Coordinator)
|
| 6 |
**Current open PR**: `pr/1` β active. Cleanup PR committed and pushed.
|
| 7 |
|
| 8 |
---
|
| 9 |
|
| 10 |
+
## What just shipped (2026-06-08 β KM-626: slow-path agent layer)
|
| 11 |
+
|
| 12 |
+
The rest of the slow path after the Planner (KM-567), from
|
| 13 |
+
`AGENT_ARCHITECTURE_CONTEXT_new.md` Β§7.4 / Β§7.5 / Β§8.2β8.4. Built and tested against
|
| 14 |
+
mocks; **not yet wired into the live `ChatHandler`** (waits on the tool team's real
|
| 15 |
+
`ToolInvoker` + a real `BusinessContext`). Fast path untouched.
|
| 16 |
+
|
| 17 |
+
**Naming:** "Orchestrator" = the entry dispatcher only (`agents/orchestration.py`).
|
| 18 |
+
The slow-path **workers** live in **`agents/slow_path/`** β deliberately NOT named
|
| 19 |
+
"orchestrator".
|
| 20 |
+
|
| 21 |
+
**Files added** (`src/agents/slow_path/`):
|
| 22 |
+
- `schemas.py` β `TaskResult`, `RunState` (Β§8.2); `TaskSummary`, `AnalysisRecord`,
|
| 23 |
+
`AssembledOutput`, `AssemblerNarrative` (Β§8.3). Reuses `ToolOutput`.
|
| 24 |
+
- `invoker.py` β `ToolInvoker` Protocol only (Β§8.4); the tool team owns the impl (KM-418).
|
| 25 |
+
- `errors.py` β `SlowPathError`, `AssemblerError`.
|
| 26 |
+
- `task_runner.py` β deterministic, 0 LLM: wave-based execution, `${t<id>}` placeholder
|
| 27 |
+
resolution, internal `validate_args`, never-throw invoke, status labeling,
|
| 28 |
+
degrade-and-continue β `RunState`.
|
| 29 |
+
- `assembler.py` + `prompt.py` + `config/prompts/assembler.md` β single LLM call β
|
| 30 |
+
`AssemblerNarrative`; code merges with `RunState` to build the `AnalysisRecord`
|
| 31 |
+
(structured fields copied, never re-authored).
|
| 32 |
+
- `coordinator.py` β `SlowPathCoordinator`: Planner β TaskRunner β Assembler.
|
| 33 |
+
|
| 34 |
+
**Tests added** (`tests/agents/slow_path/`, 12 passing; gitignored): schema round-trips
|
| 35 |
+
+ chat_answer-first; runner happy/placeholder/parallel/degrade/arg-miss; assembler
|
| 36 |
+
narrative-vs-snapshot + question threading; coordinator end-to-end. `ruff` clean;
|
| 37 |
+
tool-agnostic (no `src/tools/*` import).
|
| 38 |
+
|
| 39 |
+
**Open follow-ups (not blockers):** wire `SlowPathCoordinator` into the expanded
|
| 40 |
+
Orchestrator/`ChatHandler` once the real invoker + `BusinessContext` exist; swap the
|
| 41 |
+
test `MockToolInvoker` for the tool team's real one (zero agent change, INV-7); 4o β
|
| 42 |
+
GPT-mini deployment swap.
|
| 43 |
+
|
| 44 |
+
---
|
| 45 |
+
|
| 46 |
## What just shipped (2026-06-08 β tool taxonomy + ownership revision)
|
| 47 |
|
| 48 |
Team decisions after the teammate pushed KM-624 (`src/tools/analytics/`):
|