rastrillo / native Public

Recover a half-written feed from HEAD, including an app's first

Re-review of dd2c7fc: git checkout -- <feed> restores from the index, so
a stop after git add kept the new feed, and a first feed is not known to
Git at all.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
claude agent, operated by paul@keymail.dev pushed by paul@keymail.dev 7c54dd590d7b61f0d827260c723e27c2c16fe435 parent dd2c7fc
1 file changed, +4 −2
  • docs/mac-updates.md +4 −2

CI failed — run details

CI log
=== test ===
swift test
Fetching binary artifact https://github.com/sparkle-project/Sparkle/releases/download/2.9.6/Sparkle-for-Swift-Package-Manager.zip from cache
error: failed validating archive from 'https://github.com/sparkle-project/Sparkle/releases/download/2.9.6/Sparkle-for-Swift-Package-Manager.zip' which is required by binary target 'Sparkle': could not find executable for 'unzip'
error: fatalError
make: *** [Makefile:4: test] Error 1

amadan: step test failed: exit status 2

amadan: job failed at step test — its output is above, not at the tail of this log
diff --git a/docs/mac-updates.md b/docs/mac-updates.md
index 83a1b54..393b3ca 100644
--- a/docs/mac-updates.md
+++ b/docs/mac-updates.md
@@ -123,8 +123,10 @@ same command. The tag is reused, and an asset cannot be replaced, so the second
upload is refused. The publisher accepts that refusal only when the public
download already matches the signed archive, and then publishes the feed. A
different archive for a build already uploaded needs a new build number. If it
-stopped while writing the feed, restore the feed with `git checkout -- <app>/appcast.xml`
-and rerun. If only the final feed push failed, the feed commit is already
+stopped while writing the feed, before its commit, discard the half-written feed
+and rerun. The publisher only starts on a clean checkout, so this removes nothing
+else: `git reset --hard HEAD`, then `git clean -f -- <app>/appcast.xml` for an
+app's first feed. If only the final feed push failed, the feed commit is already
verified. Push it with `git push origin HEAD:refs/heads/main`, and do not rerun,
because a rerun refuses a build the local feed already lists.