perf(change): make the open-change poll a backstop, not the pacing #2004

Merged
sean merged 2 commits from feat/webhook-review-events into trunk 2026-08-07 17:09:40 +00:00
Owner

W1. providerOpenPollInterval 30s -> 5m.

The planned widening was unnecessary: the live hook already stores Forgejos umbrella expansion including pull_request_review_approved/_rejected/_comment/_sync. Provisioner untouched.

Phase M priced the old value: 117/630 changeprovider wakes were the timer (18.6%) vs 0% for both submitters.

Cannot go to zero — Forgejo does not retry failed deliveries, so this requeue is the only recovery from a bus outage.

W1. providerOpenPollInterval 30s -> 5m. The planned widening was unnecessary: the live hook already stores Forgejos umbrella expansion including pull_request_review_approved/_rejected/_comment/_sync. Provisioner untouched. Phase M priced the old value: 117/630 changeprovider wakes were the timer (18.6%) vs 0% for both submitters. Cannot go to zero — Forgejo does not retry failed deliveries, so this requeue is the only recovery from a bus outage.
perf(change): make the open-change poll a backstop, not the pacing
All checks were successful
pipeline/ci CI green @ 244195c6fb3b
244195c6fb
W1 of RELEASE-TRAIN-AND-EVENT-TRIGGERS.md. providerOpenPollInterval goes from
30s to 5m.

The widening this phase planned turned out to be unnecessary: Forgejo already
delivers reviews. The provisioner registers ["create","pull_request","push"],
and the live hook stores the umbrella expansion -- pull_request_review_approved,
_rejected, _comment and _sync are all present. Adding "pull_request_review"
would have changed nothing, so the provisioner is untouched.

Phase M priced the old value before this changed it: 117 of 630 changeprovider
wakes were the timer, an 18.6% share, against 0% for both submitters. Each fire
re-read Forgejo three times for a change that had not moved.

It cannot go to zero. Forgejo does not retry a failed delivery, so a bus outage
loses the event permanently and this requeue is the only recovery. The comment
now says that is its whole remaining job.

The one test that references the interval uses the symbol, not the number, so it
survives unchanged.
sean left a comment

W1 drill: does a review event reach the change-event Sensor?

W1 drill: does a review event reach the change-event Sensor?
docs(change): record the review drill that proved the event path
All checks were successful
pipeline/ci CI green @ dd129c019efd
dd129c019e
A review on pull request 2004 moved the change-event nudge annotation inside
five seconds, and the hint ConfigMap was already consumed. Delivery, Sensor
filter, hint and nudge all work today with no code change -- which is what
demoting the poll to a backstop depends on.
sean merged commit dd129c019e into trunk 2026-08-07 17:09:40 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
sean/pipelines!2004
No description provided.