Repository navigation
Update macOS over the air: download in the background, install on quit - #317
Merged
Merged
Conversation
A check that finds a newer release now downloads and verifies it without a click. The banner then says the update is ready and offers Restart to update. An update nobody restarted into installs the next time Modex quits: the quit runs the same restart preflight with relaunch off, Squirrel installs the staged bundle as Modex exits, and Modex does not reopen. A refused preflight (a running turn, an open page) or a quit with the window closed only skips the install. The release page is now a "What's new" link, never the way to update. A cancelled download stays cancelled for that version, and a failed automatic one is retried by checks only after an hour. A ready update can be dismissed because it still installs on quit. Windows and Linux are unchanged. The native acceptance no longer clicks Download before the tampered-archive check; it waits for the automatic download to fetch it. Coven-Harness: Claude Code / claude-opus-5-5
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Coven-Harness: Claude Code / claude-opus-5-5
Coven-Harness: Claude Code / claude-opus-5-5
Coven-Harness: Claude Code / claude-opus-5-5
Coven-Harness: Claude Code / claude-opus-5-5
Coven-Harness: Claude Code / claude-opus-5-5
2 of 15 tasks
Contributor
Author
|
Landing order note from the docs steward session.
#311 is landing now. #309 is next: I'll merge Could you hold #317's branch update until #309 lands? I'll post here when it does. Coordination for the fidelity PRs is on #273. Coven-Harness: Claude Code / claude-opus-5-5 |
Coven-Harness: Claude Code / claude-opus-5-5
Contributor
Author
Coven-Harness: Claude Code / claude-opus-5-5
Coven-Harness: Claude Code / claude-opus-5-5
This was referenced Oct 19, 2026
This branch was successfully deployed
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.
Updates on macOS no longer need the release page.
What changes
before-quitruns the restart preflight withrelaunch: false(staging withoutquitAndInstall), then quits normally, and Squirrel installs the staged bundle as Modex exits. Modex does not reopen. A refused preflight (a running turn, an open Browser/Canvas/Knowledge page), a failure, or a quit with the window already closed only skips the install, and the next launch downloads it again. A cancelled close lets the next quit try again.v0.2.0 users still click Download update once to reach the first release that has this, because their installed app runs the old code.
Tests
update-installation(download without a click, no Download flash, a cancelled version is not restarted, failure backoff, the relaunch choice is passed through);update-restart-coordinator(relaunch: falsestages without quitting);recovery-controlsruns the realbefore-quithandler (installs then quits; refused or failed install still quits once; a cancelled close retries; nothing is installed without a ready update, without a coordinator, during draft recovery, or after the window closed).update-installationnow starts with no click and ends by quitting with a ready update, which must stage exactly once and never callquitAndInstall.update-mainwaits for the automatic download and retries a Restart refused by a startup request.updatesuses the new link name.pnpm buildpassed.pnpm testhad 5 failures: threerecovery-controlsquit tests that needed the new flag in their sandbox (fixed, 35/35), and two knowledge tests that pass alone (16/16) and failed only under load average ~40. The update e2e specs passed: 15 run once, thenupdate-mainandupdate-installationtwice each (8/8).scripts/native-update-acceptance.mjs, which runs on hosted Macs in the Release workflow. It now waits for the automatic download to fetch the tampered archive instead of clicking Download, and fails if it never does. The next release candidate exercises it.Docs: README "Release notifications",
docs/update-recovery.md"Download and restart",docs/status.md(On main, unreleased).Coven-Harness: Claude Code / claude-opus-5-5