LearnNewsExamplesServices
Frontmatter
id14846
titleHarness-UI structure/nav shell — the stable-shell left-rail keeper-view nav (the unfiled #13448 cross-cutting sub)
stateClosed
labels
enhancementdeveloper-experienceaiarchitecture
assigneesneo-opus-vega
createdAt1:19 PM
updatedAt7:14 PM
githubUrlhttps://github.com/neomjs/neo/issues/14846
authorneo-opus-vega
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAt7:14 PM

Harness-UI structure/nav shell — the stable-shell left-rail keeper-view nav (the unfiled #13448 cross-cutting sub)

Closed Backlog/active-chunk-4 enhancementdeveloper-experienceaiarchitecture
neo-opus-vega
neo-opus-vega commented on 1:19 PM

Context

#13448 (the graduated harness-UI-definition epic, ADR-0020 in full) explicitly requires that "the cross-cutting structure/nav is its own sub" — but that sub was never filed. #13448 defines the harness UI as a B3-hybrid: a stable shell (left-rail nav + Accounts + Fleet roster + settings) beside a dockable QT work-area (Chat + live panes + canvas), with keeper views (Welcome → Accounts → Fleet → Chat) selected from the left-rail nav.

Every keeper view + the FM module mount (#14632) plugs into this shell — but the shell doesn't exist, so the live app is the June-post-mortem debt: Viewport.mjs = a toolbar + a dashboard.Container hosting Accounts + a FleetSettingsPanel (GridContainer data-table). No left-rail nav, no Welcome, no keeper-view routing, and the Fleet is a data-grid instead of the card cockpit the design SSOT specifies. Operator escalation (2026-07-05): "how do we get to the fleet manager?" — there is no nav shell to get there through.

Intended solution

The stable-shell left-rail nav (the B3-hybrid shell), idiomatically a tab.Container with a left tab-bar = the keeper-view nav rail, hosting:

  • Welcome — transient first-open landing (earns the "wow", routes in); not a keeper.
  • Fleet — the FM cockpit: the roster as cards (FleetGrid + AgentCard + ActivityStream + HealthBar) + start/stop/restart. Not a GridContainer table (the "no neo grid planned" correction).
  • Accounts — the existing identity-setup keeper-view, reachable via the rail.
  • Chat — prompt → live-pane (placeholder → the dockable work-area).

The FM module mount (#14632) resolves to the Fleet keeper-view slot in this shell (view-region per the B3-hybrid; pop-out rides the dockable work-area — resolves #14631's topology). SSOT conformance (#14805) skins it.

Acceptance Criteria

  • apps/agentos renders a stable-shell left-rail nav (tab.Container, left rail) with keeper-view destinations.
  • Fleet keeper-view renders the card cockpit (FleetGrid + ActivityStream in the §01 two-zone layout) — not a data-table.
  • Accounts reachable via the nav rail.
  • A Welcome landing (transient first-open or default destination).
  • Renders in the dev server with a screenshot beside the SSOT frame (the #14805 conformance gate).

Related

Parent #13448 (this is its unfiled cross-cutting structure/nav sub) · #14560 (FM cockpit UI/UX — the Fleet keeper-view components) · #14631/#14632 (FM module topology/mount — resolves to the Fleet view-region in this shell) · #14805 (SSOT conformance) · the design SSOTs (apps/agentos/design/*.html).

Live latest-open sweep this turn (newest #14845); no equivalent shell/nav sub exists.

Origin Session ID: 3bc21462-8122-4b02-81e4-324ed781e1ac (@neo-opus-vega · Opus 4.8)

tobiu referenced in commit 8ab2c8d - "feat(agentos): harness-UI left-rail keeper-view shell + Fleet cockpit keeper-view (#14846) (#14847) on 7:14 PM
tobiu closed this issue on 7:14 PM