Skip to content

feat(ui): add the agent board panel and tasks search over ListAgentBoards (RIG-5409) - #2300

Open
rigel-mintaka wants to merge 2 commits into
compass-comms/rig-5173-board-asksfrom
compass-ux/5409-board-panel
Open

rigel-mintaka wants to merge 2 commits into
compass-comms/rig-5173-board-asksfrom
compass-ux/5409-board-panel

Conversation

@rigel-mintaka

@rigel-mintaka rigel-mintaka commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

This PR is part of a stack containing 4 PRs:

  1. main
  2. feat(ui): board summary badges in the sidebar and FleetPane (RIG-5177) #2290
  3. feat(board): show asks and their forge mirror state on boards (RIG-5173) #2292
  4. "feat(ui): add the agent board panel and tasks search over ListAgentBoards (RIG-5409)" (this PR)
  5. feat(mirror): agent forge_mirror_messages tool with real-session attribution (RIG-5174) #2319

Summary

Finishes the UI half of the agent board (T9, D9 in docs/designs/agent/compass-agent-status-record/design.md) over ListAgentBoards.

  • AgentBoardPanel in AgentView, on its own row under the header line. It shows:
    • the halt chip, focus task, "updated N min ago", and the stale marker;
    • one row per task: primary ref link, title, state, then refs with derived chips (gate, checks, draft, stack n/m, tip, stale approval), the note, waiting chips with their blocks refs, and subagents;
    • Asks, pending first;
    • Untracked refs.
  • The panel reads ListAgentBoards for its agent through the shared query cache. It re-reads every 60 s and on each AgentBoardChanged for the agent, counted per agent in comms presence (boardEvents), because an automatic patch keeps the write time.
  • A primary ref with an unsafe URL renders as plain text; a safe one opens through openExternal.
  • Clicking an ask opens the topic that holds its message. When that message is not loaded, it opens the ask's channel.
  • tasks destination provider (kind task): matches task title and note text, and does an exact ref read when the query looks like a ref. Rows keep server order across boards. Selecting a row opens the agent.

Stack

On #2292 (asks and mirror state on boards). Below it: #2290 → #2285 → #2275 → main.

Tests

  • AgentBoard.test.tsx: the panel renders tasks, derived chips, waiting chips, subagents, asks (pending first) and untracked refs from a fixture.
  • AgentBoard.test.tsx also: a safe primary ref opens externally; an unsafe one renders as text.
  • AgentBoardPanel.live.test.tsx:
    • an agentBoardChanged re-reads the board exactly once;
    • two automatic patches with the same write time each re-read;
    • an ask whose message is not loaded opens its channel.
  • destinations.test.ts: the tasks provider finds a ref (and tolerates a refused ref read) and opens the agent; rows keep server order across boards.
  • Each test was checked red against a mutation: refetch removed, event counter removed, click handler removed, unsafe fallback reverted, provider navigation removed, per-board rank restored.
  • compass-ui:test 1614 pass, 0 fail; typecheck, stylelint and the visual gate (19 passed) green.

Refs RIG-5409

@linear-code

linear-code Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

RIG-5409

RIG-5173

@rigel-mintaka rigel-mintaka changed the title feat(board): show asks and their forge mirror state on boards (RIG-5173) feat(ui): add the agent board panel and tasks search over ListAgentBoards (RIG-5409) Oct 15, 2026
@rigel-mintaka
rigel-mintaka changed the base branch from compass-ux/5177-board-badges to compass-comms/rig-5173-board-asks October 15, 2026 06:07
@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-ux-5409-board-panel.compass-eng-docs.pages.dev

Deployed from compass-ux/5409-board-panel at ed3987f.

@rigel-mintaka

Copy link
Copy Markdown
Contributor Author

Review result

  • reviewedSha: 6f1ae8e0ed5e77f7976ed2e03376e5b315b6143a
  • reviewedBase: 1e8efc49e0ab49266a84b2626cda5e82f13abbef
  • Result: all-clear (0 high, 0 medium open)

Notes: round 1 on 2900a9c found 2 medium and 1 low.

  • An automatic board patch keeps the write time, so the panel could miss a re-read. The panel now counts board events per agent.
  • No test covered the primary-ref link. The new tests found that an unsafe URL rendered empty text, which is now fixed.
  • Task rank restarted per board. Rows now keep server order.

The fixes are in 6f1ae8e, and round 2 found 0 findings. Each new test fails against its mutation.

Gates: compass-ui:test 1614 pass, 0 fail; typecheck, stylelint and the visual gate (19 passed) green; pre-push hooks passed; CI green at this head.

@rigel-mintaka
rigel-mintaka marked this pull request as ready for review October 15, 2026 07:07
@rigel-mintaka
rigel-mintaka force-pushed the compass-comms/rig-5173-board-asks branch from 1e8efc4 to 85012ca Compare October 15, 2026 15:59
@rigel-mintaka
rigel-mintaka force-pushed the compass-ux/5409-board-panel branch from 6f1ae8e to 7d022e0 Compare October 15, 2026 16:03
@rigel-mintaka
rigel-mintaka force-pushed the compass-comms/rig-5173-board-asks branch from 85012ca to 75ad4ce Compare October 15, 2026 16:23
@rigel-mintaka
rigel-mintaka force-pushed the compass-ux/5409-board-panel branch from 7d022e0 to c89d5f0 Compare October 15, 2026 16:29
@mattwilkinsonn
mattwilkinsonn force-pushed the compass-comms/rig-5173-board-asks branch from 75ad4ce to 1d3ec69 Compare October 15, 2026 17:52
@rigel-mintaka
rigel-mintaka force-pushed the compass-ux/5409-board-panel branch from c89d5f0 to 8e9da03 Compare October 15, 2026 19:18
@rigel-mintaka

Copy link
Copy Markdown
Contributor Author

Review result

  • reviewedSha: 8e9da03138017d55250a6415cf71d2179ac99645
  • reviewedBase: 1d3ec69a655c46dfd7efd77b57062ab5a29bcb36
  • Result: all-clear (0 high, 0 medium open)

Notes: Rebased onto #2292 1d3ec69 after compass-comms rebased the board line onto main 22d9fc0; empty interdiff against c89d5f0. compass-ui test 1635 pass, typecheck, stylelint and visual gate (19) green. The prior all-clear at 6f1ae8e carries.

Gates: latest CI run green at this head; pre-push hooks passed.

rigel-mintaka and others added 2 commits October 15, 2026 21:55
…ards (RIG-5409)

AgentView shows the agent board under its header row. The panel reads
ListAgentBoards, re-reads every 60 s and on each new board write for the
agent, and opens an ask in its topic (or its channel when the message is not
loaded). Palette search gains a tasks provider that matches task text and an
exact ref and opens the agent.

Spec-impact: none
Refs RIG-5409
Co-authored-by: Matt Wilkinson <matt@rigel.build>
…links (RIG-5409)

An automatic board patch keeps the write time, so the panel now re-reads on a
per-agent board event count. A primary ref with an unsafe URL renders its text.
Task search ranks across boards in server order.

Spec-impact: none
Refs RIG-5409
Co-authored-by: Matt Wilkinson <matt@rigel.build>
@rigel-mintaka
rigel-mintaka force-pushed the compass-comms/rig-5173-board-asks branch from 1d3ec69 to e48fecd Compare October 16, 2026 02:23
@rigel-mintaka
rigel-mintaka force-pushed the compass-ux/5409-board-panel branch from 8e9da03 to ed3987f Compare October 16, 2026 02:23
@rigel-mintaka

Copy link
Copy Markdown
Contributor Author

Review result

  • reviewedSha: ed3987f00d755a4eb5f4d02d49fc8370a6f006c8
  • reviewedBase: e48fecd8e289206598027d25477e6d8201b4156d
  • Result: all-clear (0 high, 0 medium open)

Notes: Pure rebase by compass-comms onto #2292 e48fecd (itself rebased onto main 888ac07). git range-diff bfd7187..8e9da03 cad170c..ed3987f shows = for both commits; the interdiff against 8e9da03 is empty. The prior all-clear at ed3987f carries.

Gates: latest CI run green at this head; pre-push hooks passed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant