diora-web/tui/TODO.md
mrwnslz 6047ae44c4 TUI: TODO (Pull Request anlegen, Forgejo-Zugang, selbst ausprobieren)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-26 16:55:56 +01:00

2.3 KiB

TODO diora-tui

Offen

  • Pull Request wt-tui → master anlegen (nur anlegen, nicht mergen). Forgejo verlangt dafür eine Anmeldung; Claude hat keinen Token. Vergleich ist vorbereitet: https://fg.creamfresh.xyz/mrwnslz/diora-web/compare/master...wt-tui (Stand 2026-10-26: 14 Commits, mit dem damaligen origin/master konfliktfrei mergebar.)

    Titel: diora-tui: auf den aktuellen Stand (Lesestand, Bibliothek, Markierungen)

    Beschreibung:

    Bringt die TUI (tui/) auf den Stand von Web und Apps. Nur tui/ ist betroffen, der Server bleibt unverändert.
    
    - Liest EPUBs wie der Browser (html5lib, Rohdaten, UTF-8): Block-Index, Text und Zeichenpositionen stimmen bei 6 echten Büchern mit parseEpub des Web-Readers überein (tools/parity/).
    - Lesestand "zuletzt gelesen gewinnt" nach docs/progress-sync.md (read_at/sent_at/device, Warteschlange, Angebote "Auf X weitergelesen" und "Weiteste Stelle"); Fortschritt als Textanteil statt 0.0.
    - `diora-tui login` wie diora_client (Token auslesen, Schlüssel aus dem Passwort, geschützt gespeichert: DPAPI unter Windows), Bücher erst beim Öffnen geladen, Abgleich über GET /books/.
    - Bibliothek wie im Web: Weiterlesen-Karte, Status- und Ordner-Chips, Suche, 6 Sortierungen inkl. Länge, Bücher/Zeitschriften.
    - Markierungen, Notizen, Lesezeichen anzeigen, anlegen, löschen; die TUI legt ihre Änderungen je ID auf die aktuelle Server-Liste, bevor sie schreibt.
    
    Geprüft: 75 Tests (pytest tests), tools/smoke_server.py gegen einen lokalen Server, tools/parity/web_anchors.cjs (der echte resolveAnchorRange des Webs findet 81 TUI-Anker exakt; 34 von 34 echten Web-Markierungen werden angezeigt).
    Nicht enthalten: Podcasts/Radio, PDF-Markierungen, Serien-Stapel, Ausgaben, Cover.
    
  • Forgejo-Zugang für Claude (optional): API-Token als Umgebungsvariable oder tea einrichten, dann legt Claude künftige PRs selbst an.

  • TUI selbst ausprobieren mit dem echten Konto: pip install -e tui, diora-tui login, diora-tui. Bisher nur in automatisierten Terminal-Läufen und gegen einen lokalen Testserver gesehen, nicht von Hand bedient.

Bewusst nicht in der TUI

Podcasts und Radio, PDF-Markierungen, Serien-Stapel, Ausgaben (mehrere Fassungen eines Werks), Cover, Ordner anlegen/zuweisen, Eingang aus der Cloud, Heft-Ansicht für Zeitschriften.