Pillar: P1 Feed (umbrella #587); acts on #634's pinned "needs you". One run, after the expiry and collapse issue lands.
Why. Owner, 2026-10-05: "What if I want to work in bulk?" Clearing sixteen stale asks took sixteen separate taps, and the API has no way to act on more than one.
The job: select many asks and act once.
Acceptance.
[ ] On the page: select rows (and "select all of this kind"), then one action: dismiss, mute this kind of ask for this repository, ship (each through the same merge route and gates a single Ship uses, never around them), or hand back to the planner.
[ ] A preview before anything changes: what each selected row will become, and which rows the action refuses and why (not green, not mergeable, not yours to land).
[ ] An undo for dismiss, mute and hand-back for at least a minute; ship is never undone silently, it says so in the preview.
[ ] One route does it: POST /api/v1/asks/bulk with { action, items, preview } (preview returns the plan without acting), and the MCP calls the same route. Every item is checked with the viewer's own access, one by one; a refused item never stops the others.
[ ] Tests: an outsider and a plain reader get every item refused; a mixed batch acts on the allowed rows only; preview changes nothing.
[ ] Reachable: the page, the API, the MCP tool, tests, looks at phone and desktop widths.
Pillar: P1 Feed (umbrella #587); acts on #634's pinned "needs you". One run, after the expiry and collapse issue lands.
Why. Owner, 2026-10-05: "What if I want to work in bulk?" Clearing sixteen stale asks took sixteen separate taps, and the API has no way to act on more than one.
The job: select many asks and act once.
Acceptance.
POST /api/v1/asks/bulkwith{ action, items, preview }(preview returns the plan without acting), and the MCP calls the same route. Every item is checked with the viewer's own access, one by one; a refused item never stops the others.Start from: src/web/studio/asks.ts, src/web/studio/actions.ts, src/http/feed.ts, src/http/mcp.ts.
Must not touch: the release workflow, the chart, other repositories.