555 lines
32 KiB
Markdown
555 lines
32 KiB
Markdown
# Projektstatus
|
||
|
||
## Aktueller Umfang
|
||
|
||
Etappe 1 bis Etappe 7 sind abgeschlossen. Architektur, Gesamtdatenmodell,
|
||
Anmeldung, Rollen, persistente Inhaltsbearbeitung, Sendungsplanung,
|
||
Live-Steuerung, Präsentationsausgabe, unveränderliche Sendungshistorie,
|
||
Archiv, sichere Lesefreigaben, RSS-Import und technische REST-Zugänge sind
|
||
dokumentiert.
|
||
|
||
## Bedienkorrekturen 0.7.2
|
||
|
||
- Der RSS-Importeingang ist eine kompakte Katalogfläche. Die eigentliche Auswahl
|
||
öffnet einen responsiven Dialog mit kombinierbaren Quellenfiltern, 20 Beiträgen
|
||
pro Seite, tastaturbedienbaren Auswahlkarten und einer festen bewussten
|
||
Übernahme. Auswahl bleibt beim Filtern und Blättern erhalten; importierte oder
|
||
verworfene Beiträge verschwinden über den bestehenden persistenten Status.
|
||
- Das Live-Menü trennt Sendungssteuerung, Ansicht, Lesefreigaben,
|
||
OBS-Ausgabekanal und Navigation. Pause/Fortsetzen und beide Timerresets liegen
|
||
bei den Zeitflächen. Der Menüstatus unterscheidet Entwurf, Bereit, Läuft,
|
||
Pausiert, Lauf beendet und historischen Abschluss; der OBS-Bereich bleibt bis
|
||
zur bewussten Aktion eingeklappt.
|
||
- Feedquellen und technische Zugänge verwenden dieselben Katalogkarten und
|
||
Dialoggrundlagen wie Werkzeuge. Beide lassen sich anlegen und bearbeiten;
|
||
Feeds behalten Abruf/Löschen, Zugänge ihren sofortigen Widerruf. Ein neuer
|
||
API-Token wird im Dialog einmalig angezeigt und kann direkt kopiert werden.
|
||
|
||
Geprüft wurden 60 von 60 Verhaltenstests, Lint, Typprüfung, Produktionsbuild und
|
||
20 von 20 Chromium-Abläufe. Der neue Ablauf prüft RSS-Auswahl über mehrere
|
||
Quellen und Seiten, Übernahme ohne erneutes Angebot, Feed- und Zugangsanlage
|
||
samt Bearbeitung und Tokenkopie. Das Live-Menü wurde laufend, pausiert und
|
||
beendet sowie bei kleinem Desktopfenster und mobil geprüft. Die betroffenen
|
||
Flächen wurden in hellem und dunklem Farbschema kontrolliert. Andere Browser und
|
||
echte Mobilgeräte bleiben offen.
|
||
|
||
## Fehlerkorrekturen 0.7.1
|
||
|
||
- Explizite Abschnittsdauern werden während der Live-Regie nach Änderungen
|
||
synchronisiert. Erledigte oder übersprungene Pieces lassen sich bewusst
|
||
wiederaufnehmen; frühere Abschnitts- und Gesamtzeiten bleiben dabei erhalten.
|
||
- Der mobile Ablauf liegt innerhalb eines isolierten Live-Containers, lange
|
||
Metadaten verbreitern die Regie nicht mehr und das Sheet ist am mobilen
|
||
Viewport verankert. `viewport-fit=cover`, Standalone-Metadaten und Manifest
|
||
aktivieren Safe Areas auch beim Start vom Home-Bildschirm. Sendungskarten
|
||
stapeln ihre Inhalte auf kleinen Bildschirmen eindeutig.
|
||
- Die Vorbereitung liegt als eigener Status- und Aufwandsnapshot an der konkreten
|
||
Einplanung. Vorbereitende Fundus-Pieces lassen sich planen; Originaländerungen,
|
||
Duplikation und bewusste Aktualisierung folgen der bestehenden Snapshotregel.
|
||
Usage-Titel, Sendung, Abschnitt, Termin und Themenicons führen direkt in den
|
||
Usage-Editor; „sendefertig“ entfernt die Fassung aus der Übersicht.
|
||
- Text, Nur Bild, Linkvorschau und Video besitzen in Fundus- und Usage-Editor
|
||
kontextsensitive Felder und Vorschauen. Ausgeblendete Werte bleiben beim
|
||
Moduswechsel erhalten.
|
||
- Die Iconsuche fokussiert innerhalb der öffnenden Klick-/Tastaturaktion das
|
||
Suchfeld. RSS-Feeds und technische Zugänge verwenden gestaltete Formfelder.
|
||
- Lesefreigaben öffnen nach Serverantworten wieder mit dem einmalig sichtbaren
|
||
Link, bieten Kopieren und sichere Ersatzlinks. Ersatzlinks invalidieren den
|
||
alten Token und dessen Gastsitzungen. Die Verwaltung zeigt Freigaben direkt
|
||
vor dem Werkzeugkatalog; der Dialog besitzt nur eine gestaltete Glasfläche.
|
||
Gast- und historische Abschnitte besitzen äußere Karten mit Innenabstand.
|
||
|
||
Geprüft wurden 60 von 60 Verhaltenstests, Lint, Typprüfung, Produktionsbuild und
|
||
19 von 19 Chromium-Abläufe. Die Browsermatrix öffnete beide Piece-Editoren,
|
||
Sendungsübersicht, Verwaltung und Freigabedialoge, Gastansicht sowie Live-Regie
|
||
bei Desktop- und Mobilbreiten. Safari und die installierte Webapp auf einem
|
||
echten iOS-Gerät bleiben mangels Gerät getrennt offen.
|
||
|
||
## RSS-Import und externe Assistenz 0.7.0
|
||
|
||
- Barkeeper verwalten RSS-/Atom-Feeds mit Standardkategorie, Aktivierung und
|
||
Abrufintervall; manueller Abruf und ein begrenzter Prozess-Scheduler verwenden
|
||
dieselbe Fehler- und Dublettenlogik.
|
||
- Feedabrufe prüfen Protokoll, Port, DNS und Redirects, begrenzen Laufzeit,
|
||
Antwortgröße und Eintragszahl und lassen Fehler anderer Feeds unberührt.
|
||
- Fremdes HTML wird entfernt. Beiträge bleiben mit stabiler Herkunft im
|
||
getrennten Importeingang, bis die Redaktion sie auswählt, kategorisiert und
|
||
als normale Pieces übernimmt oder dauerhaft verwirft.
|
||
- `/api/v1` bietet Pieces und Sendungen über gehashte, widerrufbare technische
|
||
Bearer-Tokens mit reinen Lese- oder Lese-/Schreibrechten an. Mutationen nutzen
|
||
bestehende Dienste, Audit-Ereignisse, Revisionen und persistente
|
||
Idempotenzschlüssel.
|
||
- Die maschinenlesbare Beschreibung liegt unter `/api/v1/openapi.json`; eine
|
||
ChatGPT-/Codex- oder andere konkrete Client-Anbindung wurde nicht eingerichtet.
|
||
- Migration `0018_rss_and_api.sql` ergänzt ausschließlich additive Tabellen und
|
||
Indizes. Sendewerk bleibt ohne KI und ohne konfigurierte Feeds vollständig
|
||
nutzbar.
|
||
|
||
Geprüft wurden 58 Verhaltenstests, Typprüfung, Produktionsbuild, Dependency-
|
||
Audit, vier RSS- und zwei Zugangssicherheitstests sowie ein echter HTTP-Rundlauf
|
||
lesen → anlegen → idempotent wiederholen → ändern → erneut lesen → einplanen →
|
||
sortieren. Desktop-Verwaltung und mobiler Eingang wurden in Chromium ohne
|
||
Konsolenfehler geprüft. In der bestehenden Gesamtmatrix waren 16 von 18 Abläufen
|
||
erfolgreich; die bereits bekannte Live-Zeitanzeige und der Ablauf
|
||
Abschluss/Freigabe schlugen weiterhin fehl. Der globale Lintlauf bleibt an acht
|
||
vorhandenen Formatierungsabweichungen außerhalb dieser Etappe offen.
|
||
|
||
## Wartungsrelease 0.6.1
|
||
|
||
- Abschnitts-Countdown, mobile Live-Kopfzeile und Ablauf-Sheet wurden korrigiert; die doppelte Piece-Positionsanzeige entfällt.
|
||
- Optionaler Vorbereitungsaufwand, kompakte Vorbereitungsliste und Abschnitts-Twitch-Tags sind additiv persistiert.
|
||
- Der Präsentationsmodus `image` gibt ausschließlich das bewusst gewählte Snapshot-Medium aus.
|
||
- Mobile Eingaben, Iconsuche, Sendungskarten und Gastabstände wurden angepasst.
|
||
- Lesefreigaben verwenden einen gemeinsamen Dialog und sind auch aus der Live-Regie erreichbar.
|
||
|
||
Geprüft wurden 52 Verhaltenstests, Typprüfung und Produktionsbuild. Im zweiten
|
||
Chromium-Lauf waren 14 Abläufe erfolgreich; zwei Abläufe schlugen vor dem
|
||
Zeitlimit fehl, zwei weitere wurden nicht mehr ausgeführt. Die vollständige
|
||
Browsermatrix bleibt damit offen.
|
||
|
||
## Abschluss, Archiv und Freigaben 0.6.0
|
||
|
||
- das Ende eines Live-Laufs bleibt wiederaufnehmbar; erst der getrennte,
|
||
idempotente Abschluss friert Sendung, Kategorien, tatsächliche Verwendungen
|
||
und Zeiten unveränderlich ein
|
||
- der Abschlussdialog zählt gesendete, übersprungene und offene Pieces getrennt
|
||
und archiviert Fundus-Originale ausschließlich nach bewusster Auswahl
|
||
- die Verwendungshistorie wird beim Abschluss materialisiert; übersprungene
|
||
Verwendungen und die Reservebank zählen nicht als gesendet
|
||
- abgeschlossene Sendungen liegen getrennt im Archiv, sind intern nur lesbar und
|
||
lassen sich mit neuen IDs, offenen Verwendungen und ohne Live- oder
|
||
Freigabezustand in einen neuen Entwurf duplizieren
|
||
- Barkeeper verwalten gehashte Leselinks direkt in der Sendungsbearbeitung und
|
||
gesammelt in der Verwaltung; Umfang, Passwort und Ablauf lassen sich ändern,
|
||
Freigaben vollständig löschen
|
||
- Entwürfe, bereite und laufende Sendungen lassen sich bereits freigeben;
|
||
Planänderungen werden beim nächsten Gastaufruf sichtbar, während der Abschluss
|
||
denselben Link auf den unveränderlichen historischen Stand festlegt
|
||
- passwortgeschützte Freigaben verwenden kurzlebige, gehashte Gast-Sitzungen und
|
||
begrenzen Fehlversuche pro Link und Clientadresse
|
||
- Gastseiten liefern genau eine positiv projizierte Sendung ohne interne IDs,
|
||
Originaldaten oder nicht freigegebene Felder; geschützte Präsentationsmedien
|
||
prüfen Umfang, Passwortsitzung, Ablauf und Widerruf bei jedem Direktaufruf
|
||
- bestehende abgeschlossene Sendungen werden durch Migration `0015` mit
|
||
eingefrorener Historie übernommen; Migration `0016` erweitert bestehende
|
||
Freigaben verlustfrei auf noch nicht abgeschlossene Sendungen
|
||
|
||
Die lokale Prüfmatrix umfasst 52 Verhaltenstests und 18 Chromium-Abläufe.
|
||
Abschluss, Archiv, historische Nur-Lese-Ansicht, Passwortfreigabe,
|
||
Scope-Begrenzung, direkter Medienzugriff, fremde IDs, Gast-Schreibversuch und
|
||
Widerruf wurden zusätzlich in einem anonymen Browserkontext geprüft. Der
|
||
erweiterte Ablauf prüft außerdem offene Sendungen, aktuelle Planänderungen,
|
||
Bearbeiten und Löschen in beiden Barkeeper-Oberflächen sowie Desktop- und
|
||
Smartphone-Layout.
|
||
|
||
## Live-Regie und Sendungskalender 0.5.12
|
||
|
||
- die Live-Kopfleiste zeigt Classic-Regular-Icons für Ausgabe, Gesamtzeit,
|
||
Abschnitt, Menü und Ablauf; Pause/Fortsetzen liegt zusätzlich als direkter,
|
||
beschrifteter Iconbutton neben der Abschnittszeit
|
||
- Sendungskarten ordnen Fakten auf kleinen Bildschirmen wieder horizontal an und
|
||
vermeiden dadurch die zuvor unnötig hohe Kartenfläche
|
||
- Reparaturmigration `0014_live_show_timer_repair.sql` ergänzt fehlende
|
||
Gesamttimertabellen auch dann, wenn `0013` bereits in einem früheren
|
||
Zwischenstand protokolliert wurde; der 500-Fehler beim Laden von `/live` ist
|
||
damit behoben
|
||
- gemeinsame persistente Pause für Piece-, Abschnitts- und Gesamttimer;
|
||
Fortsetzen zählt Pausenzeit weder nach Navigation noch nach Reload mit
|
||
- getrennte bestätigungspflichtige Resets für Abschnitts- und Gesamtzeit, ohne
|
||
Piece-Status, Ablaufposition, Restplanung oder Präsentationsstand zu verändern
|
||
- umschaltbare, lokal gemerkte Anzeige von gelaufener Gesamtzeit und geschätzter
|
||
Restzeit; Abschnitte ohne eigene Planung werden kenntlich gemacht und
|
||
Abschnitts- sowie Piece-Dauern nie doppelt addiert
|
||
- explizite Sendungssteuerung für Entwurf, Bereit, Start, Pause, Ende,
|
||
Wiederaufnahme eines beendeten Laufs und klar getrennten neuen Durchlauf
|
||
- optionales privates Markdownfeld „Interaktion“ zwischen Moderation und
|
||
Überleitung; Original, Vorlage, Sendungsfassung, Duplikation und bewusste
|
||
Fundus-Aktualisierung führen jeweils unabhängige Snapshots
|
||
- „Interaktion“, Timer- und Sendungssteuerung bleiben aus der öffentlichen
|
||
heinzlive-Projektion ausgeschlossen
|
||
- fokussierte private Liveansicht ohne normale App-Seitenleiste oder mobile
|
||
Bottomnavigation; Planung, Theme, Schriftgröße, Zeitdarstellung und
|
||
Ausgabekanal bleiben über das kompakte Regiemenü erreichbar
|
||
- zweizeilige feste Kopfzeile: Abschnitt und „Danach“ teilen sich die erste
|
||
Zeile mit dem Menü; Ausgabe, Abschnittscountdown und Ablaufschalter bilden die
|
||
zweite Zeile. Der Sendungsname steht platzsparend im Menü
|
||
- lange Abschnitts- und Folgetitel sind regulär einzeilig gekürzt und lassen
|
||
sich per Klick oder Tastatur vollständig aufklappen
|
||
- feste, auf vier Kernaktionen reduzierte Fußleiste mit Zurück, Präsentieren,
|
||
Überspringen und kontextgerechtem Erledigen; das Leeren der Präsentation liegt
|
||
direkt beim Ausgabezustand
|
||
- aktuelle Moderation und schmale Ablaufspalte bleiben auch bei 900 × 450 Pixeln
|
||
nebeneinander; beide Arbeitsflächen scrollen unabhängig, ohne die ganze Seite
|
||
oder einzelne Textblöcke zu verschachtelten Scrollcontainern zu machen
|
||
- bei niedrigen Desktopfenstern werden Abstände und Bedienleisten anhand der
|
||
verfügbaren Höhe verdichtet, ohne Text oder Gesamtoberfläche zu skalieren
|
||
- auf schmalen Ansichten bleibt das Piece die Hauptfläche und der Ablauf öffnet
|
||
als separates, safe-area-fähiges Sheet mit Fokusführung und Escape-Schließen
|
||
- kompakter aufklappbarer Ablauf mit ausgeschriebenen Zuständen, lokaler
|
||
Betrachtung jedes Pieces, automatisch sichtbarem aktuellen Eintrag und
|
||
zusammengeklappter Reserve; Sortierung bleibt in einer kompakten Aktion
|
||
erreichbar, dauerhafte Sortierpfeile entfallen
|
||
- die Leseposition wird je Piece lokal erhalten; ein erstmals gewähltes Piece
|
||
beginnt oben statt an der Position des vorherigen Textes
|
||
- Piece-Position, Titel und Zeit teilen sich einen kompakten Piece-Kopf, ohne die
|
||
einstellbare Moderationsschrift zu verkleinern
|
||
- das Regiemenü liegt als viewportgebundenes Popover sicher über den Glasflächen,
|
||
bleibt scrollbar erreichbar und schließt per Escape oder Außenklick mit
|
||
Fokus-Rückkehr zum Auslöser
|
||
- Recherche, Quellen, Werkzeuge und eigene Notizen erscheinen nur bei Bedarf;
|
||
leere Moderationsbereiche werden nicht dargestellt
|
||
- Zurück und direkte Ablaufwahl verändern weder tatsächliches Live-Piece noch
|
||
Status, Timer oder öffentliche Ausgabe; Überspringen und Erledigen bleiben bei
|
||
einem nur betrachteten früheren Piece gesperrt
|
||
- Liste und Kalender teilen dieselben Sendungsdaten; der Desktop zeigt ein
|
||
vollständiges Monatsraster, das Smartphone eine chronologische Monatsagenda
|
||
- Monatswechsel, heutiger Tag, mehrere Termine pro Tag und Sendungen ohne Termin
|
||
bleiben sichtbar; die bevorzugte Listen- oder Kalenderansicht wird je Konto
|
||
gespeichert
|
||
- die Wiederaufnahmeaktion erscheint nur bei tatsächlich unterbrochenem
|
||
Live-Stand statt während eines laufenden Pieces
|
||
|
||
Etappe 6 bleibt unverändert unbegonnen.
|
||
|
||
Die bestehende lokale Prüfmatrix umfasst 44 Verhaltenstests und 17
|
||
Chromium-Abläufe. Die nachträgliche Icon-, Pause- und Kartenkorrektur wurde
|
||
zusätzlich mit Typprüfung, sechs Live-Verhaltenstests, Produktionsbuild und
|
||
gezielten Chromium-Abläufen bei 670 × 450, 390 × 700 und 656 × 400 Pixeln
|
||
geprüft. Die vollständige Matrix wurde dafür nicht erneut ausgeführt.
|
||
Reales OBS, echte YouTube-/TikTok-Wiedergabe sowie Safari auf einem iOS-Gerät
|
||
bleiben mangels verfügbarer Umgebung offen.
|
||
|
||
## Verwaltungskorrektur 0.5.11
|
||
|
||
- der Werkzeugdialog bleibt beim Laden geschlossen und öffnet erst nach einer
|
||
bewussten Aktion
|
||
- die Themen-Iconauswahl bleibt bei mobilen und breiten Ansichten vollständig
|
||
innerhalb des Viewports
|
||
|
||
## Editor-Erlebnis 0.5.10
|
||
|
||
- direkte, tastaturbedienbare Titelbearbeitung in Fundus- und Sendungsfassungen
|
||
sowie gemeinsame kompakte Auswahlflächen für Themen und Werkzeuge
|
||
- vollständiger lokaler Classic-Regular-Katalog mit 3.671 Icons für Navigation,
|
||
Aktionen sowie frei wählbare Themen- und Werkzeugicons; durchsuchbare
|
||
Metadaten und SVG-Sprite vermeiden externe Laufzeitabhängigkeiten
|
||
- kompakter Werkzeugkatalog nach dem Muster der Themenverwaltung; Anlegen und
|
||
Bearbeiten teilen einen responsiven Dialog mit gestalteter Icon- und
|
||
Formatauswahl, bestehende Zuordnungen und Deaktivierung bleiben erhalten
|
||
- Präsentationsbilder werden bewusst aus aktiven Piece-Medien ausgewählt und als
|
||
unveränderlicher Usage-Snapshot eingeplant; private Bilder werden dadurch
|
||
weder implizit noch nach späterer Originaländerung öffentlich
|
||
- entfernte Medien bleiben für bestehende Sendungsfassungen erhalten, während
|
||
neue Einplanungen nur aktive Medien übernehmen
|
||
- wiederherstellbares Soft Delete für Pieces sowie geschütztes Entfernen offener,
|
||
nie live gelaufener Verwendungen und Abschnitte
|
||
- kompaktere Fundus-, Eingangs-, Archiv-, Vorlagen- und Sendungsansichten mit
|
||
mobilen, touch- und tastaturbedienbaren Alternativen
|
||
- transparente leere heinzlive-Ausgabe ohne sichtbaren Renderer oder
|
||
Verbindungsstatus; die Steuerung kann eine aktive Präsentation unabhängig vom
|
||
aktuellen Piece leeren
|
||
|
||
Etappe 6 bleibt unverändert unbegonnen. Die lokale Prüfmatrix umfasst 40
|
||
Verhaltenstests und 16 Chromium-Abläufe. Reales OBS, echte
|
||
YouTube-/TikTok-Wiedergabe sowie Safari auf einem iOS-Gerät bleiben mangels
|
||
verfügbarer Umgebung offen.
|
||
|
||
## Live-Werkbank 0.5.9
|
||
|
||
- globale Favoriten am Fundus-Original mit stabiler Vorsortierung; verwendete
|
||
Favoriten bleiben sichtbar, geplante Favoriten respektieren weiterhin den
|
||
Einplanungsfilter
|
||
- Barkeeper-Werkzeugkatalog mit Start-URL, Beschreibung, passenden Formaten und
|
||
verlustfreier Deaktivierung; Arbeitslink und Notiz bleiben für die gesamte
|
||
Thekencrew im gemeinsamen Piece- und Verwendungseditor bearbeitbar
|
||
- vollständige, voneinander unabhängige Usage-Snapshots für Quellen, Werkzeuge
|
||
und alphabetisch stabilisierte Themen; spätere Original- oder
|
||
Katalogänderungen wirken erst nach bewusster Aktualisierung aus dem Fundus
|
||
- kompakte private Materialliste in der Live-Steuerung mit Arbeitslink vor
|
||
Start-URL und verständlichem Zustand ohne URL
|
||
- responsive Themen-Dachzeile in der Publikumsausgabe; ohne Thema bleibt sie
|
||
vollständig aus, während Präsentations- und interner Titel getrennt bleiben
|
||
- persistenter Abschnitts-Countdown für positive explizite Abschnittsdauern mit
|
||
eingefrorenem Soll, sekündlicher Anzeige, Goldwarnung ab zwei Minuten und
|
||
roter Überziehung ohne Ton, Blinken oder automatische Weiterschaltung
|
||
|
||
Etappe 6 bleibt unverändert unbegonnen. Reales OBS und echte
|
||
YouTube-/TikTok-Wiedergabe bleiben mangels verfügbarer Umgebung offen.
|
||
|
||
Die lokale Prüfmatrix umfasst 37 Verhaltenstests und 16 Chromium-Abläufe.
|
||
Desktop, Smartphone, Light/Dark, Favoritenfilter, Werkzeug-Deaktivierung,
|
||
Snapshot-Stabilität, private Live-Materialien, öffentliche Themenprojektion und
|
||
persistente Abschnittszeit wurden geprüft.
|
||
|
||
## Redaktionelle Arbeitsabläufe 0.5.8
|
||
|
||
- persistente Piece-Vorlagen als unabhängige, revisionierte Snapshots; eigene
|
||
Vorlagen lassen sich aus Fundus-Pieces speichern, erneut verwenden und löschen
|
||
- atomare, idempotente Piece-Neuanlage direkt in einer Sendung einschließlich
|
||
Einplanung; fehlgeschlagene Schritte hinterlassen weder Piece noch Verwendung
|
||
- getrennte interne und öffentliche Titel an Piece und Verwendung; ein leerer
|
||
Präsentationstitel fällt kontrolliert auf den internen Titel zurück
|
||
- präzises Entfernen einzelner Verwendungen mit Bestätigung sowie zusätzlicher
|
||
Drag-and-drop-Rückgabe in den Fundusbereich
|
||
- Auswahl jedes konkreten Ablauf-Pieces in der Live-Steuerung, einschließlich
|
||
erstem und bereits erledigtem Eintrag
|
||
- stabiler OBS-Ausgabekanal `/heinzlive/default` mit geheimem URL-Fragment,
|
||
HttpOnly-Cookie-Austausch und ausdrücklicher Schlüsselrotation
|
||
- öffentliche Ausgabe als Positivliste: implizite Piece-Quellen und private
|
||
Uploads werden nicht mehr veröffentlicht; nur ausdrücklich gewählte
|
||
Link-/Videoquellen und deren erlaubte Vorschau bleiben sichtbar
|
||
|
||
Die vollständige lokale Prüfmatrix umfasst 33 Verhaltenstests und 15
|
||
Chromium-Abläufe. Desktop, Mobil, Light/Dark, Tastatur- und Touchalternativen,
|
||
Planung, Live-Ausgabe sowie anonyme Ausgabedaten wurden geprüft. Reales OBS und
|
||
echte YouTube-/TikTok-Wiedergabe bleiben mangels verfügbarer Umgebung offen.
|
||
|
||
## Materialkorrektur 0.5.7
|
||
|
||
- statische Gold-/Blauviolettlichter so positioniert und verstärkt, dass sie im
|
||
eigentlichen Arbeitsbereich statt fast ausschließlich hinter der Navigation
|
||
sichtbar werden
|
||
- gemeinsame Materialtokens auf Außenglas, dunkle Innenfläche und tiefe
|
||
Ablaufkarte reduziert; verschachtelte Abschnitte, Pieces und Aktionsgruppen
|
||
werden nach innen dunkler statt heller und blaugrau
|
||
- aktive Editortabs transparent goldgetönt und private Recherche sowie
|
||
Quellen-/Materialbereiche auf transparente Nachtblauflächen zurückgeführt
|
||
- Dialog-Backdrop von starker Abdunklung und Unschärfe auf eine leichtere
|
||
Trennung reduziert, sodass die Lichtstimmung bei geöffnetem Editor erhalten
|
||
bleibt
|
||
- deckende Schreibfelder, Goldfokus, Lightmode, Mobilansicht und lesbare
|
||
Komponentenfüllungen ohne verfügbaren Blur bleiben erhalten
|
||
|
||
Die berechneten Hintergründe, Transparenzen, Filter und Begrenzungseigenschaften
|
||
wurden vor und nach der Korrektur in Chromium kontrolliert. Sendungsplanung,
|
||
Sendungstext und Recherche wurden bei 1440 × 1000 und 390 × 844 Pixeln in beiden
|
||
Themes visuell geprüft.
|
||
|
||
## Oberflächenkorrektur 0.5.6
|
||
|
||
- sichtbare statische Gold- und Blauviolettlichter hinter den halbtransparenten
|
||
Navigations- und Editorflächen
|
||
- klarere Glaswirkung in Navigation sowie Kopf, Tabs und Fuß des Piece-Editors;
|
||
Schreibflächen bleiben deckend, ruhig und goldfokussiert
|
||
- Fundus mit dauerhaft sichtbarer Suche und Neuanlage, aufklappbaren Zusatzfiltern
|
||
und inhaltsorientierten, vollständig anklickbaren Zeilen
|
||
- vorhandene Vorschaubilder beziehungsweise kleine Symbolplatzhalter sowie
|
||
gebündelte Menüs für Duplizieren und Archivieren
|
||
- bestehende Server-Actions, Filterlogik und Editor-Bereiche unverändert
|
||
|
||
Geprüft wurden `npm run check` sowie Fundus und geöffneter Piece-Editor in
|
||
Chromium bei 1440 × 1000 und 390 × 844 Pixeln in Light/Dark. Die gezielte
|
||
Kontrolle umfasste Tastaturöffnung, Menüs, Fokus, Glaswerte, Seitenüberlauf und
|
||
visuell geprüfte Screenshots. Produktionsbuild und vollständige Testmatrix wurden
|
||
gemäß Auftrag nicht ausgeführt.
|
||
|
||
## Oberflächenkorrektur 0.5.5
|
||
|
||
- dunkle Grundfläche mit sehr zurückhaltenden Gold-/Cyan-Lichtfeldern innerhalb
|
||
der Anwendung statt gleichmäßig deckender Blauflächen
|
||
- Navigation, große Arbeitsflächen und Piece-Dialog als dunkles beziehungsweise
|
||
helles Glas mit feiner Lichtkante, Unschärfe und ruhigem Schatten
|
||
- Gold für Dialogkontur, Fokus, aktive Zustände und Hauptaktionen; Cyan nur noch
|
||
für ergänzende redaktionelle Hinweise und Links
|
||
- klar abgegrenzte, weitgehend deckende Schreibfelder mit Goldfokus, Platzhaltern
|
||
und nach Textrolle abgestuften Höhen
|
||
- bestehende nachträgliche CSS-Override-Schicht entfernt und die Gestaltung in
|
||
gemeinsame Tokens und ursprüngliche Komponentenregeln zurückgeführt
|
||
|
||
Geprüft wurden Typen, Produktionsbuild sowie gezielte Chromium-Ansichten von
|
||
Eingang, Fundus, Piece-Editor, Sendungsplanung und Live-Steuerung bei 1440 × 1000
|
||
und 390 × 844 Pixeln in beiden Themes. Die vollständige Unit- und E2E-Matrix
|
||
bleibt wie beauftragt Schritt 3 vorbehalten.
|
||
|
||
## Oberflächenrelease 0.5.4
|
||
|
||
- gemeinsame Light-/Dark-Tokens für ruhige Arbeitsflächen, Cyan als
|
||
Interaktionsfarbe und Gold für die jeweilige Hauptaktion
|
||
- Darkmode im heinzlive-Farbraum mit Hintergrund `#0B1220`, Flächen `#152238`,
|
||
Text `#FFF7E8`, Sekundärtext `#A9B6C8`, Gold `#E7B957`, Cyan `#67DDE8` und
|
||
Grenzen `#30435C`
|
||
- vereinheitlichte Navigation, Formulare, Meldungen, Listen, Sendungsplan,
|
||
Live-Steuerung und Piece-Dialoge ohne Änderung der Bedienlogik
|
||
- kompaktere Planzeilen mit sichtbarem Drag-Griff und waagerechter Aktionsgruppe;
|
||
Klick-, Touch- und Tastaturalternativen bleiben erhalten
|
||
- verständliche Kontextnamen „Fundusfassung“ und „Sendungsfassung“ sowie weniger
|
||
technische Erläuterungen im redaktionellen Arbeitsfluss
|
||
- dezente Speicheraktion im gespeicherten Zustand und hervorgehobene Aktion bei
|
||
ungespeicherten Änderungen, Fehlern oder Konflikten
|
||
|
||
Für diesen Design-Release wurden `npm run check`, `npm run build` und gezielte
|
||
Chromium-Sichtkontrollen auf Eingang, Fundus, Piece-Editor, Sendungsplan und
|
||
Live-Steuerung bei 1440 × 1000 sowie 390 × 844 Pixeln in Light/Dark ausgeführt.
|
||
Konsolenfehler und horizontaler Seitenüberlauf traten dabei nicht auf. Die
|
||
vollständige Unit- und E2E-Matrix wurde für die rein visuelle Änderung bewusst
|
||
nicht erneut ausgeführt; die fachlichen Nachweise der Etappen 1 bis 5 bleiben
|
||
unverändert.
|
||
|
||
## Umgesetzter Stand Etappe 1
|
||
|
||
- SvelteKit-/TypeScript-Monolith mit Node-Adapter
|
||
- konfigurierbare lokale SQLite- und Uploadpfade
|
||
- wiederholbare Migrationen und realistischer Seed
|
||
- persistentes Light-/Dark-/System-Theme
|
||
- responsive Navigation und gekennzeichnete Vorschauen für Fundus,
|
||
Sendungsbau und Live-Modus
|
||
- kompakte Desktop-Arbeitsansicht mit fester Seitenleiste, Fundusliste und
|
||
zweigeteiltem Sendungsbau; auf schmalen Ansichten Umschaltung statt Engpass
|
||
- Healthcheck, Produktionsstart und frühes Cloudron-Paket
|
||
- getrennte Unit-/Integrations- und Browser-Testdaten
|
||
|
||
Die Vorschauen lesen echte Daten aus SQLite. Suche und mobile Pane-Umschaltung
|
||
funktionieren lokal; redaktionelle Schreiboperationen bleiben bewusst den
|
||
späteren Etappen vorbehalten.
|
||
|
||
Die abschließende Oberflächenüberarbeitung von Etappe 1 reduziert große
|
||
Seitenköpfe und verschachtelte Karten, bündelt den Schreibschutzhinweis
|
||
aufklappbar und hält Entwicklungsinformationen aus der Arbeitsoberfläche heraus.
|
||
Eingang und Archiv zeigen kurze Leerzustände, die Verwaltung trennt
|
||
Abschnittskategorien, Formate und Themen kompakt.
|
||
|
||
Die abschließende responsive Prüfung verdichtet Seitenleiste, Navigation und
|
||
Funduszeilen weiter. Mobile Funduskarten sind intern einspaltig; lange Titel,
|
||
Beschreibungen und Metadaten bleiben ohne feste Kartenhöhe sichtbar. Suche und
|
||
Statusfilter sind gleich hoch, und die Filtergruppe wird nur als Ganzes
|
||
umgebrochen.
|
||
|
||
## Noch nicht umgesetzt
|
||
|
||
Archivabschluss, Freigaben, RSS und API. Diese späteren Bereiche dürfen nicht
|
||
als bereits implementiert verstanden werden.
|
||
|
||
## Umgesetzter Stand Etappe 2
|
||
|
||
- einmalige Erstadmin-Einrichtung mit externem Betreiber-Token
|
||
- Login und POST-Logout mit widerrufbaren Datenbanksitzungen
|
||
- Rollen Barkeeper und Thekencrew mit serverseitiger Prüfung
|
||
- Einladungen und Passwortreset über befristete, einmalige Links
|
||
- Kontensperrung mit sofortigem Entzug bestehender Sitzungen
|
||
- zeitfensterbasiertes Login-Rate-Limit ohne dauerhafte Kontensperre
|
||
- lokale Mail-Outbox als Vorgabe und explizit konfigurierbarer SMTP-Versand
|
||
- responsive Authentifizierungs- und Kontenverwaltungsoberflächen
|
||
|
||
## Umgesetzter Stand Etappe 3
|
||
|
||
- persistente Piece-Neuanlage aus leerem Entwurf oder drei redaktionellen Vorlagen
|
||
- Schnellaufnahme von Gedanken und HTTP-/HTTPS-Links im Eingang
|
||
- vollständiger Editor für Quellen, Dauer in Minuten, Status und getrennte
|
||
Einleitung, Recherche, Moderation, Überleitung und Präsentation
|
||
- serverseitig bereinigte Markdown-Vorschau
|
||
- unabhängige Themen, Formate und Abschnittskategorien mit Barkeeper-Verwaltung
|
||
- serverseitige Suche und Filter nach Status, Format, Thema und Abschnitt
|
||
- Autospeichern mit sichtbarem Zustand und Warten vor interner Navigation
|
||
- optimistische Revisionen verhindern unbemerktes Überschreiben
|
||
- Duplizieren einschließlich Quellen, Taxonomie und Bildern
|
||
- Archivieren und Wiederherstellen in den vorherigen Arbeitsstatus
|
||
- private Rasterbilder mit Größen-/Signaturprüfung und geschützter Auslieferung
|
||
- erweiterter Seed mit Eingangs-, Archiv-, Markdown- und Recherchebeispielen
|
||
- standardmäßig ausgeblendete gesendete Pieces mit verlinkter, aufklappbarer
|
||
Verwendungshistorie; gesendet bedeutet erledigt in abgeschlossener Sendung
|
||
- standardmäßig ausgeblendete Pieces, die in mindestens einer noch nicht
|
||
abgeschlossenen Sendung eingeplant sind, mit unabhängigem Sofortfilter
|
||
- Fundus-Originale und sendungsspezifische Verwendungen nutzen denselben
|
||
großzügigen Dialograhmen mit den Bereichen „Sendungstext“, „Recherche &
|
||
Quellen“ und „Präsentation“; der jeweilige Speicherkontext ist sichtbar und
|
||
Original sowie Verwendung bleiben getrennte Revisionsgrenzen
|
||
- Titel, Einleitung, Moderationsstichpunkte und Überleitung sind ohne
|
||
vorgeschaltete Lese-/Bearbeitungsschalter direkt beschreibbar; eine kleine
|
||
Markdown-Leiste ergänzt Formatierung ohne Änderung des Speicherformats
|
||
- Recherche, Quellen, verwendungseigene Notizen und Material sind in einem
|
||
Bereich gebündelt; öffentliche Texte, Darstellungswahl und tatsächliche
|
||
Vorschau stehen gemeinsam im Präsentationsbereich
|
||
- der Dialog bleibt innerhalb der Desktop-Fensterhöhe, hält Kopf,
|
||
Bereichsnavigation und Aktionen sichtbar und nutzt mobil die volle
|
||
Bildschirmfläche; Bereichswechsel hängen Eingaben nicht aus und merken die
|
||
jeweilige Scrollposition
|
||
- die Schnellaufnahme akzeptiert Gedanke oder URL, bleibt nach dem Ablegen im
|
||
Eingang und öffnet die Ausarbeitung erst über eine bewusste Aktion
|
||
|
||
Für diese gezielte Überarbeitung wurden `npm run check` sowie kurze
|
||
Chromium-Sichtkontrollen des Original- und Verwendungseditors bei 1440 × 1000
|
||
und 390 × 844 Pixeln ausgeführt. Dabei waren Dialoggrenzen, feste Bedienbereiche,
|
||
alle drei Arbeitsbereiche und horizontaler Überlauf unauffällig. Die vollständige
|
||
Unit-, E2E- und Build-Matrix ist gemäß Auftrag noch offen.
|
||
|
||
## Umgesetzter Stand Etappe 4
|
||
|
||
- Sendungsübersicht mit leerem Start, Standardablauf und Spieleabend-Vorlage
|
||
- frei benennbare, kategorisierte und sortierbare Abschnitte einschließlich
|
||
eigenständiger Spieleblöcke
|
||
- Einplanung ausschließlich sendefertiger Pieces als unabhängige Text- und
|
||
Dauerkopien; Mehrfachverwendung desselben Originals ist möglich
|
||
- showweite Reservebank, die nicht in Abschnitts- oder Gesamtdauer einfließt
|
||
- explizite Abschnittsdauer ersetzt die Piece-Summe statt sie zu addieren
|
||
- Bearbeiten, Entfernen sowie Verschieben innerhalb und zwischen Abschnitten
|
||
- zugänglicher Stift-Dialog für alle sendungsspezifischen Felder und Aktionen,
|
||
auf Desktop zweispaltig und auf kleinen Bildschirmen einspaltig scrollbar
|
||
- explizites Aktualisieren eines Verwendungssnapshots aus dem Original für
|
||
Titel, Dauer und Redaktionstexte bei erhaltenen Notizen und Live-Daten
|
||
- Duplizieren einer konkreten Einplanung direkt hinter dem Ausgangselement mit
|
||
erhaltenen Anpassungen, aber zurückgesetztem Live-Zustand
|
||
- Piece-Dauern werden im Editor in Minuten eingegeben und intern weiterhin als
|
||
ganze Sekunden gespeichert
|
||
- Drag-and-drop über eindeutige Griffe, auch direkt aus gefilterten Quellen,
|
||
mit positionsgenauer Einfügevorschau, transparentem Original und
|
||
gleichwertigen Klick-, Touch- und Tastaturaktionen
|
||
- Planungsmutationen ohne Dokumentreload mit lokalem Speicherzustand und
|
||
animierter Neusortierung der betroffenen Elemente
|
||
- unabhängige Sofortfilter für verwendete sowie in der aktuellen Sendung schon
|
||
eingeplante Originale einschließlich Reservebank
|
||
- kopierbare Twitch-Titel und Ankündigungstexte
|
||
- showweite optimistische Revision schützt Metadaten, Reihenfolge und Inhalte
|
||
vor unbemerktem parallelem Überschreiben
|
||
- realistischer Seed mit Standardablauf und eigenständigem Spieleabend
|
||
|
||
## Umgesetzter Stand Etappe 5
|
||
|
||
- fokussierte Moderationsansicht mit Prompter-Schrift, Einleitung, Moderation,
|
||
Überleitung und standardmäßig geschlossener privater Recherche
|
||
- ausblendbare Zeit- und Ablaufanzeige sowie persistente lokale Leseposition
|
||
- aktuelles und nächstes Piece samt Abschnitt und geplantem Zeitbedarf
|
||
- persistenter Live-Stand mit tatsächlichen Laufintervallen, Erledigen,
|
||
Überspringen, Zurück und Wiederaufnahme
|
||
- idempotente Live-Befehle verhindern doppelte Wirkung bei Wiederholung
|
||
- serverseitig geschützte Umsortierung offener Pieces und Reserveeinfügung
|
||
- explizite Präsentationsaktion; normale Live-Navigation verändert die Ausgabe
|
||
nicht
|
||
- getrennte, tokenisierte heinzlive-Ausgabe mit Polling, Verbindungsanzeige,
|
||
Präsentationstext, Quellen und erlaubten Bildern
|
||
- wählbare Text-, Linkkarten- und Videodarstellung aus genau einer vorhandenen
|
||
Piece-Quelle mit manuell korrigierbaren, persistenten Metadaten
|
||
- ausdrückliches serverseitiges Neuladen von Linkmetadaten über Metascraper mit
|
||
DNS-, Redirect-, Zeit-, Größen- und Privatnetzschutz
|
||
- validierte YouTube- und TikTok-IDs, offizielle Player-Iframes ohne Autoplay
|
||
sowie Linkkarten-Fallback für nicht unterstützte Videoquellen
|
||
- unveränderliche Präsentationssnapshots je Einplanung und explizite
|
||
Aktualisierung aus dem Fundus
|
||
- isolierte Präsentationstestansicht ohne Änderung des Live-Stands sowie
|
||
tokengebundene, serverseitig geschützte Proxys für externe Vorschaubilder
|
||
- Ausgabe-HTML, JSON und Medienzugriff enthalten keine Recherche,
|
||
Moderationsnotizen, eigenen Notizen, Kontodaten oder internen Dateipfade
|
||
|
||
## Bekannte offene Betriebsprüfung
|
||
|
||
Eine echte Cloudron-Installation samt Backup/Restore, Reverse-Proxy-Verhalten
|
||
und read-only Laufzeit konnte ohne bereitgestellten Cloudron-Server nicht
|
||
durchgeführt werden. Auch der lokale Container-Smoke-Test blieb offen, weil
|
||
auf der Prüfmaschine kein Docker-Daemon lief. Manifestkernfelder und
|
||
Startskript-Syntax wurden lokal geprüft.
|
||
|
||
Eine reale OBS-Browserquelle stand nicht zur Verfügung. Die tokenisierte
|
||
Präsentationsausgabe wurde stattdessen in einem anonymen zweiten Chromium-
|
||
Browserkontext einschließlich Bild, JSON-Filterung, Polling und sichtbarem
|
||
Verbindungsabbruch geprüft.
|
||
|
||
Die automatisierten Playerprüfungen fingen YouTube- und TikTok-Requests lokal
|
||
ab. URL-Erkennung, Iframe-Wechsel, Zeitmarkenübergabe und mobile Ausgabe sind
|
||
damit geprüft, nicht jedoch die reale Wiedergabe oder Verfügbarkeit der Anbieter.
|
||
|
||
## Verifizierte Umgebung
|
||
|
||
- Node.js 22.23.1, npm 10.9.8
|
||
- SvelteKit 3.1.0, Svelte 5.57.2, Vite 8.3.5
|
||
- SQLite-Treiber `better-sqlite3` 13.0.3
|
||
- Playwright 1.64.1 mit Chromium 156.0.8078.4 (Fallback-Build für Ubuntu 24.04)
|