$ the-wire · showcase
Clawsweeper acknowledges PRs at webhook receipt, cuts first-feedback latency
By RepoJournal · Filed · About OpenClaw
Clawsweeper now acknowledges pull requests the moment their webhook arrives, closing a production gap where contributors waited minutes for any sign their PR was seen.
Clawsweeper shipped a cluster of fixes aimed at reducing first-feedback latency for newly opened pull requests [1][2]. The fast-ack previously ran only after a successful enqueue, so events taking the throttled-read or stale-head paths acknowledged nothing. Ack now posts immediately at webhook receipt. Additionally, the 90-second dispatch debounce no longer applies to an item's first-ever event, and the eyes reaction fires sooner. A newly opened PR used to get no visible reaction for 4 to 9 minutes; now the receipt ack should appear within seconds [1][2]. The target dispatcher also acknowledges pull request receipt, covering cases where the GitHub App does not deliver pull_request webhooks [3].
Production telemetry on 2026-08-08 showed the review lane oscillating with a ~45-minute period, with successful-review rate swinging 12 to 632/hr [4]. The fixed retry ladder made whole throttled cohorts eligible again simultaneously. Retry eligibility now gets jittered to break that herd oscillation [4]. Placeholder recovery also gets fixed: it restarted at GitHub Search page 1 every bounded window, so with large match sets (a run reported `checked=120 cleaned=0 matched=718`) later pages were never examined. Independent open/closed recovery offsets now persist, letting recovery resume where it left off [5].
In openclaw, the gateway now allows write-scoped session model changes [6]. Operators using the Control UI or another bounded client could not change the current session model with `operator.write`; the model picker was disabled with an administrator-access message because `sessions.patch { model }` was rejected before the session-only handler ran. The params-aware session policy now treats `model` as a write-scoped session mutation, so the picker works for write-scoped operators [6]. Also, a Windows port-availability fix reports indeterminate results honestly [7]. Windows users running daemon or full-status diagnostics could be told a port was free when Windows could not determine availability, reproduced with a TCP port from a Windows excluded range. Port probe and inspector now surface the explicit `free | busy | unknown` result, so diagnostics no longer misreport [7].
A docs-site CSS fix restores the Copy page split button [8]. The design-token migration applied `var(--oc-radius-control)` to all four corners of both segments, rendering two rounded pills instead of one composed control. The radius token now stays only on the primary segment's outer-left corners, bringing back a single split control with two independent targets [8].
Action items
- → If you operate clawsweeper, deploy the webhook-receipt ack and debounce fixes to cut contributor first-feedback latency from minutes to seconds openclaw/clawsweeper [plan]
- → Monitor review lane oscillation after deploying the retry jitter fix to confirm the ~45-minute herd period is gone openclaw/clawsweeper [monitor]
References
- [1] fix(review): acknowledge pull requests at webhook receipt ↗ openclaw/clawsweeper
- [2] fix(review): reduce first-feedback latency for newly opened PRs ↗ openclaw/clawsweeper
- [3] feat(dispatch): acknowledge pull request receipt from the target dispatcher ↗ openclaw/clawsweeper
- [4] fix(review): jitter throttled retry eligibility to break herd oscillation ↗ openclaw/clawsweeper
- [5] fix(recovery): rotate placeholder discovery cursors ↗ openclaw/clawsweeper
- [6] fix(gateway): allow write-scoped session model changes ↗ openclaw/openclaw
- [7] fix: report indeterminate port availability on Windows ↗ openclaw/openclaw
- [8] fix(docs-site): restore the Copy page split button ↗ openclaw/docs