You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(aggregator): bulk triage mode for Needs-you — multi-select acknowledge/snooze/assign/escalate in one mediated batch #1277
Part of epic #1184 (PM stack coherence — wave 2, 2026-10-26).
Needs-you triage is one-item-at-a-time: acknowledge, snooze, assign, or escalate each card individually through the orchestrator-mediated path. After a busy night the queue can hold dozens of routine items (Jules questions, stale sessions, repeat blockers) where Drew's decision is identical for a whole class of them, and clicking through each is exactly the toil the dashboard exists to remove. Bulk triage mode adds multi-select on /attention: pick many items, apply one action (acknowledge / snooze / assign / escalate) as a single mediated batch, with one audit entry written per item (never one opaque batch entry) and a pre-submit summary showing exactly which items and what will happen to each. Failed items in a batch are reported individually and stay in the queue — a partial batch never silently drops work.
Acceptance:
/attention supports multi-select with a visible count and a review step listing every selected item + the action before anything is submitted.
A batch applies through the orchestrator-mediated path and writes one attributed audit entry per item; the batch as submitted is recoverable from those entries.
Per-item failures are surfaced by ref with their error, and failed items remain in Needs-you.
Bulk actions are covered by route tests including a mixed success/failure batch.
Acceptance criteria
/attention supports multi-select with a visible count and a review step listing every selected item + the action before anything is submitted.
A batch applies through the orchestrator-mediated path and writes one attributed audit entry per item; the batch as submitted is recoverable from those entries.
Per-item failures are surfaced by ref with their error, and failed items remain in Needs-you.
Bulk actions are covered by route tests including a mixed success/failure batch.
Fleet-monitor intake pass (protocol §5), 2026-10-28. Still live: no merged or open PR references this issue (checked 2026-10-28T01:47Z); nothing has implemented it yet.
Related: part of epic #1184 (PM stack coherence, wave 2); siblings #1275 (command palette + keyboard triage) and #1276 (saved views) touch the same /attention surface — sequence bulk triage after, or alongside, the palette work so the mediated action path is built once.
Notes / risks: the body's Acceptance list was already complete; the appended section restates it in criteria form. The hard part is not the UI but the per-item audit + partial-failure semantics: a batch that writes one opaque entry, or drops failed items, fails the issue's own reason to exist. Priority normal (wave-2 epic work, toil reduction rather than correctness), effort/m.
Suggested approach: build the mediated batch endpoint first (one audit entry per item, per-item results returned by ref), then the multi-select + review-step UI on /attention, with the mixed success/failure route test as the acceptance gate.
Resuming from the prior lane's clean checkpoint: dedicated laptop worktree /home/user/git/fleet/4997, branch queue/4997-1277-bulk-triage, no code changes yet. Fresh revalidation: issue #1277 is OPEN with no hard-stop labels and no competing PR. Implementing bulk triage for the aggregator /attention page per the acceptance criteria: multi-select + count + pre-submit review, mediated batch path with one attributed audit entry per item, per-item failure reporting, and route tests including a mixed success/failure batch.
Bulk triage mode for Needs-you is implemented and merged in PR #4053 (merge commit 19d5aadc1):
Multi-select picks on the /attention queue cards with a visible selected count, plus a bulk bar (author, verb, payload controls, select-all).
A review step listing every selected item + the chosen action before anything is submitted; Submit sends exactly the reviewed snapshot.
New POST /api/actions/batch: per-item validation under the existing single-action rules, one attributed audit entry per item (never an opaque batch record), per-item results — failures reported by ref with their error and failed items remain in Needs-you. Single-action path unchanged.
Codex review: 8 findings across 5 rounds, all fixed in the PR and answered on their threads (reviewed-batch snapshot, token-preserving retries, 100-action + serialized-size chunking, in-flight guards incl. Back, body-read failure = unknown outcome, partial-success card updates, fragment-refresh UI restore).
Tests: bun test test/actions.test.ts 19/19 (new route tests for the mixed success/failure batch, per-item dedupe, malformed envelopes; new render tests for picks/bar); targeted files 43/43; full aggregator suite 911 pass with the slice3 failure verified pre-existing on clean main.
Verification:gh pr checks after merge showed CodeRabbit skipping and no blocking failure; prior PR report recorded 911 passing tests and a slice3 failure already present on clean main.
Activity
developing-today commentedon Oct 27, 2026
CODE-401
dezren39 commentedon Oct 28, 2026
Intake review
Fleet-monitor intake pass (protocol §5), 2026-10-28. Still live: no merged or open PR references this issue (checked 2026-10-28T01:47Z); nothing has implemented it yet.
Related: part of epic #1184 (PM stack coherence, wave 2); siblings #1275 (command palette + keyboard triage) and #1276 (saved views) touch the same /attention surface — sequence bulk triage after, or alongside, the palette work so the mediated action path is built once.
Notes / risks: the body's Acceptance list was already complete; the appended section restates it in criteria form. The hard part is not the UI but the per-item audit + partial-failure semantics: a batch that writes one opaque entry, or drops failed items, fails the issue's own reason to exist. Priority normal (wave-2 epic work, toil reduction rather than correctness), effort/m.
Suggested approach: build the mediated batch endpoint first (one audit entry per item, per-item results returned by ref), then the multi-select + review-step UI on /attention, with the mixed success/failure route test as the acceptance gate.
19 remaining items
dezren39 commentedon Nov 1, 2026
Picked up — task 4997 (lane B shift)
Resuming from the prior lane's clean checkpoint: dedicated laptop worktree
/home/user/git/fleet/4997, branchqueue/4997-1277-bulk-triage, no code changes yet. Fresh revalidation: issue #1277 is OPEN with no hard-stop labels and no competing PR. Implementing bulk triage for the aggregator /attention page per the acceptance criteria: multi-select + count + pre-submit review, mediated batch path with one attributed audit entry per item, per-item failure reporting, and route tests including a mixed success/failure batch.fix(aggregator): bulk triage submits the reviewed snapshot, retries k…
fix(aggregator): guard bulk submit in flight and pack chunks by seria…
fix(aggregator): a batch response body-read failure is unknown, not a…
fix(aggregator): guard bulk Back in flight; update accepted cards on …
fix(aggregator): bulk review UI survives a queue fragment refresh (#1277
Merge pull request #4053 from developing-today/queue/4997-1277-bulk-t…
dezren39 commentedon Nov 1, 2026
Done — task 4997 (lane B shift)
Bulk triage mode for Needs-you is implemented and merged in PR #4053 (merge commit
19d5aadc1):POST /api/actions/batch: per-item validation under the existing single-action rules, one attributed audit entry per item (never an opaque batch record), per-item results — failures reported by ref with their error and failed items remain in Needs-you. Single-action path unchanged.bun test test/actions.test.ts19/19 (new route tests for the mixed success/failure batch, per-item dedupe, malformed envelopes; new render tests for picks/bar); targeted files 43/43; full aggregator suite 911 pass with the slice3 failure verified pre-existing on clean main.Closing issue #1277 as complete.
dezren39 commentedon Nov 1, 2026
agent-note:v1 — picked up — OpenChamber scheduled lane
pr_openedcheckpoint for PR feat(aggregator): bulk triage mode for Needs-you — multi-select batch actions (#1277) #4053.dezren39 commentedon Nov 1, 2026
agent-note:v1 — done — OpenChamber scheduled lane
gh pr checksafter merge showed CodeRabbit skipping and no blocking failure; prior PR report recorded 911 passing tests and a slice3 failure already present on clean main.