Files
stack/packages/mosaic/framework/fleet/profiles/software-delivery.yaml
jason.woltje a738ac1410
All checks were successful
ci/woodpecker/push/publish Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
feat(fleet): system-type profiles (H2) (#660)
2026-06-24 16:02:25 +00:00

72 lines
3.0 KiB
YAML

# Mosaic system-type profile — SCHEMA REFERENCE
# ---------------------------------------------------------------------------
# A profile is a DECLARATIVE mapping from a "system type" to a persona roster
# plus its org topology. Profiles are DATA: drop a new <id>.yaml here and the
# loader/CLI pick it up with no code change (North Star NS-9 / AC-NS-6).
#
# Every persona referenced below (lead, floor[], roster[].class, roster[].reports_to)
# MUST resolve to a real persona in the library. The loader validates this against
# the role contracts in ../roles/*.md (see LIBRARY.md for the grouped index).
#
# Schema (this file documents every key; other profiles omit the comments):
#
# id: kebab-case system-type id — MUST equal the filename stem.
# title: human-readable name.
# description: one paragraph — what this system does.
# lead: persona class that coordinates the roster (the orchestrating seat).
# floor: persistent minimum roster that must stay staffed (list of classes).
# roster: the full default roster. Each entry:
# - class: persona class (MUST resolve to a role file).
# reports_to: optional — the class this seat reports to
# (encodes org topology). Omit for the lead.
# MUST resolve to a class present in this roster.
# multiplicity: optional int (default 1) — e.g. 2 coders.
# notes: optional free text.
# ---------------------------------------------------------------------------
id: software-delivery
title: Software Delivery
description: >-
The engineering fleet that turns ratified objectives into shipped, reviewed,
merged code. The lead (planner — the orchestrator seat) plans phased FRs into a
depends_on DAG, decomposition splits them into one-PR-each cards, coders execute
to green CI, and review / security-review / site-tester / merge-gate guard the
merge. This mirrors today's coding fleet.
# NOTE: the canonical lead seat is the "orchestrator". In the persona library the
# orchestrator IS the `planner` class (see roles/planner.md: "the planner role IS
# the existing orchestrator class") — so the lead/floor reference `planner`, the
# only class that actually resolves to a role contract.
lead: planner
floor:
- planner
- enhancer
roster:
- class: board
reports_to: planner
- class: planner
- class: decomposition
reports_to: planner
- class: code
reports_to: decomposition
multiplicity: 2
- class: review
reports_to: planner
- class: security-review
reports_to: review
- class: site-tester
reports_to: review
- class: documentation
reports_to: planner
- class: merge-gate
reports_to: planner
- class: rebase
reports_to: merge-gate
- class: operator
reports_to: planner
- class: session-review
reports_to: planner
- class: enhancer
reports_to: planner
notes: >-
Two-agent floor (orchestrator/planner + enhancer) is always staffed; every other
seat is added on demand.