fix(rolling-update): stable done-detection, mobile banner layout, stale-state protection
- FinishRollingUpdateIfPending() auf API-Startup: transitiert updating-primary → done damit der UI-Flow nach Restart abschließt - RollingUpdateStatus: setzt done nach Auslieferung auf idle zurück (verhindert Stale-done bei Page-Reload) - wasRollingActiveRef: reagiert auf done nur wenn rolling in DIESER Session aktiv war — kein sofortiger Reload bei Stale-State - UI-Fallback für updating-primary: poll auf /system/health version-flip - Cluster-Erkennung via /cluster/status; Rolling-Update-Button nur im Cluster - Update-Banner-Button nicht mehr gequetscht (flex-shrink:0 + nowrap) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -2168,33 +2168,24 @@ h1, h2, h3, h4, h5, h6 {
|
||||
* center icon, plus a four-step progress list and a large seconds
|
||||
* timer. Classes are namespaced with `update-modal` so they don't
|
||||
* clash with AntD Modal internals. */
|
||||
/* Update-Banner Mobile-Layout (1.6.92+). Auf engen Viewports kollidiert
|
||||
der „Update verfügbar"-Text mit den beiden Aktion-Buttons (Check +
|
||||
Update Now), weil AntD-Alert beide horizontal nebeneinander rendert.
|
||||
Unter 640 px kippen wir das Layout in column-flex, action-Bereich
|
||||
landet unter der Message + die Buttons stretchen auf 100% Breite. */
|
||||
@media (max-width: 640px) {
|
||||
.update-banner-alert.ant-alert {
|
||||
flex-direction: column;
|
||||
align-items: stretch;
|
||||
}
|
||||
.update-banner-alert .ant-alert-content {
|
||||
margin-right: 0;
|
||||
}
|
||||
.update-banner-alert .ant-alert-action {
|
||||
margin-left: 0;
|
||||
margin-top: 8px;
|
||||
}
|
||||
.update-banner-alert .ant-alert-action .ant-space {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
}
|
||||
.update-banner-alert .ant-alert-action .ant-space > .ant-space-item {
|
||||
flex: 1;
|
||||
}
|
||||
.update-banner-alert .ant-alert-action button {
|
||||
width: 100%;
|
||||
}
|
||||
/* Update-Banner: Text links, Button rechts; auf Mobile umbrechen. */
|
||||
.update-banner-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.update-banner-row > span {
|
||||
flex: 1 1 160px;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.update-banner-row button,
|
||||
.update-banner-row .ant-popover-open,
|
||||
.update-banner-row > span + * {
|
||||
flex-shrink: 0;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/* Popconfirm der hinter "Update jetzt installieren?" steckt. Default
|
||||
|
||||
Reference in New Issue
Block a user