Eigener Herzschlag: der Bot kann jetzt auch ueber sich selbst Auskunft geben
Der Waechter prueft alles ausser sich selbst — ist der Bot weg, prueft niemand mehr, und hinterher sieht der Verlauf aus, als waere nie etwas gewesen. Im Dashboard stand deshalb nur "seit 12d 4h", also wie lange es diesmal gutgegangen ist. Was davor war, wusste niemand. Jetzt schreibt der Bot alle zwei Minuten eine Zeile: laeuft der Prozess, und steht die Verbindung zu Discord? Ein Bot, der laeuft aber nicht verbunden ist, ist fuer alle draussen genauso weg — deshalb zaehlt beides. Der Takt ist absichtlich nicht einstellbar. Ein spaeter geaenderter Abstand wuerde den alten Verlauf falsch aussehen lassen: wie viele Proben eine Stunde haette haben muessen, liesse sich rueckwirkend nicht mehr sagen. Ausgewertet wird vor allem die Abwesenheit. Fuer einen fremden Dienst heisst eine fehlende Stunde "niemand hat gemessen" und wird grau; beim Bot selbst ist genau das die Aussage — fehlende Stunden werden rot. Grau bleibt nur, was vor der allerersten Aufzeichnung liegt. Die angebrochene erste und die laufende letzte Stunde rechnen anteilig, sonst waeren sie dauerhaft gelb. Nebenbei mitgenommen: - Statusseite und die frei angelegten Seiten stehen jetzt in der Fusszeile beider Seiten — dort sucht man Rechtliches. Die Navigationsleiste zeigt weiterhin nur, was "im Menü" gesetzt hat; wer die Nutzungsbedingungen dort raus nimmt, hat sie trotzdem noch in der Fusszeile. - Die Config-Spalte hatte keine Obergrenze. min-width:0 allein reicht nicht, wenn ein Kind eine grosse Mindestbreite mitbringt — mit dem Balken wuchs sie auf 724 statt 335 px, und weil der Body waagerecht abschneidet, war der Ueberstand nicht scrollbar, sondern weg. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+12
-1
@@ -842,7 +842,11 @@ a.sha:hover { border-color: var(--neon); background: rgba(245, 197, 24, .07); }
|
||||
}
|
||||
.settings-nav-icon { font-size: .95rem; }
|
||||
|
||||
.settings-content { flex: 1; min-width: 0; animation: riseIn .3s ease both; }
|
||||
/* max-width gehört dazu: min-width allein reicht nicht, wenn ein Kind eine
|
||||
grosse Mindestbreite mitbringt (die 168 Striche des Erreichbarkeits-Balkens).
|
||||
Ohne die Grenze wuchs die Spalte auf 724 statt 335 px — und weil der Body
|
||||
waagerecht abschneidet, war der Überstand nicht scrollbar, sondern weg. */
|
||||
.settings-content { flex: 1; min-width: 0; max-width: 100%; animation: riseIn .3s ease both; }
|
||||
|
||||
/* Tabs, die nur aus Formular-Blöcken bestehen, stellen ihre Blöcke ab genug
|
||||
Breite nebeneinander — halbiert das Scrollen, ohne das Innenleben eines
|
||||
@@ -1764,6 +1768,13 @@ label.toggle {
|
||||
font-size: .64rem; letter-spacing: .08em; color: var(--muted2);
|
||||
}
|
||||
|
||||
/* Der Balken sitzt zwischen Kopfzeile und Kennzahlen. min-width: 0, sonst
|
||||
sprengen ihn die 168 Striche auf schmalen Schirmen (siehe .srv-card). */
|
||||
.dash-uptrack { margin: 0 0 1.2rem; min-width: 0; }
|
||||
.dash-hint {
|
||||
margin: 0 0 1.2rem; font-size: .8rem; color: var(--muted);
|
||||
}
|
||||
|
||||
.dash-kpis { display: grid; gap: .7rem; grid-template-columns: repeat(4, 1fr); }
|
||||
.dash-kpi { display: flex; flex-direction: column; gap: .15rem; padding: .9rem 1rem; min-width: 0; }
|
||||
.dash-v { font-size: 1.55rem; font-weight: 700; line-height: 1.1; }
|
||||
|
||||
Reference in New Issue
Block a user