Conversation
…ner workflows Both workflows have been failing consistently due to: - Daily Doc Updater: API rate limit exceeded during safe_outputs PR creation (too many workflows competing for installation token at 20:xx UTC) - CI Cleaner: Agent timing out (~47 min, near 45-min limit) Removing schedule triggers stops the wasted spend (~$25/month for doc updater alone). Both workflows remain available via workflow_dispatch for manual runs. Fixes #26015 Agent-Logs-Url: https://github.com/github/gh-aw/sessions/95204221-c84a-44c6-94a2-1ec14d998215 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/95204221-c84a-44c6-94a2-1ec14d998215 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
| on: | ||
| schedule: | ||
| # Every day at 6am UTC | ||
| - cron: daily |
There was a problem hiding this comment.
Restored the daily schedule moved to ~2am PST using cron: daily around 10:00 — compiles to 33 10 * * * (10:33 UTC). This avoids the 20:xx UTC rate limit contention window that was causing failures. See commit e4560f4.
…0:00 UTC) Per reviewer feedback, keep the doc updater on a daily schedule but move it to around 2am PST (10:00 UTC) to avoid the 20:xx UTC rate limit contention window. Agent-Logs-Url: https://github.com/github/gh-aw/sessions/08202d6b-4391-4c70-9ed8-f4f900981c85 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adjusts GitHub Actions schedules to reduce API rate-limit contention and disables an unreliable scheduled workflow while keeping manual triggering available.
Changes:
- Rescheduled Daily Documentation Updater to run “daily around 10:00 UTC” (~2am Pacific, depending on DST).
- Disabled the CI Cleaner scheduled trigger, leaving
workflow_dispatchfor manual runs. - Recompiled the corresponding
*.lock.ymlworkflow lockfiles.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/hourly-ci-cleaner.md |
Removes scheduled trigger and updates workflow description to indicate schedule is disabled. |
.github/workflows/hourly-ci-cleaner.lock.yml |
Regenerated compiled workflow reflecting schedule removal and description update. |
.github/workflows/daily-doc-updater.md |
Moves the friendly schedule to “daily around 10:00”. |
.github/workflows/daily-doc-updater.lock.yml |
Regenerated compiled workflow with the new scattered cron time (~10:33 UTC). |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 4/4 changed files
- Comments generated: 2
| schedule: | ||
| # Every day at 6am UTC | ||
| - cron: daily | ||
| # Every day around 2am PST (10:00 UTC) |
There was a problem hiding this comment.
This comment hard-codes 2am PST, but 10:00 UTC is only 2am during standard time (it’s 3am during daylight saving time). Consider rewording to 2am PT or just 10:00 UTC to avoid a seasonally incorrect note.
| # Every day around 2am PST (10:00 UTC) | |
| # Every day around 10:00 UTC |
| @@ -1,8 +1,6 @@ | |||
| --- | |||
| description: CI cleaner that fixes format, lint, and test issues when CI fails on main branch. Runs twice daily (6am, 6pm UTC) to optimize token spend. Includes early exit when CI is passing to prevent unnecessary token consumption. | |||
| description: CI cleaner that fixes format, lint, and test issues when CI fails on main branch. Schedule disabled (issue #26015); use workflow_dispatch to trigger manually. | |||
There was a problem hiding this comment.
The description: value contains #26015, but YAML treats # as the start of a comment when the scalar is unquoted. This causes the compiled .lock.yml to truncate the description at (... issue (see hourly-ci-cleaner.lock.yml). Quote the entire description string (or remove/escape the #) and re-run gh aw compile so the lock file is regenerated with the full description.
| description: CI cleaner that fixes format, lint, and test issues when CI fails on main branch. Schedule disabled (issue #26015); use workflow_dispatch to trigger manually. | |
| description: "CI cleaner that fixes format, lint, and test issues when CI fails on main branch. Schedule disabled (issue #26015); use workflow_dispatch to trigger manually." |
The Daily Documentation Updater had a high failure rate due to API rate limit contention, and the CI Cleaner has been failing consistently due to agent timeouts.
Root causes:
safe_outputsstep hits API rate limits — 6+ daily workflows all fire during the 20:xx UTC hour, exhausting the installation token quotaChanges:
daily-doc-updater.mdschedule fromcron: daily(scattered to14 20 * * *) tocron: daily around 10:00(scattered to33 10 * * */ ~2am PST) to avoid the 20:xx UTC rate limit contention windowscheduletrigger fromhourly-ci-cleaner.md(wascron: '15 6,18 * * *').lock.ymlfilesThe Daily Documentation Updater continues to run daily at ~2am PST. The CI Cleaner remains available via
workflow_dispatchfor manual runs until the agent timeout issues are addressed upstream.