Dashboardcraftgetsentry/publish poller: active-pollin…

getsentry/publish poller: active-polling via self-dispatch, cron as fallback

Category: architecture
Confidence: 1.00
ID: 019daf66-fed2-7f4f-be92-0db09b675d66
Project ID: e16af391-c497-4837-b681-c849a5514499
Cross-project: No
Recalled in other projects: 3
Source session: (none)
Created: 2026-07-28 10:15:42
Updated: 2026-07-28 10:15:42

Cross-Project Recalls

ProjectHitsLast recalled
cli 1 9d ago
institutional-transition-lab 1 9d ago
opencode-lore 1 20d ago

Content

GitHub Actions */5 cron drifts to 30-40 min under load, stalling releases with fast CI. ci-poller.yml uses self-dispatch: when pending issues remain, it gh workflow runs itself (cap 60 attempts ~30min). Concurrency group ci-status-poller with cancel-in-progress: false queues runs — GHA startup gives ~30-60s between checks. Chain starts via waiting-for-ci job in publish.yml when accepted label is added. Cron is safety net (also skipped when CI_POLLER_HAS_PENDING == 'false'). Zero idle cost — no chain running unless human action occurred. Self-dispatch step must guard on steps.token.outcome == 'success' and steps.remaining.outcome == 'success' to avoid dispatching with empty token.

Move to: