diff --git a/docs/remediation/BOARD.md b/docs/remediation/BOARD.md index e8e2bcad..2b2d59db 100644 --- a/docs/remediation/BOARD.md +++ b/docs/remediation/BOARD.md @@ -1,33 +1,41 @@ # mos-remediation — LIVE BOARD (keep < 8 KB) -**Phase:** PLANNING — adversarial task decomposition. -**Updated:** 2026-07-31 (setup by Mos/mos-claude; handoff to mos-remediation orchestrator). +**Phase:** PLANNING — adversarial task decomposition IN FLIGHT. +**Updated:** 2026-07-31 (mos-remediation orchestrator; seat active on `mosaic-fleet`). ## Head - Mission charter + 15 decisions + 4-build plan: PERSISTED (`docs/remediation/MISSION.md`). - HOLD lifted for this workstream (Jason 2026-07-31). Nothing implemented yet — planning first. -- Next action: adversarial decomposition of the 4-build plan into ordered, gated tasks. +- Orchestrator seat `mos-remediation` is LIVE and owns the mission. Residency attestation: PASS. +- TASK-0 (env + push mission package) IN PROGRESS — checkout deps repaired, gates being verified honestly. +- TASK-1 (adversarial decomp) DISPATCHED for real, both planners on GUARANTEED-CLEAN context. ## In-flight -| Task | Owner | State | -| ----------------------------------- | --------------------------------------------------- | ---------- | -| Adversarial task decomp of the plan | planner-opus (robustness) + planner-sol (pragmatic) | DISPATCHED | -| Orchestrator resume/own the mission | mos-remediation | STARTING | +| Task | Owner | State | +| ---------------------------------------------------- | --------------- | --------------------------------------------- | +| TASK-0 env repair + push `remediation/mission-setup` | mos-remediation | IN PROGRESS — deps installed; gates verifying | +| Decomp (robustness side) → `DECOMP-OPUS.md` | planner-opus | WORKING (clean session) | +| Decomp (pragmatic side) → `DECOMP-SOL.md` | planner-sol | WORKING (reset to 0.0% ctx before dispatch) | +| Reconcile both decomps → `docs/remediation/TASKS.md` | mos-remediation | BLOCKED on the two decomps | ## Fleet seats -- mos-remediation — project orchestrator (Claude, /src/mosaic-stack) — STARTING -- planner-opus — adversarial planner (robustness) — to dispatch -- planner-sol — adversarial planner (pragmatic) — to dispatch +- mos-remediation — project orchestrator (Claude, /src/mosaic-stack, socket `mosaic-fleet`) — ACTIVE +- planner-opus — adversarial planner (robustness), Opus 5, socket `default` — WORKING +- planner-sol — adversarial planner (pragmatic), gpt-5.6-sol, socket `default` — WORKING - rev-974 — mosaicstack reviewer identity (id 16, write:repository) — idle, on call -- Mos (mos-claude) — lead coordinator +- Mos (mos-claude) — lead coordinator, socket `default` — relay path to Jason ## Gate status - Delivery gates active: author≠reviewer, diff-blind pre-registered checks, CI-green, merged-PR completion. - Freeze: LIFTED for this workstream only. +- Git identity: `MOSAIC_GIT_IDENTITY=mos-dt-0` INTERIM. Mos ruled gate-16 HOLDS (author≠reviewer is what + gate-16 protects; rev-974 reviews, mos-dt-0 never self-reviews). Dedicated identity TRACKED, Mos provisions. +- Remote control: native `/remote-control` NOT wired in this runtime. Path is **Mos-relay** + (Jason ↔ mos-claude via Discord ↔ mos-remediation via agent-send). Not a blocker. ## Sequencing (from MISSION.md) @@ -37,6 +45,32 @@ 4. Hygiene + conformance harness Cross-cutting retirements: flat-file tracking, 3 MACP islands, silent MOSAIC BYPASS. -## Log +## Dogfood evidence captured this session (live failure classes, not hypotheticals) -- 2026-07-31 — Mission set up by Mos post-postmortem (15/15 decided). Orchestrator + adversarial planners being launched. Dogfood posture active. +- **D-1 / P-ACTIVATION + hygiene — committed `.npmrc` hard-pins `store-dir=/root/.local/share/pnpm/store`.** + Correct for the CI container (runs as root), fatal for EVERY non-root local checkout: `EACCES` on + `/root/.local/share/pnpm/store/v10/server/server.json`. A committed config that only works on one + runtime is exactly the activation-skew class. Fix candidate: make store-dir env-overridable, not hardcoded. +- **D-2 / hygiene — husky `prepare` fails `EPERM` copying into root-owned `.husky/_/`.** Repo working + tree has root-owned dirs (`.husky/`, repo root) under a non-root agent. Worked around with the + intended `HUSKY=0` escape hatch (does NOT disable the existing pre-commit/pre-push hooks). +- **D-3 / P-FLEET-001 — the seats running this mission are UNMANAGED.** `mos-remediation`, `rev-974`, + `planner-opus`, `planner-sol` appear in NO roster (`~/.config/mosaic/fleet/roster.yaml`, `agents/`). + Planners run on socket `default`; the roster declares `mosaic-fleet`. This is the exact + "one roster-owned socket/host + quarantine unmanaged + stale GC" failure P-FLEET-001 indicts — + observed on the remediation mission's own fleet. Prerequisite for INBOX identity-addressing. +- **D-4 / P-LIFECYCLE + hygiene — a dispatched agent silently IGNORED an in-message context reset.** + planner-sol was at 64.3%/372k; the brief asked it to reset first; it began work on dirty context anyway. + Only an out-of-band `/new` driven by the orchestrator guaranteed clean state. Confirms the postmortem + thesis: **instructions are not enforcement.** Reset must be a mechanical pre-dispatch step, not a request. + +## Decisions log + +- 2026-07-31 — Mission set up by Mos post-postmortem (15/15 decided). Dogfood posture active. +- 2026-07-31 — Mos: stale `.mosaic/orchestrator/mission.json` is RESIDUE of the disabled Python + orchestrator rail that this plan RETIRES. Do NOT invest in it; do NOT build on that rail. The 0/0 + milestone banner is cosmetic. (Supersedes any plan to repair it.) +- 2026-07-31 — Mos: planners must be dispatched with GUARANTEED clean context, not requested-clean. + Prior default-socket planner sessions predate this mission; dirty context is the indicted hygiene. +- 2026-07-31 — mos-remediation: worker briefs forbid all git ops and restrict each worker to a single + named output file, so two planners can share one checkout without a branch race (M2-era incident doctrine).