Sync the confirmed AOSH role-intent harness board into AOS #650

Closed
opened 2026-07-23 13:07:05 +00:00 by coilyco-ops · 1 comment
Member

Context

AOSH commit 51d8305 (coilyco-bridge/agentic-os-hardware#66) records Kai’s confirmed 10-role, 16-lane harness board. AOS already has the one-way sync-local-models precedent: an authoring-time command reads AOSH, writes an AOS-owned artifact, checks drift in pre-commit when the private sibling exists, and skips visibly in public checkouts. Extend that established boundary for harness selections instead of adding a second cross-repo mechanism.

Ownership boundary

  • AOSH remains the hand-owned selection and backend-routing source.
  • AOS owns the public-safe shipped or reference projection that its launcher and Ward profile surfaces consume.
  • A shipped runtime never fetches upward from AOSH. Synchronization happens at authoring time and commits the AOS result.
  • Role remains control-plane provenance. A harness receives the selected intent, never the role.
  • Backend model, server, score, fallback, and hardware details stay in AOSH and never enter the harness-board projection.

Acceptance

  • Extend the existing AOSH-to-AOS sync family to read the model-opaque role-intent-harness selections and render an AOS-owned deterministic artifact.
  • Preserve the confirmed contract: ten roles, one or two intents per role, exactly one selected harness per lane, and engineer exclusively unattended.
  • Preserve Kai’s confirmed board, including Plandex as the intentional software-delivery director and Rasa for both customer-success lanes.
  • Wire the AOS launcher or Ward profile consumer to the projected defaults at the control-plane boundary without passing role identity into a harness.
  • Provide a read-only drift check with the existing --check and --if-present behavior. Missing public AOSH siblings skip visibly, while malformed or incomplete present sources fail closed.
  • Add fixture-backed tests for rendering, drift, missing siblings, malformed selections, role opacity, and absence of backend model data.
  • Update docs/harness-selection.md, the owning sync documentation, .ward/ward.yaml, pre-commit coverage, and docs/FEATURES.md if the shipped boundary changes.
  • Remove the stale five-harness-only framing where the new board supersedes it. No selection rationale field returns.

Source

  • AOSH board: agent-selections.yaml at commit 51d8305
  • Generated compatibility view: 92-role-agents.yaml
  • Existing AOS precedent: agentic_os/local_model_sync.py and docs/ward-local-models.md

Context campaign

  • Parent: AOS #655
  • AOS #656 consumes this committed projection and measures every selected role-intent-harness lane.
  • This ticket owns synchronization only. It does not measure startup context, deliver AOSH skills, or inspect backend model and hardware state.
## Context AOSH commit `51d8305` (`coilyco-bridge/agentic-os-hardware#66`) records Kai’s confirmed 10-role, 16-lane harness board. AOS already has the one-way `sync-local-models` precedent: an authoring-time command reads AOSH, writes an AOS-owned artifact, checks drift in pre-commit when the private sibling exists, and skips visibly in public checkouts. Extend that established boundary for harness selections instead of adding a second cross-repo mechanism. ## Ownership boundary * AOSH remains the hand-owned selection and backend-routing source. * AOS owns the public-safe shipped or reference projection that its launcher and Ward profile surfaces consume. * A shipped runtime never fetches upward from AOSH. Synchronization happens at authoring time and commits the AOS result. * Role remains control-plane provenance. A harness receives the selected intent, never the role. * Backend model, server, score, fallback, and hardware details stay in AOSH and never enter the harness-board projection. ## Acceptance * Extend the existing AOSH-to-AOS sync family to read the model-opaque role-intent-harness selections and render an AOS-owned deterministic artifact. * Preserve the confirmed contract: ten roles, one or two intents per role, exactly one selected harness per lane, and engineer exclusively unattended. * Preserve Kai’s confirmed board, including Plandex as the intentional software-delivery director and Rasa for both customer-success lanes. * Wire the AOS launcher or Ward profile consumer to the projected defaults at the control-plane boundary without passing role identity into a harness. * Provide a read-only drift check with the existing `--check` and `--if-present` behavior. Missing public AOSH siblings skip visibly, while malformed or incomplete present sources fail closed. * Add fixture-backed tests for rendering, drift, missing siblings, malformed selections, role opacity, and absence of backend model data. * Update `docs/harness-selection.md`, the owning sync documentation, `.ward/ward.yaml`, pre-commit coverage, and `docs/FEATURES.md` if the shipped boundary changes. * Remove the stale five-harness-only framing where the new board supersedes it. No selection rationale field returns. ## Source * AOSH board: `agent-selections.yaml` at commit `51d8305` * Generated compatibility view: `92-role-agents.yaml` * Existing AOS precedent: `agentic_os/local_model_sync.py` and `docs/ward-local-models.md` ## Context campaign * Parent: AOS #655 * AOS #656 consumes this committed projection and measures every selected role-intent-harness lane. * This ticket owns synchronization only. It does not measure startup context, deliver AOSH skills, or inspect backend model and hardware state.
Author
Member

The first landing placed agent-compose-only intent nodes in .ward/roles.kdl. Ward correctly failed closed because its fleet role schema owns execution policy only. The exact failure was: role engineer body: unknown node intent (want guardfile | guardfiles | agent).

The corrected boundary is ready in local commit 09347d0: .agents/roles.kdl owns composed-skill and intent-to-harness bindings, .ward/roles.kdl owns guardfiles and agent execution settings, and sync-harness-board writes only the .agents projection. Local validation passes 524 tests, the complete pre-commit suite, the 10-role/16-lane drift check, and ward agent director --harness codex --print.

Landing is blocked on coilyco-flight-deck/agent-compose#55. Agent-compose commit 244d1b9 adds the provider schema and passes its full local suite, but release run 21 failed before publishing v0.21.0. AOS must not push the v0.21.0 dev-base pin until that release exists.

The first landing placed agent-compose-only intent nodes in .ward/roles.kdl. Ward correctly failed closed because its fleet role schema owns execution policy only. The exact failure was: role engineer body: unknown node intent (want guardfile | guardfiles | agent). The corrected boundary is ready in local commit 09347d0: .agents/roles.kdl owns composed-skill and intent-to-harness bindings, .ward/roles.kdl owns guardfiles and agent execution settings, and sync-harness-board writes only the .agents projection. Local validation passes 524 tests, the complete pre-commit suite, the 10-role/16-lane drift check, and ward agent director --harness codex --print. Landing is blocked on coilyco-flight-deck/agent-compose#55. Agent-compose commit 244d1b9 adds the provider schema and passes its full local suite, but release run 21 failed before publishing v0.21.0. AOS must not push the v0.21.0 dev-base pin until that release exists.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/agentic-os#650
No description provided.