Auto-publish the DMG to Releases on merge to main + prominent README download link - #19
Merged
Merged
Conversation
…ad link Releases never appeared: release-macos-dmg.yml only fired on a v* tag push (blocked from the Claude Code session's git proxy) or a manual UI publish, so the Release area stayed empty and releases/latest/download/LaughCounter.dmg 404'd. - release-macos-dmg.yml now also runs on push to main (mac/** paths): it derives v<version> from Info.plist and creates/updates that GitHub Release with the DMG via GITHUB_TOKEN (which can tag/release from Actions, unlike the session). The release: published and workflow_dispatch triggers remain. - build-macos-dmg.yml excludes main now (release-macos-dmg owns main) to avoid a duplicate build. - Root README gets a prominent top-of-file download line (latest DMG + all releases); mac/README documents the auto-publish-on-merge flow. Closes #18 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ATTAHuLKSR8K7ZFawgbncJ
missingbulb
added a commit
that referenced
this pull request
Jul 14, 2026
The two release-automation gotchas learned wiring release-macos-dmg.yml were only recorded in commit messages (#13, #19) and the workflow YAML comments, so a future session touching the release flow wouldn't be pointed at them. Re-home them into a local instruction doc reachable from CLAUDE.md: - A Claude Code web session's git proxy can't push v* tags, so a tag-triggered release never fires from a session — trigger on push-to-main instead (#18/#19). - A UI-published Release doesn't emit push: tags — add release: published so a hand-published Release still builds/attaches the DMG (#11/#13). Creates the dev/procedures/ instruction-doc scaffold (none existed) and imports it from the root CLAUDE.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018DKJNecs661QFXT5YZEeTn
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the empty Releases area and the 404ing latest-download link.
Why it was broken:
release-macos-dmg.ymlonly fired on av*tag push (blocked from the Claude Code session's git proxy, 403) or a manual UI publish — so no release ever got created.Fix:
release-macos-dmg.ymlnow also runs on push tomain(mac/**paths): it derivesv<version>fromInfo.plistand creates/updates that GitHub Release withLaughCounter.dmgattached, viaGITHUB_TOKEN(which can tag/release from Actions).release: published+workflow_dispatchtriggers remain. A release made withGITHUB_TOKENdoesn't re-fire thereleaseevent, so no loop.build-macos-dmg.ymlnow excludesmain(the release workflow owns it) to avoid a duplicate build.mac/READMEdocuments the auto-publish-on-merge flow.Once this merges, the push to
mainwill publish the v0.2.1 release automatically and the latest-download link will resolve.Closes #18
🤖 Generated with Claude Code
Generated by Claude Code