Skip to content

Add make deploy, the gated install-and-relaunch chain - #141

Merged
Rydersel merged 1 commit into
mainfrom
chore/make-deploy
Oct 2, 2026
Merged

Rydersel merged 1 commit into
mainfrom
chore/make-deploy

Conversation

@Rydersel

@Rydersel Rydersel commented Oct 2, 2026

Copy link
Copy Markdown
Owner

make deploy chains the Release build, the debug-marker gate, the signing check, quitting the running copy, the Finder delete of the installed bundle, the copy, a second signing check on the installed copy, and the relaunch, with each step asserting the state it achieved. It refuses before quitting anything when the installed bundle is newer than the product (someone else deployed) or when a copy is running from a path that is neither the product nor the installed bundle (likely a measurement in progress). DEST overrides the destination.

Contributors without the signing script stop at markers, which the new Makefile test pins: the gate runs, the deploy refuses, nothing is installed.

Hardware verification

  • Deployed the current main Release product to Applications twice with the script: the first run replaced the installed 1.0.4 bundle through the Finder delete and copied, the second replaced the script's own install (same product mtime, so the ownership check passed) and relaunched; both ended with the installed copy running from Applications as the only Candela process.
  • Grant held across the deploy: a posted brightness key pair with the pointer on the external display produced two DDC writes from the installed copy's pid.
  • Makefile tests: 13 of 13 pass.

Release build, marker gate, signing check, quit, Finder delete, copy, signing
check on the installed copy, relaunch, each step asserting its achieved state.
Refuses before quitting anything when the installed bundle is newer than the
product or when a copy is running from a third path.
@Rydersel
Rydersel merged commit e4fa2a5 into main Oct 2, 2026
8 checks passed
@Rydersel
Rydersel deleted the chore/make-deploy branch October 2, 2026 19:46
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.

1 participant