Watch
0
0
Fork
You've already forked hyperhive
0

review classifier: retry a review post for long enough to outlast a swarm-bao restart

The retries covered about a minute, and the swarm-bao restart that lost
#5286's review lasted 3m19s. Each try now gets its own forge deadline,
a try with no answer by then is retried like a refused connection, and
the waits are 5s, 15s, 45s, 90s and 150s: six tries over about five
minutes.

The docs also said to request the review again after a post-failed run.
That does nothing while the account's earlier request is still pending,
so they now say to remove the request and then request it again.
This commit is contained in:
atlas 2026-10-15 09:38:02 +02:00 • committed by mara
commit 9f0fb71fee
2 changed files with 140 additions and 25 deletions

View file

@ -85,11 +85,14 @@ as a reviewer on a PR starts a run:
review, on the commit it read.
When a post can't reach the secret store or the forge, because the
connection fails or times out, the controller tries it up to four times over
about a minute with the same verdict. It doesn't retry any other failure,
connection fails or a try gets no answer within two minutes, the controller
tries it up to six times over about five minutes, enough to outlast a
swarm-bao restart, with the same verdict. It doesn't retry any other failure,
such as the forge refusing the review. A post that still fails ends the run
as `post-failed`, and nothing appears on the PR; request the review again to
start a fresh run.
as `post-failed`, and nothing appears on the PR. The account's review
request is still pending then, and the forge sends no event for a request
that's already standing: remove the service account's review request, then
request it again to start a fresh run.
A verdict belongs to the commit it ran on. A push starts no run. Once the
PR's head moves, requesting the service account as a reviewer again starts a