LearnNewsExamplesServices
Frontmatter
id17269
titleOne navigation vocabulary for the cockpit shell: keeper tabs vs edge-rail items
stateClosed
labels
enhancementai
assigneesneo-fable-clio
createdAtAug 17, 2026, 12:31 AM
updatedAtAug 21, 2026, 11:04 PM
githubUrlhttps://github.com/neomjs/neo/issues/17269
authorneo-fable-clio
commentsCount2
parentIssue14560
subIssues
17451 Nav cut 1: south reading-surface tabs, preset rename, Review default
17457 Cockpit bar overflow: ten tenants where the navigation model seats five
subIssuesCompleted2
subIssuesTotal2
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtAug 21, 2026, 11:04 PM
milestonev13.2

One navigation vocabulary for the cockpit shell: keeper tabs vs edge-rail items

Closed Backlog/active-chunk-17 enhancementai
neo-fable-clio
neo-fable-clio commented on Aug 17, 2026, 12:31 AM

One navigation vocabulary for the cockpit shell: keeper tabs vs edge-rail items

Context

Operator critique 2026-08-16, verbatim intent: "huge tabs left, default neo styling (tab bar), versus tiny menu items at the right edge" — the shell speaks two navigation dialects at once, and neither is designed for this surface.

Scope widened 2026-08-18 (operator session, full IA audit): the shell in fact speaks FOUR grammars, and the model must also reserve places for three surfaces the operator named (instance switcher #17328, Tasks pane #17329, System view #17330). The audit's findings live in the navigation-model decision comment on this ticket.

The Problem

The cockpit's "places" are reachable through visually unrelated vocabularies:

  1. Keeper-view navigation renders as default-Neo tab-bar styling (framework-default size and skin — correct for a demo app, undesigned for the product surface).
  2. The auto-hidden drawer panes render as small edge-rail tabs on the right — SEVEN items mixing three kinds (inspector, tools, content reading surfaces) in one squeezed strip.
  3. The top preset buttons (fm-preset-button row) LOOK like view tabs but are dock-layout snapshots (activatePerspective) — including a name collision: "Fleet" (preset) and "Fleet" (keeper tab) are simultaneously visible and mean different things (apps/agentos/view/fleet/cockpitPresets.mjs).
  4. The best path is invisible: clicking an agent-card name opens the detail WITH content, while the explicit Review preset lands on the "Select an agent to inspect" empty state — implicit navigation beats the chrome.

The result: the SAME class of act — "go to a place" — looks like different applications, and the size relationship is inverted relative to importance (primary navigation huge and default-styled, secondary drawers tiny and cramped; the fleet's proven headline reading surface, Memories, sits as rail item 5 of 7 while the fixture-fed Activity zone owns ~40% of the screen). #17211 fixes the rail's sizing DEFECTS; this ticket decides and designs the vocabulary those fixes should express.

The Fix

Design-first: ONE navigation model for the shell, answering — what deserves a persistent tab, what lives on the edge rail, what is a transient drawer, what is chrome; one designed tab anatomy for the cockpit (replacing framework-default tab styling on this surface with §04-consistent type/density/mark treatment); the rail as the DESIGNED secondary tier (consistent anatomy at its size, not a squeezed afterthought); the preset switcher de-costumed into an explicitly-labeled layout control (no longer tab-shaped); the south zone as the fleet-level content-tab family (Activity · Tasks · Memories · Mailbox · Catch-up — expressible as pure dock-document data, cockpitDockDocument.mjs stream-tabs items). Then implement across the keeper navigation + the rail chain, tokens-only, without changing the dock mechanics underneath.

Acceptance Criteria

  • A one-page navigation-model decision (tab vs rail vs drawer vs chrome criteria) reviewed before implementation — the spec-first gate, riding #17263's review lane. The decision reserves places for #17328 (top-chrome instance switcher), #17329 (south Tasks tab), #17330 (System keeper view).
  • The keeper navigation renders the designed cockpit tab anatomy — visibly NOT framework-default styling — at §04 type/density steps.
  • The edge rail renders the same design family at its tier: consistent marks, readable labels, no squeeze.
  • The preset switcher reads as a layout control, not navigation; the "Fleet"-name collision is resolved (preset renamed or relabeled).
  • The two tiers read as ONE application: side-by-side screenshot review is part of the PR evidence.
  • Dock mechanics (auto-hide, reveal, pin) behaviorally untouched; existing NL e2e stays green.

Out of Scope

#17211's specific sizing defects (claimed; this ticket supplies the vocabulary, coordinates on landing order) · dock-zone mechanics · the panes' content design (#17268) · the reserved surfaces' own implementations (#17328 · #17329 · #17330 · #17331) · portal/app-wide navigation outside the Agent OS shell.

Related

Epic #14560 (parent) · #17263 (the bar) · #17211 (defect sibling, @neo-opus-grace) · #17241 (dock visual language into the engine — the rail anatomy should land engine-side per its outcome) · #17328 · #17329 · #17330 · #17268 (content design) · #17315/#17316 (Memories pop-out/drill-in — placement-orthogonal, unaffected).

Live latest-open sweep: latest 10 re-checked 2026-08-16T22:30Z, no equivalent; A2A herd window clean. Scope-widening re-sweep 2026-08-18T08:15Z: latest 20 checked at #17328–#17331 filing time.

Origin Session ID: 71baabc5-3ebe-46ff-99ce-a301e78cb7c5

Retrieval Hint: query_raw_memories("cockpit shell navigation vocabulary keeper tabs edge rail one design")

tobiu referenced in commit d191255 - "feat(fleet): one chrome-tier tab family across keeper, south and rail (#17269) (#17505) on Aug 21, 2026, 11:04 PM
tobiu closed this issue on Aug 21, 2026, 11:04 PM