Skip to content

Fix update restart card release notes#688

Merged
arul28 merged 2 commits into
mainfrom
ade/update-card-951a9d13
Jul 2, 2026
Merged

Fix update restart card release notes#688
arul28 merged 2 commits into
mainfrom
ade/update-card-951a9d13

Conversation

@arul28

@arul28 arul28 commented Jul 2, 2026

Copy link
Copy Markdown
Owner

Summary

Describe the change.

What Changed

Key files and behaviors.

Validation

How you tested.

Risks

Anything to watch.

ADE   Open in ADE  ·  ade/update-card-951a9d13 branch  ·  PR #688

Summary by CodeRabbit

  • New Features

    • Improved the update-complete screen with a refreshed “up to date” card, including a clearer status message, version badge, and release notes link display.
    • Release notes links now point to the documentation changelog path and show a cleaner, shortened URL in the interface.
  • Bug Fixes

    • Updated update-state handling so release notes links are generated more consistently after installation or relaunch.
    • Improved the installed-update dialog animation and reduced-motion behavior for smoother accessibility support.

Greptile Summary

This PR updates the auto-update release notes path and refreshes the installed-update dialog. The main changes are:

  • Release notes links now use the docs changelog route.
  • Recently installed update state now rebuilds the URL from the running version after restart.
  • The post-update dialog now shows an up-to-date card with the installed version and shortened release-notes URL.
  • Tests were updated for the new changelog URL behavior.

Confidence Score: 5/5

Safe to merge with minimal risk.

The changes are narrow and covered by matching test updates. No blocking correctness or security issues were identified.

No files require special attention.

T-Rex T-Rex Logs

What T-Rex did

  • Ran the trex-artifacts/update-installed-card-capture.mjs harness to exercise the update-installed-card flow, and observed the before and after runtime failures that prevent the refreshed card from appearing.
  • Reviewed changelog URL handling around a version update, confirming the before state used the base URL and staging for v1.2.11 and that the after state persisted the docs URL and rebuilt release notes for the installed version.
  • Observed the repository access status checks flow, noting the before behavior included a short retry window with multiple forced status checks, and the after behavior showed a single forced status check after device authentication with no retry window.

View all artifacts

T-Rex Ran code and verified through T-Rex

Important Files Changed

Filename Overview
apps/desktop/src/main/services/updates/autoUpdateService.test.ts Updates release-notes URL expectations and adds direct coverage for the docs changelog URL builder.
apps/desktop/src/main/services/updates/autoUpdateService.ts Changes release-note links to the docs changelog route and regenerates recently-installed URLs from the actual running version.
apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx Refreshes the post-update dialog UI with installed-version display, shortened release-notes text, and unchanged external-link behavior.
apps/desktop/src/renderer/index.css Adds the installed-update card animation and includes it in reduced-motion animation suppression.

Sequence Diagram

%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
  participant Updater as AutoUpdateService
  participant State as Global state
  participant Renderer as AutoUpdateControl
  participant Browser as External browser

  Updater->>Updater: buildReleaseNotesUrl(version)
  Updater->>State: persist pendingInstallUpdate
  Updater->>State: reconcile after restart
  Updater-->>Renderer: snapshot.recentlyInstalled
  Renderer->>Renderer: show installed-update card
  Renderer->>Browser: openExternal(releaseNotesUrl)
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
  participant Updater as AutoUpdateService
  participant State as Global state
  participant Renderer as AutoUpdateControl
  participant Browser as External browser

  Updater->>Updater: buildReleaseNotesUrl(version)
  Updater->>State: persist pendingInstallUpdate
  Updater->>State: reconcile after restart
  Updater-->>Renderer: snapshot.recentlyInstalled
  Renderer->>Renderer: show installed-update card
  Renderer->>Browser: openExternal(releaseNotesUrl)
Loading

Comments Outside Diff (1)

  1. General comment

    P1 AutoUpdateControl imports a non-existent Phosphor icon, preventing the update dialog from rendering

    • Bug
      • The changed renderer surface cannot render in the real Vite/Chromium pipeline because AutoUpdateControl.tsx imports ArrowsClockwise from @phosphor-icons/react, but the installed package does not export that symbol. The browser aborts module evaluation with does not provide an export named 'ArrowsClockwise', so the installed-update dialog never appears and none of the claimed refreshed card UI can be verified or delivered.
    • Cause
      • Line 3 of apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx imports ArrowsClockwise; the installed @phosphor-icons/react package exposes ArrowClockwise instead.
    • Fix
      • Replace the invalid import and usages with the exported icon name, e.g. import { ArrowClockwise, ArrowSquareOut, CheckCircle, X } from '@phosphor-icons/react'; and render <ArrowClockwise ... />, or upgrade/pin the icon package to a version that actually exports ArrowsClockwise.

    T-Rex Ran code and verified through T-Rex

Reviews (2): Last reviewed commit: "ship: iteration 1 - address review copy" | Re-trigger Greptile

@vercel

vercel Bot commented Jul 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
ade Ignored Ignored Preview Jul 2, 2026 9:04pm

@arul28

arul28 commented Jul 2, 2026

Copy link
Copy Markdown
Owner Author

@copilot review but do not make fixes

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Changes update the desktop auto-update service's release notes URL to use a /docs/changelog/ path and adjust the reconciliation logic to prefer the built URL over the pending install's stored URL. Corresponding tests are updated, and the renderer's installed-update dialog is redesigned with new CSS entrance animations.

Changes

Release Notes URL and Installed Dialog

Layer / File(s) Summary
Release notes URL construction and reconciliation logic
apps/desktop/src/main/services/updates/autoUpdateService.ts
buildReleaseNotesUrl now returns a /docs/changelog/ path; reconcilePersistedUpdateState prefers the freshly built URL over pendingInstall.releaseNotesUrl, falling back only when the built URL is null/undefined.
Auto-update service test coverage
apps/desktop/src/main/services/updates/autoUpdateService.test.ts
Adds a buildReleaseNotesUrl test suite and updates expected releaseNotesUrl values across pending-install, download, ready, quit-and-install, and relaunch scenarios to the new path.
Installed dialog redesign and animations
apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx, apps/desktop/src/renderer/index.css
Adds a CheckCircle icon, derives installedVersion and a protocol-stripped display URL, reworks the "up to date" dialog card layout, and adds a fade/scale entrance animation with reduced-motion handling.

Estimated code review effort: 2 (Simple) | ~12 minutes

Suggested labels: desktop

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: updating the update restart card's release notes behavior and related UI.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ade/update-card-951a9d13

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@mintlify

mintlify Bot commented Jul 2, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
ade-ac1c6011 🟢 Ready View Preview Jul 2, 2026, 8:46 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx (1)

234-236: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick win

Static copy assumes release notes are always available.

This text always says "Review what changed in this release," but when releaseNotesUrl is null, no link/button is rendered (Lines 238, 256), leaving the user with no way to act on that instruction.

✏️ Proposed fix
               <p className="mt-4 text-[13px] leading-6 text-muted-fg">
-                The update is installed and ADE is ready again. Review what changed in this release.
+                The update is installed and ADE is ready again.
+                {releaseNotesUrl ? " Review what changed in this release." : ""}
               </p>
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx` around lines
234 - 236, The success copy in AutoUpdateControl assumes release notes are
always available, but releaseNotesUrl can be null so the instruction becomes
misleading. Update the text rendered in the installed/success state to be
conditional on releaseNotesUrl, and in the AutoUpdateControl component align it
with the existing conditional rendering for the link/button so users only see
“review what changed” when an action is actually available.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx`:
- Around line 234-236: The success copy in AutoUpdateControl assumes release
notes are always available, but releaseNotesUrl can be null so the instruction
becomes misleading. Update the text rendered in the installed/success state to
be conditional on releaseNotesUrl, and in the AutoUpdateControl component align
it with the existing conditional rendering for the link/button so users only see
“review what changed” when an action is actually available.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ba16485b-2d93-456c-bdb0-12199a6d4dc0

📥 Commits

Reviewing files that changed from the base of the PR and between 8b753e2 and 8b8ff3b.

📒 Files selected for processing (4)
  • apps/desktop/src/main/services/updates/autoUpdateService.test.ts
  • apps/desktop/src/main/services/updates/autoUpdateService.ts
  • apps/desktop/src/renderer/components/app/AutoUpdateControl.tsx
  • apps/desktop/src/renderer/index.css

Comment thread apps/desktop/src/renderer/index.css
@arul28 arul28 changed the title Update Card Fix update restart card release notes Jul 2, 2026
@arul28

arul28 commented Jul 2, 2026

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 👍

Reviewed commit: ff106f2da4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@arul28 arul28 merged commit ff70dad into main Jul 2, 2026
29 checks passed
@arul28 arul28 deleted the ade/update-card-951a9d13 branch July 2, 2026 21:24
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