What to build
org-project-sweep.yml is now the only thing boarding issues and pull requests from the private repos — their per-repo shims were removed in #33 once the sweep was proven working. The sweep itself is verified: dispatched manually it boarded 174 items across 30 repos with zero failures.
Its schedule has not been observed to fire. The workflow landed on main at roughly 18:47Z on 2026-08-29 and is registered active with cron: '*/15 * * * *', but 40 minutes later every run in its history is still the manual dispatch. The 19:00 and 19:15 slots both passed with nothing.
This may well be nothing — GitHub takes an unspecified amount of time to begin running a newly added schedule, and */15 is the tier most aggressively delayed or dropped under load. But it is currently an assumption, and the thing it is an assumption about is whether issues reach the board at all.
Confirm the schedule actually fires, and decide what to do if it turns out */15 is unreliable here.
The failure mode is delay, not loss. The sweep is idempotent and boards everything open each time it runs, so a missed tick is caught by the next one. Nothing is dropped permanently — items simply arrive late, and if the cron never fires they never arrive at all until someone dispatches it by hand.
If */15 proves unreliable, a slower cadence is likely to be more reliable rather than less; GitHub deprioritises the high-frequency tiers first. Boarding does not actually need 15-minute latency.
Worth watching alongside this: org-hygiene-sweep.yml runs 25 */6 * * * and has the same open question, though its first slot is further out.
Acceptance criteria
Blocked by
- None — can start immediately, but it is mostly waiting and observing.
What to build
org-project-sweep.ymlis now the only thing boarding issues and pull requests from the private repos — their per-repo shims were removed in #33 once the sweep was proven working. The sweep itself is verified: dispatched manually it boarded 174 items across 30 repos with zero failures.Its schedule has not been observed to fire. The workflow landed on
mainat roughly 18:47Z on 2026-08-29 and is registeredactivewithcron: '*/15 * * * *', but 40 minutes later every run in its history is still the manual dispatch. The 19:00 and 19:15 slots both passed with nothing.This may well be nothing — GitHub takes an unspecified amount of time to begin running a newly added schedule, and
*/15is the tier most aggressively delayed or dropped under load. But it is currently an assumption, and the thing it is an assumption about is whether issues reach the board at all.Confirm the schedule actually fires, and decide what to do if it turns out
*/15is unreliable here.The failure mode is delay, not loss. The sweep is idempotent and boards everything open each time it runs, so a missed tick is caught by the next one. Nothing is dropped permanently — items simply arrive late, and if the cron never fires they never arrive at all until someone dispatches it by hand.
If
*/15proves unreliable, a slower cadence is likely to be more reliable rather than less; GitHub deprioritises the high-frequency tiers first. Boarding does not actually need 15-minute latency.Worth watching alongside this:
org-hygiene-sweep.ymlruns25 */6 * * *and has the same open question, though its first slot is further out.Acceptance criteria
schedule-triggered run of the project sweep is observed to have completed successfully*/15, a cadence that does fire dependably is chosen and the reasoning recordedBlocked by