Summary
Add an app upgrade flow that monitors for newly published releases and gives users a convenient way to update the Electron app.
Goals
- Detect when a newer app release is available.
- Notify the user without interrupting active work.
- Provide a clear, low-friction upgrade action from inside the app.
- Preserve useful error context when update checks or downloads fail.
Suggested approach
- Use the app version from package.json / Electron runtime as the installed version.
- Check GitHub Releases for germanescobar/coding-orchestrator on startup and periodically while the app is running.
- Compare the latest release version with the installed version.
- Surface update availability in the UI, likely in settings and/or a subtle app-level notification.
- For macOS, decide whether the first implementation should:
- open the release download page in the browser, or
- support a fuller auto-update flow using an Electron updater package.
Acceptance criteria
- The app can determine the currently installed version.
- The app can check for the latest available release.
- If a newer release exists, the user is offered a visible upgrade action.
- If the app is already current, update checks report that cleanly.
- Network/API failures are handled deliberately and do not crash the app.
- The behavior is covered by focused tests for version comparison and update-check result handling.
Notes
For the initial Mac-only build, a simple "new version available" prompt that opens the release page may be enough. A later iteration can add automatic download/install if we want a native updater experience.
Summary
Add an app upgrade flow that monitors for newly published releases and gives users a convenient way to update the Electron app.
Goals
Suggested approach
Acceptance criteria
Notes
For the initial Mac-only build, a simple "new version available" prompt that opens the release page may be enough. A later iteration can add automatic download/install if we want a native updater experience.