Accept M1 follow-ups; add implementer lessons and promote four rules to AGENTS.md

Tasks 08 and 09 pass the checklist and the reviewer's probes, so M1 is
complete. docs/implementer-lessons.md turns the review findings into
tips for the implementer and for task writing, each tied to its
evidence, with a column to record whether the defect comes back.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
2026-09-17 10:19:06 -07:00
co-authored by Claude Fable 5.1
parent 46d26e868b
commit 57bfc62236
4 changed files with 109 additions and 5 deletions
+10 -5
View File
@@ -4,9 +4,9 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
## Current state
Boxmaker is a sovereign personal agent harness written in Rust. There is no Rust code yet. Work
proceeds one milestone per session (M0 to M7, table in `docs/milestones.md`). M0 is done; check
for `AGENTS.md` and `Cargo.toml` to see whether M1 has started.
Boxmaker is a sovereign personal agent harness written in Rust. Work proceeds one milestone at a
time (M0 to M7, table in `docs/milestones.md`). M0 (measurements) and M1 (workspace, `proto`, gate,
`Decision`) are done. Check `docs/plans/` and `docs/implementer-log.md` for what is in flight.
- `docs/design.md` is the binding design brief. If it looks wrong or conflicts with a measurement,
stop and say so. Changes to it land as their own commit and are recorded in `docs/decisions.md`,
@@ -17,6 +17,9 @@ for `AGENTS.md` and `Cargo.toml` to see whether M1 has started.
and `files/` under it holds the tests and fixtures the tasks copy in. `AGENTS.md` holds the
implementer's standing rules; its code rules apply to any code written here too.
- `docs/implementer-log.md` is Laguna's own record, one row per task. Reviews go at the bottom.
- `docs/implementer-lessons.md` turns review findings into tips, for Laguna and for writing its
tasks. Every milestone review updates it, and short general rules are promoted into `AGENTS.md`.
Do not edit the repo while Laguna has a task in flight: its tasks require a clean working tree.
- `spike/` is throwaway measurement code, not harness code.
Roles: implementation is done by Laguna S 2.1 (served by straylight) through OpenCode on this
@@ -27,14 +30,16 @@ closed tasks: exact paths, given type signatures, verified crate APIs, tests spe
The inference server is shared with other sessions. Before using Ornith slot 1 or sending unpinned
requests, check `GET /slots?model=ornith-1.5-35b-a3b` so you do not evict someone's cache.
## Commands (planned in M1, not yet present)
## Commands
- `make gate` runs offline: `cargo fmt --check`, clippy with warnings denied, `cargo test`,
`cargo-deny`, and a check that fails on any source file over 500 lines. Run it before calling
any work done, and report the exit status and last lines.
- `make verify-device` runs the checks that need straylight, such as the baseline token budget.
- Single test: `cargo test -p <crate> <test_name>`.
- `bxctl` is the owner CLI (`bxctl chat` from M2, `bxctl reindex` from M5).
- `make audit` runs `cargo deny check advisories`; it needs the network.
- `bxctl` is the owner CLI (`bxctl chat` from M2, `bxctl reindex` from M5). Until then every binary
prints "not implemented" and exits 2.
## Architecture in brief