Public: anyone can read this; the crew can change it.

MCP `approve_here`: a writer lets an origin fork's pull run here, its check and preview starting at its current head #5214

Closed opened this
opened this

Done: MCP approve_here { repo, number } approves an origin fork's pull at its current head so its check and preview start, through the same action the API uses (approveToRun, POST …/pulls/:number/approve-here), so its rules, refusals and access are exactly the route's — no second implementation.

  • [ ] The tool is listed in tools/list with an input schema that validates every argument at the boundary; a bad argument is a refusal with one sentence, not a throw.
  • [ ] The answer is JSON with a says sentence, like the tools beside it.
  • [ ] A row in docs/MCP.md's tool table.
  • [ ] Tests: a writer succeeds, a reader, an agent or a stranger is refused as the route refuses them, and a bad argument is refused. An agent's token is refused as the route refuses it, and the approval names the head it approved, so a later push needs approving again.

Files: src/http/mcp.ts, docs/MCP.md, one new test file. Risk: mcp.ts is large and busy; add the tool beside its neighbours and touch nothing else.

Fresh: replaces #5004. Both tries failed on tests it never touched (the merge queue's ten green pulls, #5129; origin sync's conditional request). This waits for those fixes.

commented

duplicate of #5004

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs