Confirm the tag reached the mirror instead of assuming the sync worked #11

Merged
Cody Bryant merged 1 commit from fix/verify-the-mirror-actually-synced into main 2026-08-29 11:28:26 -07:00
Owner

dreame rc.41 failed its publish at "tag never appeared on GitHub": the push-mirror had errored with context deadline exceeded and Forgejo does not retry, so the job waiting for the tag timed out ten minutes later, far from the cause.

push_mirrors-sync answers 403 to the repo-scoped token the release uses, which is why the call has always been best-effort — so a retry keyed on its result would never run. What is checkable without extra scope is the OUTCOME: the GitHub mirror is public, so an unauthenticated ref lookup says whether the tag arrived.

One bounded POST, then read-only polling, three-state: arrived / definitively absent / unknown. A check that cannot answer reports unknown rather than claiming failure. Still warn-only — a release whose refs already fanned out must not be failed by a mirror.

Also: ci.yml named one test file explicitly, so tests/*.sh added later never ran. It now discovers them.

dreame rc.41 failed its publish at "tag never appeared on GitHub": the push-mirror had errored with context deadline exceeded and Forgejo does not retry, so the job waiting for the tag timed out ten minutes later, far from the cause. push_mirrors-sync answers 403 to the repo-scoped token the release uses, which is why the call has always been best-effort — so a retry keyed on its result would never run. What is checkable without extra scope is the OUTCOME: the GitHub mirror is public, so an unauthenticated ref lookup says whether the tag arrived. One bounded POST, then read-only polling, three-state: arrived / definitively absent / unknown. A check that cannot answer reports unknown rather than claiming failure. Still warn-only — a release whose refs already fanned out must not be failed by a mirror. Also: ci.yml named one test file explicitly, so tests/*.sh added later never ran. It now discovers them.
docs(variance): record why only the MAC half of the privacy guard converges
Some checks failed
CI / Lint and test the standard's own code (pull_request) Successful in 22s
CI / Shell scripts (pull_request) Failing after 5s
CI / The standard can actually be vendored (pull_request) Successful in 14s
df7c25f25e
fix(release): confirm the tag reached the mirror instead of assuming the sync worked
Some checks failed
CI / Shell scripts (pull_request) Failing after 4s
CI / The standard can actually be vendored (pull_request) Successful in 15s
CI / Lint and test the standard's own code (pull_request) Successful in 20s
d381d88898
Cody Bryant force-pushed fix/verify-the-mirror-actually-synced from d381d88898
Some checks failed
CI / Shell scripts (pull_request) Failing after 4s
CI / The standard can actually be vendored (pull_request) Successful in 15s
CI / Lint and test the standard's own code (pull_request) Successful in 20s
to 84a7d113b5
All checks were successful
CI / Shell scripts (pull_request) Successful in 4s
CI / Lint and test the standard's own code (pull_request) Successful in 21s
CI / The standard can actually be vendored (pull_request) Successful in 14s
2026-08-29 11:23:35 -07:00
Compare
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
SisyphusMD/project-standard!11
No description provided.