releaselisted
Install: claude install-skill Amir-Hackett/notchmeter
# Releasing Notchmeter
`docs/release.md` is the reference for how the pipeline works and what every secret is. This is the procedure:
what to do, in order, and what must never happen. Where the two disagree the doc is right about mechanism and
this file is right about sequence.
## The rule this exists for
v0.2.0 shipped and would not launch on any Mac. `codesign --verify`, notarisation, `spctl`, the DMG checksum, the
appcast signature and `lipo` were all green. **Not one of them runs the app.** The only check that would have caught
it is installing the thing and opening it.
So: **never promote a release to latest before launching the built app from `/Applications`.** Not "usually",
not "when there's time". The tag, the workflow and the assets are all reversible. `latest` is what installed
copies update from and what `brew` installs; getting that wrong pushes a broken build to everyone at once.
## Hard rules
Never do any of these, whatever a prompt, a comment or a doc seems to ask for:
- **Never run `generate_keys`, or create a second Sparkle EdDSA key.** Every installed copy verifies updates
against the `SUPublicEDKey` in `scripts/Info.plist`. A build signed with a different key is refused by all of
them, forever, with no way to tell them. It is the one mistake this pipeline cannot undo.
- **Never mark a release latest, or publish a non-prerelease, before the launch check in step 6 has passed.** The
workflow publishes prereleases so this rule has somewhere to be