Skip to content

Desktop: detect and surface a failed auto-update install. When a…#227

Merged
inkeep-oss-sync[bot] merged 1 commit into
mainfrom
copybara/sync
Jun 22, 2026
Merged

Desktop: detect and surface a failed auto-update install. When a…#227
inkeep-oss-sync[bot] merged 1 commit into
mainfrom
copybara/sync

Conversation

@inkeep-oss-sync

Copy link
Copy Markdown
Contributor

Desktop: detect and surface a failed auto-update install. When a "Relaunch now" (or quit-to-install) update is committed but the app boots back on the old version — e.g. macOS Squirrel's post-quit install never ran — the next launch now shows a clear "Update to vX didn't install" notice with Retry and Download manually actions, instead of failing silently. Previously this clean-quit failure left no signal: the in-session error and no-quit watchdog only fire while the process is alive, and the pending-install record was cleared before quit. Detection uses a prerelease-aware version compare so same-version beta bumps (e.g. beta.1 → beta.3) are no longer misread as a successful install.

… (PRD-7149) (#2010)

* fix(open-knowledge): surface failed auto-update installs at next boot (PRD-7149)

A user-committed update (Relaunch now, or quit-to-install via autoInstallOnAppQuit)
that fails after the app cleanly quits — e.g. macOS Squirrel's post-quit ShipIt
never runs — left no signal: the in-session error path and the no-quit watchdog
only fire while the process is alive, and the pending-install record was cleared
before quit. The app booted back on the old version silently.

Add a persisted attemptedInstall record set at update-downloaded (it survives the
relaunch-now clear of versionPendingInstall). At boot, a prerelease-aware compare
decides success vs failure; on failure the renderer shows a richer 'Update to vX
didn't install' notice with Retry and Download manually. The record stays armed
until the install actually takes, so a persistently-failing install keeps
re-surfacing instead of going silent after one Retry.

* test(open-knowledge): address review — pin installReached branches + success-branch persist failure (PRD-7149)

- Add 3 installReached tests: non-numeric ASCII order, numeric-ranks-below-non-numeric
  (semver 11.4.3), and the length tie-break — the comparator the feature pivots on.
- Add a symmetric success-branch persist-failure test (attemptedInstall stays armed,
  no dispatch) mirroring the failure-branch one.
- Log version context when the success-branch reconcile persist fails, matching the
  failure branch's diagnostic.
- Capture + log the Retry-rejection reason renderer-side instead of dropping it
  silently (re-arm behavior kept: the two-action card is already the error surface).

GitOrigin-RevId: a68c5a4d70cceee0b1334e957aee65316d94e89a

@inkeep-internal-ci inkeep-internal-ci Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated approval from agents-private public-mirror-sync (run: https://github.com/inkeep/agents-private/actions/runs/27986725743). Source of truth is the monorepo; direct edits on inkeep/open-knowledge are overwritten on next sync.

@inkeep-oss-sync inkeep-oss-sync Bot merged commit cdc0bd5 into main Jun 22, 2026
1 check passed
@inkeep-oss-sync inkeep-oss-sync Bot deleted the copybara/sync branch June 22, 2026 21:58
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