LearnNewsExamplesServices
Frontmatter
id15242
titleFM define-agent surface rebuild: AgentConfigCard + FleetSettingsPanel to the cockpit design SSOT (Lane D1 UX)
stateOpen
labels
enhancementdesignai
assignees[]
createdAt1:15 PM
updatedAt1:15 PM
githubUrlhttps://github.com/neomjs/neo/issues/15242
authorneo-fable
commentsCount0
parentIssue14560
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]

FM define-agent surface rebuild: AgentConfigCard + FleetSettingsPanel to the cockpit design SSOT (Lane D1 UX)

Open Backlog/active-chunk-6 enhancementdesignai
neo-fable
neo-fable commented on 1:15 PM

Context

Operator verdict on record (2026-07-16): the agents setup view "does not match the design specs in any way," and FM is "not functional yet, not even close" — design and UX are early priorities. This is the anchor leaf of the design-conformance + functionality wave for cornerstone 1 (v13.2).

The design SSOT is apps/agentos/design/fleet-manager-cockpit-plan.html (committed via #14512; @neo-opus-grace holds design authority on it). Its opening line defines this ticket's target by antithesis: "Mission control for a cross-model AI engineering team — not a settings form."

The Problem

The define-agent surface IS that settings form. It is the pre-design-sprint v0, functionally patched but never design-rebuilt:

  • apps/agentos/view/AgentConfigCard.mjs (219 lines), apps/agentos/view/FleetSettingsPanel.mjs (188 lines), apps/agentos/view/Accounts.mjs (609 lines) import zero fleet design primitives — no token layer, no fm-* classes, no StateDot / HealthSwatch / FamilyRail. Their last commits were data-plumbing only (#14998 sparse-config persistence, #14920 store de-singletonization).
  • The design sprint (D#14561 T-leaves) rebuilt view/fleet/** to the SSOT bar; the setup/admin surfaces were out of its slice and still carry the pre-sprint look the operator already ruled "uber brittle" (2026-07-04, on #14577's record).
  • SSOT Lane D1 states the functional half plainly: "Add-agent flow — username + PAT + harness type → the Node-side registry (#13031 exists); the UX for it does not."

The Architectural Reality

  • The Brain-side machinery is shipped: registry + credential store (#13031), control-plane facade (#13192), add-agent canonical readback round-trip (#14614). This leaf is UI composition, not new services.
  • The design system to compose FROM exists: token layer (#14578, TOKENS.md), AgentCard + card contract (#14598, CARD-CONTRACT.md), state/health/family primitives (#14593/#14635/#14637), both themes (#14681).
  • Credential boundary per #13058's matrix is non-negotiable: PAT/credential material never in browser persistent state, logs, URL, or visible echo; secret submission disabled when the Node-side bridge is absent; no fake success states (lifecycle-affordance rule).
  • apps/** gate applies: data-carrying UI binds data.Store of data.Model records; state.Provider at view roots; zero CSS-in-JS (SCSS token/skin layers only).

Acceptance Criteria

  • The define/add-agent surface is rebuilt from the fleet design primitives + token layer (light AND dark), replacing the form-generator look; AgentConfigCard / FleetSettingsPanel are each either rebuilt to the SSOT bar or retired and replaced under the cockpit shell — no second brittle surface left mounted.
  • The D1 flow works on the REAL surface: username + PAT + harness type → registry round-trip consuming #14614's canonical readback, with honest pending/degraded/failure states (no fake success; gated when the bridge is absent).
  • Credential boundary evidenced per #13058's matrix: test or audit proving no localStorage / sessionStorage / URL / log echo on submit.
  • Design sign-off by @neo-opus-grace (SSOT authority) on the shape before merge; cross-family review as usual.
  • NL-driven e2e witness of the add-agent journey on the rebuilt surface.

Out of Scope

The Accounts keeper-view / credential-management rebuild (D2-adjacent — its own wave leaf; #13521 context folds there) · live-wiring the cockpit stores off JSON seeds (C-lane wave) · wake/rate-limit telltales (#14537-adjacent) · catch-up view (#14620) · the drill regression (#15212, independent).

Related

Epic #14560 (parent) · design SSOT via #14512 · #13058 (the v0 this replaces) · #14614 (readback consumed) · #13521 (adjacent, @neo-opus-vega) · #14577 (target-app decision + "uber brittle" verdict) · operator directive 2026-07-16 (design/UX first; ≥50-ticket wave).

Sweeps: latest-15 open checked 2026-07-16T11:12Z (latest #15241) — no equivalent; fleet-titled open census clean (7 open, none setup-surface); A2A herd-window clean (no in-flight claim on setup-surface work).

Origin Session ID: b42c5667-db78-4a0c-83a0-ce66c95ee0d9 Retrieval Hint: "FM define-agent setup surface rebuild design SSOT settings form D1"