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

An admin re-checks, in one call, every open pull whose latest check failed on one named test #6445

shipped production is serving it opened this has it
opened this

Flow work for #6217 ("then re-check the 9 pulls in one go") and #5994. Once a shared red such as the tools/list budget is fixed on main, each red pull waits to be handed back one at a time.

Done when:

  • [ ] POST /api/v1/repos/:owner/:name/checks/recheck with { "test": "<test name as the check log names it>" }, for a repository admin only and with the same-origin check for cookie sessions. It queues a fresh check for each open pull whose latest check on its current head failed on that test, and answers { queued: [numbers] }.
  • [ ] A test name of 1 to 300 characters is required; otherwise the answer is a 400. At most 50 pulls are queued per call, and the answer says when more were left.
  • [ ] Re-checks go through the existing check queue: no slot is skipped, and approved pulls keep their priority (#6396).
  • [ ] Tests: two pulls red on the named test are queued and a third red on another test is not; a non-admin gets 404; a foreign Origin is refused; an empty test name is a 400.

Files: a new route module beside the checks routes, src/checks/queue.ts (the enqueue call only), a new test/checks-recheck.test.ts.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs