Stats: 16 Commits, +1769 / -578 LoC, 48 Files
Top-Dirs: apps/api/src/db (22%), apps/web/src/routes (20%), apps/api/src/routes (12%), apps/web/src/lib (8%), apps/api/src/lib (3%)
Tags: —
Session: 11:17 → 20:32 (~140 aktive Min, längster Fokus 62 Min)
Der zweite große Arbeitstag nach dem Greenfield. Vier Stränge:
1. Real-Auth + Seed-Content. real-auth-Fixes + Originalfigur-Pfad
(Comics ohne eigene Manga-Me-Figur) + erster Seed-Content. Damit der
Marktplatz nicht leer ist, kamen mehrere fertige Comics dazu:
„Der letzte Leuchtturmwärter" (sauberer V2-Pfad, artefaktfrei),
„Pfannkuchen für den Drachen" (Kinder, 10 Panels, speech-Dialog).
2. Datenmodell für reichere Comics. audience (Zielgruppe) +
speech[] (reicherer Dialog statt einzelnem dialogue-String) +
~10 Panels als Norm. Zieht sich durch DB (apps/api/src/db ist mit 22%
top), Routes und UI.
3. comicello-deck-Pipeline. Ein Pipeline-Treiber + Skill zum
Batch-Erzeugen von Comics (6 Comics: 10 Panels, audience, speech). Der
Treiber härtet jeden Panel-Prompt gegen gebackenes Lettering —
verhindert, dass das Bildmodell Text/Sprechblasen direkt ins Bild
rendert (das soll als echter UI-Layer drüber, nicht eingebrannt). Plus
ein Re-Render-Tool für bestehende Specs.
4. Marktplatz-UI-Politur. Audience als Badge + Filter,
Altersgruppen-Chip-Reihe (nutzt ?audience=), Story-Cover, Preis-Badge,
Live-Suche, Trefferzahl. Story-Cover-Subquery-Fix: die
Outer-Korrelation musste voll qualifiziert werden (klassische
korrelierte-Subquery-Falle in Drizzle/SQL). Dazu globale
PillNavigation + Feedback im Nav, kompaktere Filter (max 3 Spalten).
Install-Flow-Iteration: erst kompakter Install-Prompt oben rechts
neben dem Konto, dann bewusst aus dem Floating-Popup in die
Einstellungen verschoben (weniger aufdringlich), schließlich auf den
geteilten shared-pwa-Helper umgestellt — drei Commits, die zeigen,
wie der Install-Einstieg vom Popup zur ruhigen Settings-Option
wanderte. Zum Schluss: Header-Avatar zieht das Ökosystem-Profilbild
(Stufe 1).