Repository navigation
feat(ui): board summary badges in the sidebar and FleetPane (RIG-5177) - #2290
Conversation
|
😎 This pull request was merged. |
|
Compass engineering docs preview: https://compass-ux-5177-board-badges.compass-eng-docs.pages.dev Deployed from |
278d863 to
1ec9d4e
Compare
Review result
NotesEarlier rounds and their fixes:
Gates
|
d6429c1 to
c94a2da
Compare
c94a2da to
c13888b
Compare
Review result
Notes: Pure rebase by the board line owner onto main 309cd3f (base #2285 9e017e7). jj interdiff c94a2da to this head is empty, and c94a2da was itself an empty-interdiff rebase of the reviewed d6429c1. UI suite at this head: 1606 pass, 0 fail. The prior all-clear at d6429c1 carries. Gates: latest CI run green at this head; pre-push hooks passed. |
c13888b to
c79cc51
Compare
c79cc51 to
32ddd1d
Compare
32ddd1d to
bfd7187
Compare
Review result
Notes: Rebased by compass-comms onto main 22d9fc0 after #2275 and #2285 merged. Interdiff is empty against 32ddd1d and against c13888b. All checks on bfd7187 pass. The prior all-clear at d6429c1 carries. Gates: latest CI run green at this head; pre-push hooks passed. |
Adapt the board summary from the roster and the AgentBoardChanged stream event. AgentLeaf shows a halt dot and a waiting-on-you count, and FleetPane shows the count. An event board carries no derived refs, so it updates focus, task count, halt and freshness but keeps the server's waiting-on-you count. A presence delta no longer drops the summary. The board panel and task search need ListAgentBoards and follow in a separate change. Spec-impact: none Refs RIG-5177 Co-authored-by: Matt Wilkinson <matt@rigel.build>
… (RIG-5177) An AgentBoardChanged carries no derived refs, so the client cannot recompute waiting-on-you. Re-read GetRoster after the event and take the server summary for that agent. A failed re-read reports through onError and keeps the event summary until the next read. Spec-impact: none Refs RIG-5177 Co-authored-by: Matt Wilkinson <matt@rigel.build>
…ng on no one (RIG-5177) An agent absent from the caller's OWNER roster is not the caller's, so nothing on its board waits on the caller. A board re-read that finds no entry now clears the waiting count instead of keeping the cached one. Document that onError also reports a failed board re-read. Spec-impact: none Refs RIG-5177 Co-authored-by: Matt Wilkinson <matt@rigel.build>
A GetRoster re-read can resolve after the stream aborts. Check the signal before applying it, so no state reaches onState after teardown. Spec-impact: none Refs RIG-5177 Co-authored-by: Matt Wilkinson <matt@rigel.build>
bfd7187 to
cad170c
Compare
Review result
Notes: Pure rebase by compass-comms onto main 888ac07 (the merged RIG-5186 line). git range-diff 12489a0..bfd7187 888ac07..cad170c shows = for all 4 commits; the interdiff against bfd7187 is empty. The prior all-clear at cad170c carries. Gates: latest CI run green at this head; pre-push hooks passed. |
This PR is part of a stack containing 4 PRs:
mainSummary
adaptRosterEntryreadsRosterEntry.board, and theagentBoardChangedstream event updates it.AgentLeafshows a halt mark (data-haltdone, blocked or awaiting_user) and a waiting-on-you count. FleetPane shows "N waiting on you".adaptAgentBoardmaps the full wire board to domain types. Unknown enum values map toundefined, or to"unknown"for ref kind.agentBoardChangedthe stream re-readsGetRoster(OWNER)and takes the server summary for that agent. An agent the re-read does not list belongs to someone else, so its waiting count drops to zero. A failed re-read reports throughonErrorand keeps the event summary.presenceChangeddelta now merges into the existing entry, so it no longer drops the board summary.RosterEntry.boardon the server. The board panel and thetaskssearch provider follow in RIG-5409.Verification
moon run compass-ui:typecheck,compass-ui:stylelint: pass. Biome: warnings only (one new complexity warning ondecodeEvent, one case over the limit).moon run compass-ui:teston the feat(board): agent board RPCs, roster summary and board events (RIG-5172) #2285 base: 1606 pass, 0 fail.moon ci: green.Risks
Low. UI only. Each board event costs one
GetRoster(OWNER)read; board writes are rare next to messages. Rollback: revert.Compatibility
Additive. New re-exports from
@compass/clientfor the board types. No wire or API change.Documentation
None: the design record already describes these surfaces.
Spec-impact: none
Refs RIG-5177