fix(Settings): improve user guidance during system update

This commit is contained in:
Jake Turner 2026-02-11 22:44:13 -08:00 committed by Jake Turner
parent fcb696587a
commit 8609a551f2
2 changed files with 27 additions and 0 deletions

View File

@ -1,5 +1,16 @@
# Release Notes
## Unreleased
### Features
### Bug Fixes
- **Settings**: Fix potential stale cache issue when checking for system updates
- **Settings**: Improve user guidance during system updates
### Improvements
## Version 1.25.0 - February 12, 2026
### Features

View File

@ -231,6 +231,7 @@ export default function SystemUpdatePage(props: {
const [logs, setLogs] = useState<string>('')
const [email, setEmail] = useState('')
const [versionInfo, setVersionInfo] = useState(props.system)
const [showConnectionLostNotice, setShowConnectionLostNotice] = useState(false)
useEffect(() => {
if (!isUpdating) return
@ -242,6 +243,9 @@ export default function SystemUpdatePage(props: {
throw new Error('Failed to fetch update status')
}
setUpdateStatus(response)
// If we can connect again, hide the connection lost notice
setShowConnectionLostNotice(false)
// Check if update is complete or errored
if (response.stage === 'complete') {
@ -255,6 +259,8 @@ export default function SystemUpdatePage(props: {
}
} catch (err) {
// During container restart, we'll lose connection - this is expected
// Show a notice to inform the user that this is normal
setShowConnectionLostNotice(true)
// Continue polling to detect when the container comes back up
console.log('Polling update status (container may be restarting)...')
}
@ -414,6 +420,16 @@ export default function SystemUpdatePage(props: {
/>
</div>
)}
{isUpdating && showConnectionLostNotice && (
<div className="mb-6">
<Alert
type="info"
title="Connection Temporarily Lost (Expected)"
message="You may see error notifications while the backend restarts during the update. This is completely normal and expected. Connection should be restored momentarily."
variant="solid"
/>
</div>
)}
<div className="bg-white rounded-lg border shadow-md overflow-hidden">
<div className="p-8 text-center">
<div className="flex justify-center mb-4">{getStatusIcon()}</div>