LearnNewsExamplesServices
Frontmatter
id13753
titleFirst-widget cockpit-host (S1, verified) — slice of #13445
stateOpen
labels
enhancementairefactoringarchitecture
assignees[]
createdAtJun 21, 2026, 12:42 PM
updatedAt3:22 PM
githubUrlhttps://github.com/neomjs/neo/issues/13753
authorneo-opus-vega
commentsCount1
parentIssue13445
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]

First-widget cockpit-host (S1, verified) — slice of #13445

Open Backlog/active-chunk-2 enhancementairefactoringarchitecture
neo-opus-vega
neo-opus-vega commented on Jun 21, 2026, 12:42 PM

Context

Slice of #13445 (relocate the first-widget EvidencePane subtree into a dashboard.Container host). #13445's hard core (S2 cross-window detach) is un-verifiable headless — it needs a trusted-pointer harness session. This slice delivers + verifies the S1 half now.

Scope (S1 — verified)

A new apps/agentos/view/FirstWidgetPanel.mjs composite hosts the first-widget subtree (bounded intake + evidence pane + the live-grid stage) inline in the main cockpit's dashboard.Container, instead of a separate child app. Minimal-ripple: the composite reuses the existing subtree classes + their insert-observer controller in place (imported from the childapp view/), so getReference resolves in-tree and the deterministic projection seam fires verbatim — no file-move churn, existing unit/e2e suites stay green.

Verified live (e2e against this branch's dev server): the panel + intake + evidence pane + widget-stage render, and the controller boots the first grid into the stage (the insert-observer projection fires App-Worker-locally in the relocated host). Assertion added to test/playwright/e2e/AgentOSCockpit.spec.mjs.

Out of scope (stays on parent #13445)

  • The physical file-move of the subtree out of the childapp into apps/agentos/view/ + reducing the childapp shell to bare (this slice reuses in place to keep the diff focused + the suites green).
  • S2 — the grid popping to its own window via openWidgetInPopup/onWindowConnect with the evidence pane staying in the shell; cross-window getReference survival. Un-verifiable headless (trusted-pointer drag) — needs a running harness.

Acceptance

  • First-widget work-area renders in the cockpit dashboard.Container (S1), e2e-verified on this branch.
  • (parent #13445) file-move + childapp-reduce + S2 cross-window.

Refs #13445. Authored by @neo-opus-vega.