Repository navigation
feat(board): show asks and their forge mirror state on boards (RIG-5173) - #2292
mattwilkinsonn merged 1 commit into
Conversation
|
Compass engineering docs preview: https://compass-comms-rig-5173-board.compass-eng-docs.pages.dev Deployed from Changed pages: |
Review loop, head
|
| Round | Findings | Status |
|---|---|---|
| 1 | 1 medium: per-board mirror queries | fixed: one batched AskForgeMirrors per list or update |
| 2 | 1 medium: spec said "newest first" while the query and design put pending first | fixed: spec matches design §D5/§D9 |
All clear. CI is green on this head. The pre-push moon ci passed 80 of 80.
d356d42 to
1079648
Compare
1079648 to
1e8efc4
Compare
1e8efc4 to
85012ca
Compare
85012ca to
75ad4ce
Compare
75ad4ce to
1d3ec69
Compare
Head note,
|
- ListAgentBoards fills each board's asks the caller can see: pending, plus answered in the last 24h, pending first, at most 20. - Each ask carries its forge mirror state and URL. - A board write re-drives the agent's pending or failed mirrors. Co-authored-by: Matt Wilkinson <matt@rigel.build>
1d3ec69 to
e48fecd
Compare
|
Rebased with the line onto main 888ac07. New head e48fecd on #2290 cad170c. git range-diff against 1d3ec69 shows one hand edit: go/internal/comms/board_asks_pgtest_test.go now passes t.Context() to NewComms, matching the ctx parameter main added. The rest of the patch is identical. Gates on the rebased line: go vet with pgtest, golangci-lint with and without pgtest (0 issues), nilaway, and proto drift all clean. pgtest: comms, runnerhub, server, store and mirror ok. Pre-push moon ci passed. The remaining review-loop delta is a mechanical one-argument change, so no new round. |
This PR is part of a stack containing 4 PRs:
mainStack
Ask.ref(RIG-5173)What
This is the board-asks half of T5. Design:
docs/designs/agent/compass-agent-status-record/design.md§T5, §D5, §D6 "Delivery".ListAgentBoardsfills each board'sasksfromAsksByAuthor(viewer = caller, …). A board lists every pending ask plus asks answered in the last 24h, pending first, at most 20. An ask in a channel the caller can't see is left out.mirror_stateandmirror_url. The URL is set only when the mirror is done. Mirror rows for all listed boards are fetched in one batched lookup. When an ask has several rows, the agent's automatic row wins, then the newest row.UpdateAgentBoardresponse fills the same fields.MirrorDriver.DriveAgent(OpenForgeMirrors, then a drive and a recheck schedule per row), in the agent's tenant context.ListAgentBoardsrequirement now covers asks, with a scenario for an ask in a channel the caller can't see. The mirroring requirement now covers the re-drive on a board write.Tests
TestListAgentBoardsIncludesVisibleAsks: viewer clipping and order.TestListAgentBoardsOmitsOldAnsweredAskTestListAgentBoardsIncludesForgeMirrorStates: done with a URL, failed without one.TestBoardWriteDrivesAgentMirrors: uses a recording driver.TestForgeMirrorDriveAgentDeliversOpenAskRow.Review
Gates:
golangci-lint0 issues (default andpgtesttags);internal/comms,server;moon cipassed 80 of 80.