Skip to content

ci: stop maintenance watch from counting stale registry runs - #172

Merged
moshest merged 1 commit into
mainfrom
claude/project-thread-2fl1cl
Sep 29, 2026
Merged

moshest merged 1 commit into
mainfrom
claude/project-thread-2fl1cl

Conversation

@moshest

@moshest moshest commented Sep 29, 2026

Copy link
Copy Markdown
Member

Before: the maintenance watch sometimes reported "2 of the last 7 scheduled runs failed" for the nightly registry update when all 7 had passed. It opened #171 on 2026-09-28 this way, and the same false alarm appeared around 2026-09-25.

After: the watch counts the 7 most recent scheduled runs and reports 0 failures today, matching the Actions history.

The runs?event=schedule&per_page=7 query intermittently returns a stale result. One of several identical requests came back with total_count 78 instead of 209, newest run 2026-09-08, and it included the 2026-07-31 and 2026-08-03 failures. That is exactly the "2 of 7, latest success" in #171, and its log line reads "2 of the last 7 scheduled registry runs failed (latest: success)". Unfiltered queries returned current data every time.

How: fetch runs?per_page=100 without the event filter, keep event == "schedule" in jq, sort by created_at, take the newest 7, and derive latest from that same list. No other section depends on run order. YAML parses, actionlint passes, and the new pipeline returns failed=0 latest=success against the live API.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UX3uvgjRrv9uYuZxKjNF4o


Generated by Claude Code

Issue #171 reported "2 of the last 7 scheduled runs failed" while the
actual last 7 scheduled registry-update runs (Sep 22-28) all succeeded.
The `runs?event=schedule&per_page=7` query intermittently serves a stale
result: one sampled response had total_count=78 (vs 209), newest run
2026-09-08, and included the 2026-08-03 and 2026-07-31 failures - exactly
the "2 failed, latest success" the watch reported. The page was
descending, so re-sorting alone would not fix it; the server-side event
filter is the unreliable part.

Fetch 100 unfiltered runs, select event=="schedule" client-side, sort by
created_at, and take the 7 newest; derive `latest` from the same list.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UX3uvgjRrv9uYuZxKjNF4o
@changeset-bot

changeset-bot Bot commented Sep 29, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 7e97053

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@moshest
moshest marked this pull request as ready for review September 29, 2026 07:51
@moshest
moshest merged commit 030918f into main Sep 29, 2026
4 checks passed
@moshest
moshest deleted the claude/project-thread-2fl1cl branch September 29, 2026 07:51
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.

2 participants