feat(installer): add Diagnose section to SettingsWindow
Re-runs the environment checks against the installed configuration (worker.config.json + detected install dir) without blocking navigation and without auto-running on window open, only on a "Recheck" click. Extracted the check-row rendering and check-run logic (busy state, summary, Recheck command) out of SystemCheckPage into a shared Checks/CheckListViewModel + Checks/CheckListView, composed by both SystemCheckPage (wizard) and the new DiagnosePage (settings) instead of duplicating it.
This commit is contained in:
+10
-8
@@ -149,19 +149,21 @@ beider Branches, nicht aus `main` selbst. Details → `installer-preflight` in
|
||||
`docs/explore-notes/README.md` und den neuen Abschnitt „Environment Checks" in
|
||||
`src/ClaudeDo.Installer/CLAUDE.md`.
|
||||
|
||||
**Zusätzliche Lücke, unabhängig vom Merge:** die zwei Folge-Tasks „Claude Help Me"-Button
|
||||
und Diagnose-Sektion (Config-Modus/`SettingsWindow`) sind **nicht implementiert** — beide
|
||||
liefen ins selbe Merge-Problem und wurden ohne jede Code-Änderung als `Blocked` beendet. Die
|
||||
folgenden Punkte, die diese zwei Features beträfen, können also noch nicht geprüft werden und
|
||||
brauchen zuerst eine neue Umsetzungsrunde:
|
||||
**Update (2026-08-06):** die Diagnose-Sektion (Config-Modus/`SettingsWindow`) ist implementiert
|
||||
— `Pages/DiagnosePage/` + geteilte `Checks/CheckListViewModel.cs`/`Checks/CheckListView.xaml`
|
||||
(auch von `SystemCheckPage` genutzt, keine zweite Implementierung). Unit-getestet
|
||||
(`tests/ClaudeDo.Installer.Tests/Pages/DiagnosePage/DiagnosePageViewModelTests.cs`), **aber
|
||||
nicht visuell verifiziert** — siehe Punkt unten. Der „Claude Help Me"-Button bleibt offen (sein
|
||||
Footer-Slot ist in `CheckListView.xaml` reserviert):
|
||||
|
||||
- [ ] „Claude Help Me" öffnet ein Terminal mit laufender Claude-Session, und die Session hat
|
||||
den Diagnose-Report tatsächlich gelesen — **nicht umsetzbar, Feature existiert nicht.**
|
||||
- [ ] Der Help-Me-Button ist korrekt deaktiviert, wenn `claude` nicht im PATH ist, mit
|
||||
verständlichem Tooltip — **nicht umsetzbar, Feature existiert nicht.**
|
||||
- [ ] Diagnose-Sektion im Config-Modus zeigt die echten installierten Pfade/Ports, und der
|
||||
laufende Worker auf 47821 gilt nicht als Konflikt — **nicht umsetzbar, Feature existiert
|
||||
nicht.**
|
||||
- [ ] Diagnose-Sektion im Config-Modus: Öffnen von SettingsWindow löst keinen Prüflauf aus, Klick
|
||||
auf „Erneut prüfen" schon; zeigt die echten installierten Pfade/Ports (nicht die
|
||||
InstallContext-Defaults), und der laufende Worker auf dem konfigurierten SignalR-Port gilt
|
||||
nicht als Konflikt — **unit-verifiziert, visueller Durchlauf noch offen.**
|
||||
|
||||
Sobald die beiden Branches oben gemerged sind, sind folgende Punkte real prüfbar (gebaut +
|
||||
unit-getestet gegen die Scratch-Integration, aber **nicht visuell verifiziert**):
|
||||
|
||||
Reference in New Issue
Block a user