LearnNewsExamplesServices
Frontmatter
id14608
titleFM cockpit agent detail view: drill-in panes with freshness-labeled claims
stateClosed
labels
enhancementdeveloper-experienceai
assigneesneo-opus-vega
createdAtJul 4, 2026, 4:29 AM
updatedAt11:27 AM
githubUrlhttps://github.com/neomjs/neo/issues/14608
authorneo-opus-vega
commentsCount1
parentIssue14560
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[ ] 14610 FM cockpit pop-out: agent detail to its own OS window on the shared heap
closedAt11:27 AM

FM cockpit agent detail view: drill-in panes with freshness-labeled claims

Closed Backlog/active-chunk-3 enhancementdeveloper-experienceai
neo-opus-vega
neo-opus-vega commented on Jul 4, 2026, 4:29 AM

Context

T4.14 of Epic #14560 (map v1.1) — click an agent card → the resident's detail: thought-stream, current lane, repo activity, PRs. The SSOT's caption names it ("Click an agent → its thought-stream, lane, repo, and PRs"). Filed under the decomposition sprint (D#14561).

The Problem

The detail view is where the cockpit's claims become CHECKABLE — and therefore where stale data lies hardest. A lane line that is 40 minutes old rendered as current is exactly the class the #13444 graduation's freshness ledger forbids: every mutable claim carries its observation time and stale renders AS stale. No surface needs that discipline more than the drill-in.

The Architectural Reality

  • Composes the card contract (#14605 fields at expanded grain) + #14593/#14594 primitives; namespace per #14577.
  • Panes bind the same Lane-C feeds (#14572/#14573) plus per-agent memory-surface reads where contracts exist; every pane header renders observedAt + freshness state (the ADR 0032 §2.2.1 ledger fields at UI grain).
  • The ADR 0032 render rules govern the identity header: trail-first (deeds/lanes), evolution-rate slot reserved (consumes the #14565 instruments when they land), no role-typing anywhere.
  • Pop-out (T4.15) is a separate leaf — this view must render shell-agnostic (dev-server now, OS-window host later).

The Fix

The per-view triplet: (1) AgentDetail view (identity header per ADR 0032 · lane pane · activity pane · PRs pane, each freshness-labeled); (2) unit specs — pane freshness rendering (fresh/stale/lost fixtures), header render rules, unknown-pane-data degrade; (3) NL-verifiable drill from a live card.

Acceptance Criteria

  • Every pane renders observedAt + freshness state; a stale fixture renders visibly stale (never silently current).
  • Identity header conforms to the #14605 contract + ADR 0032 (name-as-display-state · engine-as-metadata · no role fields).
  • Shell-agnostic mount (no Electron dependency in the view).
  • Unit specs (custom playwright config) + NL-verifiable drill-in from the grid.

Out of Scope

Pop-out to OS window (T4.15) · drill e2e round-trip (T4.16) · thought-stream SOURCE contracts (Lane-C/Memory-Core seams — consumed as they exist, panes degrade honestly where they don't).

Related

Epic #14560 (parent) · blocked-by #14605/#14598 · consumes #14572/#14573 · ADR 0032 (PR #14583) · #13444 freshness carry-forward · D#14561.

Live latest-open sweep: fold-window fresh (newest #14607); no equivalent. A2A sweep: clean. Structure-map gate: N/A — app-layer view.

Origin Session ID: a28f1415-37a4-4a5a-a3e4-b56adf6274ec Retrieval Hint: "FM cockpit agent detail drill freshness labeled panes"

tobiu referenced in commit 72da9ab - "feat(agentos): FM cockpit agent detail view — drill-in inspector, freshness-labeled panes (#14608) (#15063) on 11:27 AM
tobiu closed this issue on 11:27 AM