docs: SAVEPOINT v3.2, ROADMAP Etappe 13 + Ideen-Katalog, README-Ausbau, KONZEPT-Fortschreibungen
Ampel / ampel (push) Successful in 29s
Ampel / ampel (push) Successful in 29s
- README: Media-Server-Ablage, Benachrichtigungen (Tabelle je Dienst), System/MakeMKV-Key, UHD-Arbeitsverzeichnis, neuer Abschnitt 'Rippy woanders bereitstellen' (beliebiger Docker-Host, was NICHT mitmuss). - ROADMAP: Etappe 13 (Universal-Komfort-Runde) dokumentiert, erledigte Punkte aus Etappe 11/12 abgehakt, priorisierter Ideen-Katalog. - KONZEPT: Abschnitt 10 'Fortschreibungen' — Media-Server-Neutralitaet erweitert das Jellyfin-Muss (keine Abweichung), Benachrichtigungen, udev->ioctl. - SAVEPOINT v3.2 mit dem Kernbefund: Ampel war seit 23.07. rot, stable hing 10 Commits zurueck (bcrypt/passlib + veralteter Test) — behoben. - AGENTS: Stand-Sektion entschlackt (Details leben im SAVEPOINT). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+63
-3
@@ -249,7 +249,9 @@ Bind-Mounts statt devices: (EPERM), UI rief hartkodiert localhost:8000 auf.
|
||||
- [x] /settings-Endpoints (Settings-Seite sprach vorher ins Leere)
|
||||
- [x] UI: Vite-Build + nginx mit /api-Proxy statt Dev-Server; relative API-Pfade
|
||||
- [x] compose: devices: statt Bind-Mounts; Ausgabe aufs media-Volume
|
||||
- [ ] Jellyfin-Post-Processing an den Worker anbinden (NFO/Poster nach dem Rip)
|
||||
- [x] Jellyfin-Post-Processing an den Worker anbinden (NFO/Poster nach dem
|
||||
Rip) — 24.07., medien.py: Ordner „Titel (Jahr)" + movie.nfo + poster.jpg,
|
||||
gesteuert übers mediaServer-Setting (Jellyfin/Emby/Kodi/Plex/keins)
|
||||
- [ ] Auth vor die schreibenden Endpoints (JWT existiert, schützt aber nichts)
|
||||
|
||||
---
|
||||
@@ -280,8 +282,9 @@ Jellyfin-Konvention nativ (ARM kann nur Emby-Refresh, keine NFOs).
|
||||
erlaubt nur EINE Auswahl).
|
||||
- [ ] **Min/Max-Titellänge + Extras**: Bonusmaterial nach extras/ (versteht
|
||||
Jellyfin nativ) statt alles flach.
|
||||
- [ ] **Apprise-Benachrichtigungen**: eine Lib für Telegram/Discord/…,
|
||||
Hooks auf job_completed/failed/awaiting_selection, Deep-Link ins UI.
|
||||
- [x] **Benachrichtigungen bei Job-Ende** — 24.07., eigenes notify-Modul
|
||||
(Discord/Slack/ntfy/generisches JSON, Dienst-Erkennung an der URL)
|
||||
statt Apprise-Dependency; Test-Knopf im UI. Telegram/Deep-Links offen.
|
||||
- [ ] **Multi-Drive-Verwaltung**: drives-Tabelle (Seriennummer, Custom-Name,
|
||||
UHD-fähig-Flag), parallele Rips, Job↔Drive-Zuordnung.
|
||||
- [ ] **Backup-Modus** (makemkvcon backup --decrypt) als Plan B für Problem-Discs.
|
||||
@@ -294,3 +297,60 @@ Jellyfin-Konvention nativ (ARM kann nur Emby-Refresh, keine NFOs).
|
||||
„Show/Season 02/Show S02E05.mkv" im Preview bestätigen.
|
||||
- [ ] **Main-Feature per Laufzeitabgleich** mit TMDB-Runtime (±3 min) statt
|
||||
ARMs „größte Datei gewinnt" (#1297-Fehlklasse).
|
||||
|
||||
---
|
||||
|
||||
## Etappe 13 (24.07.2026): Universal-Komfort-Runde — Lücken aus dem Alltag schließen
|
||||
|
||||
**Quelle:** Commander-Sammelauftrag 24.07. — alles, was beim echten Benutzen
|
||||
auffiel, in einem Rutsch. Alles gebaut, Tests dabei, Ampel-Blocker behoben.
|
||||
|
||||
**Gebaut:**
|
||||
- [x] **Ampel entrostet**: bcrypt auf 4.0.1 gepinnt (passlib-1.7.4-Bruch) und
|
||||
cache_keys-Test an das Fingerprint-Format vom 23.07. angepasst — DIE
|
||||
beiden Rot-Ursachen, wegen derer `stable` 10 Commits zurückhing.
|
||||
- [x] **Media-Server-Integration**: mediaServer-Setting (Wizard + Einstellungen),
|
||||
Zielordner „Titel (Jahr)", movie.nfo/tvshow.nfo + poster.jpg für
|
||||
Jellyfin/Emby/Kodi (medien.py im Worker, mit Tests).
|
||||
- [x] **Benachrichtigungen echt gemacht**: notify.py (API+Worker), Meldung bei
|
||||
fertig/fehlgeschlagen/abgebrochen, Anleitung + Test-Knopf im UI —
|
||||
das Webhook-Feld war vorher ein Placebo, nichts hat je gesendet.
|
||||
- [x] **SMB-Freigaben-Scan repariert**: NT_STATUS-Fehler → Klartext (Gast-
|
||||
Abfrage verweigert ⇒ Benutzer/Passwort nötig), Credential-Felder im UI
|
||||
VOR den „Freigaben auflisten"-Knopf gezogen.
|
||||
- [x] **4K-UHD-Platzproblem**: Arbeitsverzeichnis konfigurierbar (workDir,
|
||||
z. B. NAS-Freigabe), Platz-Check per Disc-Größe (ioctl) VOR dem Rip.
|
||||
- [x] **MakeMKV-Key über UI** (Einstellungen → System): gilt ab dem nächsten
|
||||
Rip, ohne Rebuild; Worker melden Werkzeug-Versionen + Key-Quelle.
|
||||
- [x] **Job-Detail-Popup**: Klick auf Titel in „Neueste Jobs" → Poster, Jahr,
|
||||
Beschreibung, Ablagepfad, Fehler (Job speichert Metadaten jetzt mit).
|
||||
- [x] **UI-Feedback überall**: Toast-System (reinploppende Meldungen), drehende
|
||||
Refresh-Knöpfe, Logs-Filter um Warnung/Fehler-Pills ergänzt.
|
||||
- [x] **Datei-Browser zeigt Dateien**: Ordner wirkten „leer", weil nur
|
||||
Unterordner gelistet wurden — Dateien erscheinen jetzt grau mit Größe.
|
||||
- [x] Favicon (Disc im Logo-Verlauf) + Footer „Created with ❤️ by LucyAI,
|
||||
Claude and KrBrZ".
|
||||
- [x] README: Media-Server, Benachrichtigungen, UHD-Arbeitsverzeichnis,
|
||||
„Rippy woanders bereitstellen" (beliebiger Docker-Host).
|
||||
|
||||
**Offen aus dieser Runde:** nichts — Rest siehe Etappe 12 und Ideen unten.
|
||||
|
||||
---
|
||||
|
||||
## Ideen-Katalog (24.07.2026, priorisiert) — Lücken, die noch offen sind
|
||||
|
||||
1. **Serien-Staffel-Flow**: Beim Rippen einer Serien-Disc Staffel/Disc-Nr
|
||||
abfragen → Ablage `Show/Season 02/`, Episoden-Matching wie Etappe 12.
|
||||
2. **Duplikat-Warnung**: Disc-Fingerprint schon in der Job-Historie →
|
||||
„schon am X gerippt — trotzdem?" (Fingerprint-Infrastruktur existiert).
|
||||
3. **Jellyfin-Bibliotheks-Refresh** nach Ablage (API-Key + URL in den
|
||||
Einstellungen, POST /Library/Refresh) — der letzte Schritt zur
|
||||
Null-Klick-Kette Disc→Bildschirm.
|
||||
4. **Track-Auswahl vor dem Rip** (awaiting_selection, Etappe 12) — spart
|
||||
bei Bonus-Material-Discs Stunden.
|
||||
5. **Auth vor schreibende Endpoints** + Login-Flow im UI (JWT existiert).
|
||||
6. **Speicherplatz-Kachel im Dashboard** (Media/Arbeitsverzeichnis als
|
||||
Balken — /system/info liefert die Daten schon).
|
||||
7. **Rip-Historie exportieren** (CSV/JSON) für die Sammlung-Übersicht.
|
||||
8. **Design 2.0**: Design-Tokens statt Theme-Ternaries in jeder Zeile —
|
||||
die `theme === 'dark' ? … : …`-Kaskaden sind der größte UI-Schuldenberg.
|
||||
|
||||
Reference in New Issue
Block a user