fix: Gast-Zugang-Sperre, veralteter Token, Doppel-Tap, Hinweistext (Branch-Review)
Behebt die Findings aus dem abschließenden Gesamt-Branch-Review für feature/youtube-gast-zugang, alle in einem Rutsch: - KRITISCH: Gast-Modus war eine Einbahnstraße — einmal "Als Gast fortfahren" getippt, war _AnmeldeDialog (einziger Baka-Login-Einstieg, auch für Melo-Cloud-Sync) dauerhaft unerreichbar. Neu: GastZugang.verwerfen() plus "Anmelden"-Knopf neben der Gast-Statuszeile in beiden Screens. - WICHTIG: zugriffOk prüfte den rohen gast.hatToken statt istGastModus — ein alter Gast-Token konnte den Auto-Login-Rückfallweg für Server-User verdecken. istGastModus wird jetzt vor zugriffOk berechnet und dort verwendet. - WICHTIG: CHANGELOG ergänzt — der Server-Endpunkt POST /api/guest-token fehlt noch (separates Vorhaben). - Doppel-Tap-Schutz für den Gast-Button in beiden Screens. - Widersprüchlicher Hinweistext im YT-Suche-Tab (verlangte Baka-Login direkt über dem Gast-Button) korrigiert. - Zwei Gast-Tests in youtube_search_screen_test.dart bekommen jetzt echtes gast:-Wiring in YtSearchService/YtDownloadService. - 2 neue Regressionstests fürs Anmelden-Escape-Hatch. Getestet: volle Suite grün (602 Tests, 1 skipped, 0 failed), flutter analyze ohne Befund. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CcDiyJdVRqh1TtJk5JiabX
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
b32f3198f8
commit
d20f01adee
@@ -5,8 +5,47 @@ Format angelehnt an [Keep a Changelog](https://keepachangelog.com/de/1.0.0/).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### 🐛 Gast-Zugang: Fixe aus dem Branch-Abschluss-Review (2026-08-26)
|
||||
|
||||
- 🔓 **Gast-Modus war eine Einbahnstraße.** Einmal "Als Gast fortfahren"
|
||||
angetippt, blieb `gast.hatToken` dauerhaft `true` (Token steckt im
|
||||
Secure Storage, wird bei jedem App-Start wiederhergestellt) — und damit
|
||||
war `_AnmeldeDialog`, der EINZIGE Einstieg in der App für die
|
||||
Baka-Anmeldung (auch für den Melo-Cloud-Sync-Login!), unerreichbar.
|
||||
Neu: `GastZugang.verwerfen()` verwirft den Token wieder, und ein
|
||||
"Anmelden"-Knopf neben der Gast-Statuszeile (Download-Tab und
|
||||
YT-Suche-Tab) ruft ihn auf.
|
||||
- 🔀 **Ein alter Gast-Token hat den Auto-Login-Rückfallweg für
|
||||
Server-User verdeckt.** `zugriffOk` prüfte bisher den rohen
|
||||
`gast.hatToken` statt `istGastModus` — ein Gerät, das früher mal als
|
||||
Gast lief und jetzt als Server-User mit fehlgeschlagenem Auto-Login
|
||||
dasteht, bekam die Fehlermeldung dazu nie zu sehen und lud still über
|
||||
den (limitierten) Gast-Pfad. `istGastModus` wird jetzt vor `zugriffOk`
|
||||
berechnet und dort statt des rohen Tokens verwendet.
|
||||
(`lib/downloads/downloads_screen.dart`,
|
||||
`lib/downloads/youtube_search_screen.dart`)
|
||||
- ⏱️ **Doppel-Tap auf "Als Gast fortfahren" konnte zwei Anfragen
|
||||
gleichzeitig auslösen.** Beide Screens sperren den Button jetzt während
|
||||
`holeToken()` läuft (`_gastLaeuft`).
|
||||
- 📝 **Widersprüchlicher Hinweistext im YT-Suche-Tab behoben** — der Text
|
||||
über dem Gast-Button verlangte fälschlich eine Baka-Anmeldung.
|
||||
- ⚠️ **CHANGELOG ergänzt:** der Abschnitt zum Gast-Zugang unten macht jetzt
|
||||
klar, dass die Server-Seite (`POST /api/guest-token`) noch fehlt.
|
||||
- ✅ **Getestet:** 2 neue Regressionstests fürs "Anmelden"-Escape-Hatch
|
||||
(`test/downloads/online_screen_test.dart`,
|
||||
`test/downloads/youtube_search_screen_test.dart`), 2 bestehende Gast-Tests
|
||||
im YT-Suche-Tab jetzt mit echtem `gast:`-Wiring in
|
||||
`YtSearchService`/`YtDownloadService`. Volle Suite grün, `flutter
|
||||
analyze` ohne Befund.
|
||||
|
||||
### 📺👤 YouTube-Gast-Zugang: bewusste Wahl + Tages-Zähler (Download-Tab + YT-Suche-Tab) (2026-08-26)
|
||||
|
||||
- ⚠️ **Braucht noch die Server-Seite.** Der neue Endpunkt `POST
|
||||
/api/guest-token` und die Quota-Logik in `yt_proxy.py` existieren noch
|
||||
nicht (separates Vorhaben, siehe
|
||||
`docs/superpowers/specs/2026-08-26-youtube-guest-quota-design.md`). Bis
|
||||
die Server-Seite steht, liefert der "Als Gast fortfahren"-Button
|
||||
zuverlässig einen 404-Fehler.
|
||||
- 👤 **Echte Gäste (kein Baka-Konto, kein Melo-Server) sehen jetzt zwei
|
||||
Buttons** statt nur der Anmeldung: "Beim Baka-Konto anmelden" und neu
|
||||
"Als Gast fortfahren (5 Downloads/Tag)". Der Gast-Button holt sich per
|
||||
|
||||
Reference in New Issue
Block a user