Skip to content

ci: add morning catch-up slots for delayed download checks - #94

Merged
inferjay merged 1 commit into
masterfrom
fix/download-schedule-catch-up
Oct 7, 2026
Merged

inferjay merged 1 commit into
masterfrom
fix/download-schedule-catch-up

Conversation

@inferjay

@inferjay inferjay commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

Daily 00:20 UTC checks have consistently arrived hours late. Add 02:20 and 04:20 UTC catch-up slots to the same workflow, retaining the original slot and all guarded update steps. This requests three daily checks (08:20/10:20/12:20 Asia/Shanghai), not a guaranteed execution deadline.

Evidence (2026-10-07 snapshot)

The latest 14 schedule runs all used 20 0 * * * across their four source commits. REST timestamps are UTC (Z); created_at equals run_started_at in every run. These timestamps expose run creation/start, not GitHub's internal cron enqueue time. Thus the multi-hour discrepancy is real, but its exact internal cause cannot be established from these fields.

Run UTC date created_at = run_started_at (UTC) Delay from 00:20 Conclusion
#6 2026-09-24 04:51:41 4h 31m 41s success
#7 2026-09-25 04:58:12 4h 38m 12s failure
#9 2026-09-26 04:58:42 4h 38m 42s success
#10 2026-09-27 05:19:05 4h 59m 5s success
#11 2026-09-28 05:24:44 5h 4m 44s success
#12 2026-09-29 05:44:32 5h 24m 32s success
#13 2026-09-30 05:33:08 5h 13m 8s success
#14 2026-10-01 05:54:43 5h 34m 43s success
#15 2026-10-02 05:37:51 5h 17m 51s failure
#16 2026-10-03 05:19:42 4h 59m 42s failure
#17 2026-10-04 05:53:38 5h 33m 38s success
#18 2026-10-05 05:40:59 5h 20m 59s success
#19 2026-10-06 06:21:26 6h 1m 26s success
#20 2026-10-07 06:00:25 5h 40m 25s success

Delay range: 4h31m41s–6h01m26s; mean approximately 5h13m. Runs #7/#15/#16 concluded failure; the same late-start pattern also exists in the 11 successful runs, so schedule lateness is independently observable. If upstream changes are available at the intended morning check, detection/review-PR creation can be postponed by this delay; run history alone does not prove a specific missed release. Published pages still require manual PR merge.

Scope and safety

  • Only the cron and explanatory comments change; no new workflow, credentials, dependencies, or state.
  • Keep fail-closed validation, allowlist, offline tests, exact existing permissions, pinned actions, workflow_dispatch, and global concurrency with cancel-in-progress=false.
  • All attempts use the existing automation/android-downloads branch and review-PR path. No automatic merge. Later checks are not gated on an earlier success, so new upstream releases remain detectable.
  • Cost: up to three full checks/day rather than one, including upstream reads and existing PR refresh behavior. The slots share GitHub's scheduler and are not independent guarantees.

Validation

Parsed before/after YAML and compared the full structures after replacing the schedule value: all other fields identical, including jobs, permissions, concurrency and workflow_dispatch. Expanded cron requests only 00:20, 02:20, 04:20 daily UTC. No parser/cross-validation changes or full release-content re-audit. Actual scheduling improvement must be observed after merge on the default branch; branch checks cannot validate schedule delivery.

Reliability limits / minimal alternative

GitHub schedule documentation explicitly permits delays and dropped runs. Extra slots provide additional best-effort opportunities, not a bounded maximum staleness or a promise of 08:20 completion. Observe earliest successful daily completion and all slot deliveries for 7–14 days after merge.

For an operational deadline, use an external reliable timer to invoke the existing workflow_dispatch on master, with a repository-scoped Actions-write credential, then monitor completion and retry/alert on failure or missed deadline. This avoids GitHub cron delivery but still depends on runner availability and upstream validation. Strict execution deadlines would require a controlled runner/service. No external scheduler is provisioned by this PR.

@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying androiddevtools with  Cloudflare Pages  Cloudflare Pages

Latest commit: 96be5e6
Status: ✅  Deploy successful!
Preview URL: https://e47cd857.androiddevtools.pages.dev
Branch Preview URL: https://fix-download-schedule-catch.androiddevtools.pages.dev

View logs

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-07T10:10:14.728728Z 96be5e6 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@inferjay
inferjay merged commit 9bf7593 into master Oct 7, 2026
1 check passed
@inferjay
inferjay deleted the fix/download-schedule-catch-up branch October 9, 2026 07:53
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