Context
First gate leaf (T0.1) of Epic #14560 (FM cockpit UI/UX — Lane B of the cockpit plan), filed under the operator-escalated decomposition sprint (D#14561, 2026-07-04). Every view leaf in the epic mounts into SOME app namespace — this leaf decides which one, so the other ~28 leaves have a stable target. Operator verdict on record (2026-07-04): the current apps/agentos is "uber brittle"; Grace's committed design SSOT (apps/agentos/design/fleet-manager-cockpit-plan.html, #14512) sets the bar the surface must meet.
The Problem
Two viable shapes, materially different consequences:
- Evolve
apps/agentos: keeps the existing consumer wiring (e.g. view/DockPreview.mjs is the only live dock consumer per #13247's archaeology) but inherits feature-first accretion with no design system — the brittleness is structural, not cosmetic.
- Fresh app shell (e.g.
apps/fleetmanager): clean token-layer-first build to the SSOT bar, but must name an explicit retirement/migration path for apps/agentos (including its dock-preview consumer role) or we ship TWO brittle surfaces — the epic's own named trap ("no second brittle app").
The Architectural Reality
- The cockpit plan targets Electron · one SharedWorker heap · Agent OS in-process; Lane A (#13033, Electron shell) is a separate lane — this decision must keep view leaves shell-agnostic (dev-server mountable now, shell-hosted when A1 lands).
apps/ sibling precedent: apps are self-contained (index.html + app.mjs + view/); the engine's multi-window/shared-heap primitives are app-layer consumable.
- #13448 (post-split, per the #14560 reconciliation) keeps harness shell/nav definition — this decision is about the FLEET COCKPIT surface only.
The Fix
A short decision record (in-repo doc or ticket-resolution comment, per the epic's "deltas from the artifact are recorded design decisions" rule) that:
- Names the target namespace for all #14560 view leaves.
- If fresh: names the
apps/agentos retirement path (what migrates, what dies, who consumes DockPreview afterward).
- If evolve: names the demolition order (which existing views get replaced by which tranche).
- Confirms the shell-agnostic mount contract (dev-server + Electron).
Design-review gated: @neo-opus-grace holds design authority on the SSOT; her sign-off is part of the AC.
Acceptance Criteria
Out of Scope
- Any view implementation (T1–T7 leaves).
- The Electron shell itself (#13033, Lane A) and NL/MCP wiring (#14572/#14573, Lane C).
Related
Epic #14560 (parent) · SSOT artifact via #14512 · #13033 · #13448 (post-split) · #13247 (DockPreview consumer archaeology) · D#14561 (sprint).
Live latest-open sweep: checked latest 15 open issues at 2026-07-04T01:39Z (latest #14576); no equivalent found. A2A in-flight claim sweep: herd-window scan clean (L2/L2C/#14565-subs claimed by peers; no L1 leaf claims). Structure-map gate: N/A — app-layer decision leaf, no new ai/ placement.
Origin Session ID: a28f1415-37a4-4a5a-a3e4-b56adf6274ec
Retrieval Hint: "FM cockpit target-app decision evolve agentos vs fresh"
Context
First gate leaf (T0.1) of Epic #14560 (FM cockpit UI/UX — Lane B of the cockpit plan), filed under the operator-escalated decomposition sprint (D#14561, 2026-07-04). Every view leaf in the epic mounts into SOME app namespace — this leaf decides which one, so the other ~28 leaves have a stable target. Operator verdict on record (2026-07-04): the current
apps/agentosis "uber brittle"; Grace's committed design SSOT (apps/agentos/design/fleet-manager-cockpit-plan.html, #14512) sets the bar the surface must meet.The Problem
Two viable shapes, materially different consequences:
apps/agentos: keeps the existing consumer wiring (e.g.view/DockPreview.mjsis the only live dock consumer per#13247's archaeology) but inherits feature-first accretion with no design system — the brittleness is structural, not cosmetic.apps/fleetmanager): clean token-layer-first build to the SSOT bar, but must name an explicit retirement/migration path forapps/agentos(including its dock-preview consumer role) or we ship TWO brittle surfaces — the epic's own named trap ("no second brittle app").The Architectural Reality
apps/sibling precedent: apps are self-contained (index.html+app.mjs+view/); the engine's multi-window/shared-heap primitives are app-layer consumable.The Fix
A short decision record (in-repo doc or ticket-resolution comment, per the epic's "deltas from the artifact are recorded design decisions" rule) that:
apps/agentosretirement path (what migrates, what dies, who consumesDockPreviewafterward).Design-review gated: @neo-opus-grace holds design authority on the SSOT; her sign-off is part of the AC.
Acceptance Criteria
Out of Scope
Related
Epic #14560 (parent) · SSOT artifact via #14512 · #13033 · #13448 (post-split) · #13247 (DockPreview consumer archaeology) · D#14561 (sprint).
Live latest-open sweep: checked latest 15 open issues at 2026-07-04T01:39Z (latest #14576); no equivalent found. A2A in-flight claim sweep: herd-window scan clean (L2/L2C/#14565-subs claimed by peers; no L1 leaf claims). Structure-map gate: N/A — app-layer decision leaf, no new
ai/placement.Origin Session ID: a28f1415-37a4-4a5a-a3e4-b56adf6274ec Retrieval Hint: "FM cockpit target-app decision evolve agentos vs fresh"