docs(plan): resolve harness IDs + lifecycle review gate (#50)

Owner adjudication:
- canonical harness IDs match executables: pi, claude, codex, opencode
- agent.json uses one scalar harness ID; registry/manifest resolution, no
  hard-coded schema enum
- target mosaic harness list/detect/install/rm/status lifecycle
- detection recognizes reviewed executables and records compatibility
  without reading/copying harness homes
- installs are exact-version/verified, Mosaic-managed, never global
- detected external harness is available but not container-ready until
  imported/installed, absent a separately reviewed host adapter

Gate 1 resolved. Remaining P0/review gates stay open; no implementation
authorized. Suites 24/15/90/14/17 + verify green; unslop clean.
This commit is contained in:
2026-09-04 12:26:57 -05:00
parent 9ea7dea711
commit 69d1bb3aa4
3 changed files with 96 additions and 12 deletions
+16
View File
@@ -635,3 +635,19 @@ review. Implementation remains blocked until all ten gates are resolved.
Implementation remains blocked pending owner/conductor adjudication and a
revised spec.
## Phase 25 review revision: harness lifecycle (gate 1 resolved)
- Owner confirmed canonical harness IDs match executable names: `pi`,
`claude`, `codex`, `opencode`. agent.json stores one scalar ID; dynamic
manifest/registry resolution replaces a hard-coded schema enum.
- Spec adds `mosaic harness list|detect|install|rm|status`.
- Detection recognizes reviewed canonical executables, records compatible
findings as available, and never imports harness homes/config/auth.
- Installation is exact-version/verified, Mosaic-managed, never global;
immutable runtime packages survive dataRoot reset.
- Container seam remains explicit for review: a detected host executable is
available but not launch-ready until imported/installed into a managed
runtime, unless host execution gets a separate reviewed adapter.
- Gate 1 marked RESOLVED in the spec and #50; all other P0/review gates remain
open. No implementation authorized.