Bug Description
After clicking "Update" and server successfully restarts with new version, the frontend notification still shows the old version (e.g., "v0.2.1 → v0.2.2") instead of either:
- Showing "Updated to v0.2.2!" toast
- Hiding the notification (since
update_available is now false)
Steps to Reproduce
- Install older version:
uvx quickcall-supertrace@0.2.1
- Open UI - see update notification "v0.2.1 → v0.2.2"
- Click "Update" button
- Wait for "Installing..." → "Restarting..." states
- Server comes back (verified via
curl /api/version returns 0.2.2)
- Bug: Notification still shows "v0.2.1 → v0.2.2"
- Manual page refresh fixes it (notification disappears)
Expected Behavior
After server comes back:
- Show "Updated to v0.2.2!" toast for 5 seconds
checkVersion() runs and updates versionInfo state
- Notification hides (since
update_available: false)
Actual Behavior
- "Restarting..." state clears but old version info remains displayed
checkVersion() either doesn't run or state doesn't update
- Requires manual refresh to see correct state
Technical Details
File: packages/web/src/hooks/useVersionCheck.ts
The issue is in pollHealth function (lines 106-129):
if (healthResponse.ok) {
setUpdateState({ status: 'idle', message: `Updated to v${data.new_version}!` });
await checkVersion(); // <-- This should update versionInfo state
// ...
}
Possible causes:
- Race condition between state updates
checkVersion() failing silently
- React state not triggering re-render
Environment
- Version: 0.2.1 → 0.2.2
- Install method: uvx
- Browser: (any)
Bug Description
After clicking "Update" and server successfully restarts with new version, the frontend notification still shows the old version (e.g., "v0.2.1 → v0.2.2") instead of either:
update_availableis nowfalse)Steps to Reproduce
uvx quickcall-supertrace@0.2.1curl /api/versionreturns 0.2.2)Expected Behavior
After server comes back:
checkVersion()runs and updatesversionInfostateupdate_available: false)Actual Behavior
checkVersion()either doesn't run or state doesn't updateTechnical Details
File:
packages/web/src/hooks/useVersionCheck.tsThe issue is in
pollHealthfunction (lines 106-129):Possible causes:
checkVersion()failing silentlyEnvironment