Skip to content

release: retry stapler when Apple's ticket service drops the connection - #464

Merged
BunsDev merged 1 commit into
mainfrom
fix/stapler-retry
Oct 14, 2026
Merged

BunsDev merged 1 commit into
mainfrom
fix/stapler-retry

Conversation

@BunsDev

@BunsDev BunsDev commented Oct 14, 2026

Copy link
Copy Markdown
Member

What

Wraps xcrun stapler staple and xcrun stapler validate in a five-attempt retry (20 s apart) in both macOS steps of release.yml: Notarize and staple the disk images and Smoke-test artifacts. The smoke step's error now names the second possibility ("or Apple's ticket service could not be reached").

Why

Three macos-15-intel jobs failed today after notarization was Accepted and the image stapled, each on NSURLErrorDomain -1005 "The network connection was lost" against api.apple-cloudkit.com:

  • dry run 38618576054 attempt 2: smoke step stapler validate
  • v0.0.5 release run 38631627111: notarize step stapler staple (the tag run; its re-run is in progress)

stapler exits 68 for a dropped connection as well as for a missing ticket, so the step reported "no stapled notarization ticket" for an image that had one. A real rejection still fails all five attempts.

Proof

vitest run src/release-workflow.test.ts: 13 passed (the test now requires the retry in both steps and forbids a bare xcrun stapler validate in the smoke step). actionlint: nothing new. The step scripts stay bash 3.2 compatible (no arrays or local -n; local attempt only).

If the re-run of 38631627111 fails the same way, this lands first and v0.0.5 is published by dispatching release.yml from main with tag=v0.0.5, dry_run=false, which runs main's workflow against the tagged tree (docs/releasing.md, the v0.0.2 precedent).

Closes #461

Three macos-15-intel jobs failed on 2026-10-14 after notarization was
Accepted and the image stapled: twice `xcrun stapler validate` in the
smoke step, once `stapler staple` in the notarize step, each with
NSURLErrorDomain -1005 "The network connection was lost" against
api.apple-cloudkit.com. stapler exits 68 for that as well as for a
missing ticket, so the step read a network blip as "no stapled ticket"
and failed a release build whose image was fine (#461). The v0.0.5 tag
run 38631627111 hit it in the staple step.

Both steps now call stapler through a small retry (five attempts, 20 s
apart); a genuine rejection still fails every attempt. The smoke error
names the second possibility.

Closes #461

Coven-Harness: Claude Code / claude-fable-5-1
@BunsDev
BunsDev merged commit a9b8ebd into main Oct 14, 2026
10 checks passed
@BunsDev
BunsDev deleted the fix/stapler-retry branch October 14, 2026 20:56
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.

release.yml: macOS smoke step's stapler validate fails on a network blip after a successful staple

1 participant