M14: Update-Check (Software+Firmware) + Karten-Design fuer Sektionen
Verbinden-Tab zeigt jetzt die volle Routerboard-Info (Modell/Revision/ Seriennummer/Firmware, aus /system routerboard) sowie einen RouterOS-Software-Update-Check (/system package update: Kanal/ installierte/neueste Version/Status, "Jetzt pruefen"/"Update installieren"), dazu "Firmware aktualisieren" fuer die Routerboard-Bootloader-Firmware und "Jetzt neu starten" danach. Alle vier Aktionen live bestaetigt, inklusive der zuvor unsicheren Frage, ob /system routerboard upgrade's normalerweise interaktive Bestaetigung den nicht-interaktiven SSH-Weg dieser App blockiert (tut es nicht). Bug 20 gefunden und gefixt: fetchMenuItems' Singleton-Fallback (Bug 8) reagierte nur auf eine geworfene Exception fuer "bad parameter terse", aber RouterOS liefert diesen Fehler fuer /system routerboard mit Exit-Code 0 zurueck (dasselbe Bug-10-Muster, diesmal beim Lesen statt Schreiben) - die Routerboard-Sektion blieb dadurch leer, ohne Fehler. Fix: zusaetzlich den Output-Text selbst pruefen, nicht nur die Exception. Design-Durchgang: Verbinden-Detailseite/Sicherungen/Geraete liefen auf nackter List ohne Rahmen - umgestellt auf Form+.formStyle(.grouped), denselben nativen macOS-Karten-Look, den Wizard und Experte-Tab schon hatten, fuer eine einheitliche App. Dark Mode auf Nachfrage gepueft und ohne Codeaenderung bestaetigt funktionierend. HANDOFF.md/CHATLOG.md aktualisiert: M14, Bug 20, Design-Durchgang, Dark-Mode-Bestaetigung. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CTgRxJTzaQwaRkngbaE1GJ
This commit is contained in:
+46
@@ -630,3 +630,49 @@ sind dadurch hinfällig, siehe HANDOFF.md Nächste Schritte. Offen bleibt
|
||||
weiterhin die `.id`-Positionsüberlagerungs-Frage für den Experte-Tab
|
||||
(Bug 15) und alle länger schon offenen Punkte (M7-Rest, M8-Hardware-
|
||||
Test, WLAN/Bonding/PPPoE-Live-Tests).
|
||||
|
||||
## Session: Update-Check (M14) + Design-Durchgang
|
||||
|
||||
- "ok, sieht gut aus. weiter mit der Update-Überprüfung." — mehrdeutig
|
||||
(RouterOS-Software vs. Routerboard-Firmware), per `AskUserQuestion`
|
||||
geklärt: "Beides". Vorher per Recherche-Agent geprüft: `/system
|
||||
package update` (Felder channel/installed-version/latest-version/
|
||||
status, check-for-updates dann install, install reboot automatisch)
|
||||
und `/system routerboard upgrade` (braucht in Winbox normalerweise
|
||||
y/n-Bestätigung, kein automatischer Reboot danach).
|
||||
- Gebaut: Routerboard-Vollinfo + Software-Update-Sektion im
|
||||
Verbinden-Tab, "Firmware aktualisieren" mit Warnhinweis zur unsicheren
|
||||
Interaktivitäts-Frage.
|
||||
- "davon sehe ih nichts, CMD+Q wurde ausgeführt und app neugestartet" →
|
||||
"nur die neue 'Routerboard'-Sektion fehlt" → gemeinsam per SSH
|
||||
verifiziert (`/system routerboard print terse` → "bad parameter
|
||||
terse"), dann über den Experte-Tab denselben generischen Lesepfad
|
||||
getestet ("Unerwsrtete Antwort vom Router: bad commandname add" beim
|
||||
Anlegen-Versuch, Liste vorher leer) — Bug 20 gefunden: der bestehende
|
||||
Singleton-Fallback (Bug 8) reagiert nur auf eine geworfene Exception,
|
||||
aber RouterOS liefert "bad parameter terse" für dieses Menü mit
|
||||
Exit-Code 0 zurück, landet also als normaler leerer Output. Fix:
|
||||
zusätzlich den Output-Text selbst prüfen. "ok, sieht gut aus" danach.
|
||||
- "sieht gut aus, der Button 'Firmware aktualisieren' funktioniert
|
||||
auch?" — ehrlich beantwortet: kann ich nicht bestätigen ohne Live-Test.
|
||||
Nutzer testete, Konsolen-Ausgabe geteilt ("Firmware upgraded
|
||||
successfully, please reboot for changes to take effect!") — die
|
||||
interaktive Bestätigung blockierte den SSH-Weg nicht, wie gehofft.
|
||||
"ja, bau das" → "Jetzt neu starten"-Button ergänzt, ebenfalls sofort
|
||||
funktionierend gemeldet.
|
||||
- "ok, jetzt zum Design. ich hätte gerne die einzelnen Sektionen
|
||||
sauberer getrennt - Trennstriche oder Rahmen um die Sektionen." — per
|
||||
`AskUserQuestion` Umfang ("ganze App") und Stil ("Karten mit Rahmen")
|
||||
geklärt. Geprüft: Wizard-Schritte und Experte-Tab nutzten schon
|
||||
`.formStyle(.grouped)` (nativer macOS-Karten-Look), nur Verbinden-
|
||||
Detailseite/Sicherungen/Geräte liefen auf nackter `List` — auf
|
||||
`Form`+`.formStyle(.grouped)` umgestellt statt eine eigene
|
||||
Karten-Komponente zu bauen.
|
||||
- "wie sieht es mit einem Darkmode aus?" — Code geprüft (keine
|
||||
`.preferredColorScheme`-Überschreibung, kein
|
||||
`NSRequiresAquaSystemAppearance`, nur adaptive System-Farben) und
|
||||
bestätigt: funktioniert schon ohne Codeänderung. Nutzer bestätigte
|
||||
nach eigenem Test ("passt super und funktioniert").
|
||||
- "ja, committen und beides aktualisieren" → dieser Eintrag, HANDOFF.md
|
||||
(M14, Bug 20, Design-Durchgang, Dark-Mode-Bestätigung) aktualisiert,
|
||||
Commit erstellt.
|
||||
|
||||
Reference in New Issue
Block a user