Skip to content

Stop the release cron waking main every few hours - #113

Merged
ssavutu merged 1 commit into
mainfrom
fix/scheduled-merge-cron-noise
Sep 12, 2026
Merged

ssavutu merged 1 commit into
mainfrom
fix/scheduled-merge-cron-noise

Conversation

@ssavutu

@ssavutu ssavutu commented Sep 12, 2026

Copy link
Copy Markdown
Member

#github has been getting a pair of "[Scalene] merge success on main" /
"checks success on main" messages every few hours since #110 landed. Nothing
was merging: main hasn't moved since #112 on 2026-09-11, and every one of
those runs ends with No open pull requests carry the "scheduled-merge" label.
The alarming wording is Discord rendering the workflow's merge job — a
check run — and scheduled runs attach to main's head SHA, so each empty tick
posts two check notifications on the default branch.

The schedule: trigger goes rather than dropping to an hourly cron, because
it was not doing the job it was kept for. Measured on this repository over 577
minutes, */10 delivered 2 of 58 expected runs with the first 4h48m late — a
00:10 release would have merged near 04:00. What actually fires this workflow
is the systemd timer on Delta (roles/release_scheduler, triangle-infrastructure
#3), which polls once a minute and dispatches it; the merge rules all still live
here and apply to every run.

This depends on triangle-infrastructure#3 being merged and the timer
deployed.
Until then, a scheduled release needs a manual dispatch of this
workflow — worth landing that one first, or together with this.

The rest is documentation catching up: the README's "wakes every ten minutes"
and "Timing accuracy" section now describe the timer, and say not to put the
cron back.

Verified scheduled-merge.yml still parses as YAML and that the only trigger
left is workflow_dispatch with its pr / dry_run inputs.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VT3WmtV3qBRxmTKN8ABMyQ

The `*/10` schedule on scheduled-merge.yml had nothing to merge and still
posted two check notifications on `main` per tick -- "merge success on main"
is Discord rendering the `merge` job, not a merge -- which over a day is most
of what the #github channel said.

It was never a working scheduler either: measured here over 577 minutes it
delivered 2 of 58 expected runs, the first 4h48m late. The Delta systemd timer
(roles/release_scheduler) is what fires this workflow now, so the trigger goes
rather than shrinking to an hourly cron that would be both quieter and no more
dependable. A run now means there is a labelled pull request to consider.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VT3WmtV3qBRxmTKN8ABMyQ
@ssavutu
ssavutu merged commit 575bed0 into main Sep 12, 2026
1 check passed
@ssavutu
ssavutu deleted the fix/scheduled-merge-cron-noise branch September 12, 2026 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant