diff --git a/AGENTS.md b/AGENTS.md index b1e90fad..15446b34 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -109,12 +109,14 @@ substitute for a real blocker. - **Register** your session in `docs/SESSIONS.md` — one append-only line (date, actor, scope, outcome). Never rewrite or remove entries. -- **Cadence**: read `docs/plans/QUEUE.md` first; your next piece is the first - row you own that is briefed, in progress or in review, unless Jason has named - an explicit current priority in that queue. Open only - the brief that row links to. Execute it through every authorized stage (implement → test → verify against acceptance - criteria; commit, push, or close only when the established plan authorizes - each) → move your QUEUE.md row → register in SESSIONS.md. +- **Cadence**: run `scripts/mosaic queue next ` first. It names + the row to resume, review or start, or says there is nothing. The goal order + in `docs/plans/2026-09-27_goals-review.md` sets priority, not CURRENT.md. + Open only the brief that row links to. Execute it through every authorized + stage (implement → test → verify against acceptance criteria; commit, push, + or close only when the established plan authorizes each) → move the row with + `scripts/mosaic queue move` (never by editing QUEUE.md) → register in + SESSIONS.md. - "next" means one action. A batch mandate ("run the queue") repeats the loop until green or truly blocked under the boundary rules above. - Substantial work gets a Gitea issue and a BUILD-LOG phase entry @@ -188,7 +190,8 @@ Full reference — usage, fields, exit codes, safety notes: ## Pointers (depth lives here) - `docs/plans/2026-09-27_goals-review.md` — north star and goal order (Jason ratified 2026-09-27) -- `docs/plans/QUEUE.md` — THE task list (one row per piece; read first) +- `docs/plans/QUEUE.md` — THE task list, rendered from `docs/plans/queue.json` + (`scripts/mosaic queue next ` reads it; `packages/queue/README.md` has the verbs) - `docs/plans/CURRENT.md` — narrative log behind the queue rows - `docs/plans/ROADMAP.md` — agreed milestone path (M16+) - `docs/plans/CONDUCTOR.md` — orchestration protocol and guardrails @@ -203,9 +206,9 @@ Full reference — usage, fields, exit codes, safety notes: ## Recovery rule Compacted, restarted, or new? Nothing that matters is lost: this file + -`docs/plans/CURRENT.md` + `git log --oneline -10` + the suites reconstruct -the full state. **Never guess** — verify with the suites; the run records -and logs hold the receipts. +`scripts/mosaic queue next ` + `docs/plans/CURRENT.md` + +`git log --oneline -10` + the suites reconstruct the full state. **Never +guess** — verify with the suites; the run records and logs hold the receipts. ## Version pin diff --git a/agents/darkwing/CONTEXT.md b/agents/darkwing/CONTEXT.md index 4087fbdc..0a6dfeef 100644 --- a/agents/darkwing/CONTEXT.md +++ b/agents/darkwing/CONTEXT.md @@ -15,7 +15,7 @@ to change unrelated files, other agents' work, or the live fleet. For an assigned improvement, inspect the implementation, reproduce the issue, make the smallest useful change, verify it, and continue through the authorized -outcome. Read docs/plans/CURRENT.md to reconcile ownership and existing gates; +outcome. Run scripts/mosaic queue next darkwing for ownership, gates and your next piece; a new user assignment does not silently resume unrelated queued work. The local /goal extension is loaded and owns any operator-set goal lifecycle. diff --git a/agents/dewey/CONTEXT.md b/agents/dewey/CONTEXT.md index c7dce3e2..f3180083 100644 --- a/agents/dewey/CONTEXT.md +++ b/agents/dewey/CONTEXT.md @@ -15,7 +15,7 @@ to change unrelated files, other agents' work, or the live fleet. For an assigned improvement, inspect the implementation, reproduce the issue, make the smallest useful change, verify it, and continue through the authorized -outcome. Read docs/plans/CURRENT.md to reconcile ownership and existing gates; +outcome. Run scripts/mosaic queue next dewey for ownership, gates and your next piece; a new user assignment does not silently resume unrelated queued work. The local /goal extension is loaded and owns any operator-set goal lifecycle. diff --git a/agents/filbert/CONTEXT.md b/agents/filbert/CONTEXT.md index ef909ac9..0de79880 100644 --- a/agents/filbert/CONTEXT.md +++ b/agents/filbert/CONTEXT.md @@ -15,7 +15,7 @@ to change unrelated files, other agents' work, or the live fleet. For an assigned improvement, inspect the implementation, reproduce the issue, make the smallest useful change, verify it, and continue through the authorized -outcome. Read docs/plans/CURRENT.md to reconcile ownership and existing gates; +outcome. Run scripts/mosaic queue next filbert for ownership, gates and your next piece; a new user assignment does not silently resume unrelated queued work. The local /goal extension is loaded and owns any operator-set goal lifecycle. diff --git a/agents/researcher/CONTEXT.md b/agents/researcher/CONTEXT.md index 8cdede81..de70d9a7 100644 --- a/agents/researcher/CONTEXT.md +++ b/agents/researcher/CONTEXT.md @@ -8,7 +8,7 @@ bootstrap configuration. It is not a managed fleet seat or sandbox. Host tools are available for authorized research, evidence and fixture work; their presence never grants access to unrelated work, secrets or live services. -Read `docs/plans/QUEUE.md` and the applicable owner-approved task before acting. +Run `scripts/mosaic queue next researcher` and read the task it names before acting. The current internal development team is Sage, Darkwing, Dewey, Filbert, Rocko and Researcher under `agents/`. Route development coordination to Sage. Use repository communication tooling with an explicitly verified destination/socket; diff --git a/agents/rocko/CONTEXT.md b/agents/rocko/CONTEXT.md index 504c7171..98ab7ff1 100644 --- a/agents/rocko/CONTEXT.md +++ b/agents/rocko/CONTEXT.md @@ -12,7 +12,7 @@ claim that Pi's /goal lifecycle is available here. Claude Code retains its normal authentication, settings, discovered context, and permission behavior. Use project skills from skills/ when relevant and follow their actual inputs. -Read docs/plans/CURRENT.md to reconcile current ownership and existing gates. +Run scripts/mosaic queue next rocko for ownership, gates and your next piece. A new user assignment does not silently resume unrelated queued work. The canonical checkout is /mnt/storage/src/mosaic-stack; v1/ is archived legacy source. Preserve other agents' work and coordinate scope with Sage. diff --git a/agents/sage/CONTEXT.md b/agents/sage/CONTEXT.md index 86414e34..2400528f 100644 --- a/agents/sage/CONTEXT.md +++ b/agents/sage/CONTEXT.md @@ -15,7 +15,7 @@ to change unrelated files, other agents' work, or the live fleet. For an assigned improvement, inspect the implementation, reproduce the issue, make the smallest useful change, verify it, and continue through the authorized -outcome. Read docs/plans/CURRENT.md to reconcile ownership and existing gates; +outcome. Run scripts/mosaic queue next sage for ownership, gates and your next piece; a new user assignment does not silently resume unrelated queued work. The local /goal extension is loaded and owns any operator-set goal lifecycle. diff --git a/packages/queue/README.md b/packages/queue/README.md index d7323e03..9ec40f61 100644 --- a/packages/queue/README.md +++ b/packages/queue/README.md @@ -150,6 +150,11 @@ is swept in: commit and those entries are still H's. Otherwise exit 3 and print the command. Until it runs, the guard refuses ordinary commits. +`queue-commit.sh` calls `node packages/queue/src/cli.mjs` directly, not +`scripts/mosaic queue`. That stays after A2 on purpose: step 4 runs HEAD's +archived copy, which then depends only on the package, not on the +dispatcher. + `scripts/git-hooks/pre-commit` is the guard. `scripts/queue-commit.sh --install-hook` installs it (jason or sage). It refuses any `git commit` whose index entries for the two queue files differ from HEAD's.