Record that the M3a plan is ready, and how it was checked
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -8,7 +8,9 @@ Boxmaker is a sovereign personal agent harness written in Rust. Work proceeds on
|
||||
time (M0 to M7, table in `docs/milestones.md`). M0 (measurements), M1 (workspace, `proto`, gate,
|
||||
`Decision`), M2a (the inference path: `inferproxy`, `loopd`'s HTTP, SSE and llama client, the
|
||||
startup self-test) and M2b (sessions, the turn loop, `loopd serve`, `bxctl chat`) are done. M3 is split:
|
||||
M3a (`brokerd`'s decision path) is specified in `docs/specs/2026-09-18-m3a-decision-path.md`;
|
||||
M3a (`brokerd`'s decision path) is specified in `docs/specs/2026-09-18-m3a-decision-path.md`,
|
||||
and its plan (22 tasks, `docs/plans/M3a/README.md`) is ready for Laguna on branch `m3a`; the
|
||||
reference it was checked against is on the unpushed branch `m3a-ref` (`~/src/boxmaker-ref`).
|
||||
M3b (the container runner and tools) follows it. `docs/runbook.md` has an entry for every
|
||||
fail-closed state; any new one needs an entry and a pointer in its message. Check `docs/implementer-log.md` for
|
||||
what is in flight.
|
||||
|
||||
@@ -978,4 +978,7 @@ What changes from M2 is how the given tests are checked before they are handed o
|
||||
|
||||
The reference and the skeletons live in a git worktree at `~/src/boxmaker-ref` on an unpushed
|
||||
branch, not in `/tmp`. The plan's README records, for each task, which check it had and what that
|
||||
check exposed.
|
||||
check exposed. In the event the table above did not hold: the approval handoff could not run
|
||||
without working `config`, `args`, `grants`, `policy` and `state`, so those got a minimal
|
||||
reference too, and the broker (tasks 10 to 15) a full one; skeletons were confined to `loopd` and
|
||||
`bxctl`, whose bodies were later written as a measurement and found nothing more.
|
||||
|
||||
Reference in New Issue
Block a user