From b47d21510d11efed941fbc3828eeeb3a139a74dd Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Fri, 28 Aug 2026 13:56:41 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20Entscheid=206=20=E2=80=94=20Faehigkeite?= =?UTF-8?q?n=20statt=20Modus-Name,=20und=20ein=20Setup=20das=20fragt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Beide Befunde des Commanders vom 28.08.2026 festgehalten, mitsamt der Begruendung, warum ein 'if (windows)' an dreissig Stellen die falsche Reparatur gewesen waere: Die Oberflaeche haette weiterhin nichts ueber ihren Betrieb gewusst, nur eine zweite Sorte Vermutung gehabt. Co-Authored-By: Claude Opus 5 --- KONZEPT-V2.md | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ ROADMAP.md | 8 ++++++++ 2 files changed, 62 insertions(+) diff --git a/KONZEPT-V2.md b/KONZEPT-V2.md index 8f74c22..ba85571 100644 --- a/KONZEPT-V2.md +++ b/KONZEPT-V2.md @@ -1362,8 +1362,62 @@ Black-Box-Trennung aus `KONZEPT.md` § 6. Beides bleibt gültig. `vendor/`-Ordner für MakeMKV auf der VM. Ein Binärblob in git wäre bei jedem Klon dabei und bei jedem Update ein zweites Mal. + +### Entscheid 6 — Die Oberfläche kennt ihren Betrieb, und das Setup fragt + +Zwei Befunde des Commanders am 28.08.2026, beide am selben Punkt: + +> „Du hast ja quasi nur rippy genommen und die docker installation für Windows +> gebaut. […] Das gilt für die ganze standalone version für Windows, auch für +> die settings und die Anleitung usw." + +> „Dann hätte ich beim ‚Setup' auch erwartet das nen echtes setup passiert — +> wo will ich das hinspeichern, nen pre requirement check usw. Da kommt +> garnichts Rippy geht einfach auf." + +#### 6a — Fähigkeiten statt Modus-Name + +Im Windows-Fenster stand `Worker erreichbar: 0 von 1`, `Container-Platte: +unbekannt` und `Prüfen: docker compose ps`. Kein Satz davon ergibt dort einen +Sinn. + +Die naheliegende Reparatur wäre ein `if (windows)` an dreißig Stellen gewesen +— dieselbe Falle noch einmal, nur mit einer zweiten Sorte Vermutung. Es +fehlte etwas anderes: **Das UI hat nie erfahren, worauf es läuft.** + +`GET /betrieb` meldet deshalb **Fähigkeiten**, keinen Namen: + + externe_worker Gibt es andere Maschinen, die Jobs übernehmen? + freigaben_einhaengen Kann Rippy Netzwerk-Freigaben selbst einhängen? + container_pfade Sind Pfade wie /app/media überhaupt gemeint? + werkzeuge_verwalten Kann Rippy MakeMKV/HandBrake selbst beschaffen? + +Ein Modus-Name würde das UI zwingen, aus einem Namen auf Verhalten zu +schließen — und das bricht beim nächsten Betriebsfall: Ein Docker-All-in-One +hat Container-Pfade, aber keinen zweiten Worker. + +#### 6b — Ein Setup, das prüft und fragt + +Acht Voraussetzungs-Prüfungen, zwei Ordner-Wahlen (Programm **und** Ablage), +Port, drei Schalter. Drei Regeln: + +1. **Nur ein Fehler blockiert.** Eine Warnung, die den Knopf sperrt, ist eine + Bevormundung; ein Fehler, der nur warnt, ist eine Falle. Kein optisches + Laufwerk ist eine Warnung — eine reine Komprimier-Maschine ist ein + vorgesehener Betriebsfall. +2. **Jeder Befund sagt, was zu tun ist.** Ein Test hält das für jede Prüfung + fest. +3. **Die Prüfungen kennen kein Fenster.** Sie stehen in `einrichtung.py` und + sind vollständig ohne WebView2 prüfbar; im Fenstermodul steht nur Aufbau + und Brücke. + +WebView2 statt Win32-Dialog: Es ist wegen Entscheid 4 ohnehin da — der +Assistent kostet **null zusätzliche Bytes**. Die Seite lädt nichts aus dem +Netz; sie muss auf einem Rechner ohne Internet aufgehen. + --- + ### Was jetzt noch fehlt, bevor gebaut wird - **`KONZEPT.md` § 10 fortschreiben** — Entscheid 2 widerspricht dem Eintrag vom diff --git a/ROADMAP.md b/ROADMAP.md index e5f1853..05ac5f4 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -639,6 +639,14 @@ Medien. - [x] Symbol mit allen Größen, die Windows holt (16/32/48/256) — vorher steckte nur 256×256 in der `.ico`, und Desktop, Startmenü und Taskleiste zeigten ein leeres Blatt +- [x] **Ein echtes Setup** (`einrichtung.py`, `setup_fenster.py`): acht + Voraussetzungs-Prüfungen, Zielordner UND Ablage zur Wahl, Port, + Autostart/Verknüpfungen/Werkzeuge als Schalter. Vorher installierte der + Doppelklick stillschweigend und öffnete das Fenster. +- [x] **Die Oberfläche kennt ihren Betrieb** (`betrieb.py`, `GET /betrieb`, + `useBetrieb.tsx`): keine Worker-Zähler, keine Container-Platte, kein + `docker compose ps` mehr im Windows-Client — und der Docker-Betrieb + behält alles. - [ ] Standby blocken via `SetThreadExecutionState`, ohne `ES_DISPLAY_REQUIRED` — **offen** - **Fertig, wenn:** auf einem frischen Win-11-Rechner gilt: Installer →