19 KiB
Projektstatus
Aktueller Umfang
Etappe 1 bis Etappe 5 sind abgeschlossen. Architektur, Gesamtdatenmodell, Anmeldung, Rollen, persistente Inhaltsbearbeitung, Sendungsplanung, Live-Steuerung, Präsentationsausgabe und lokaler Betriebsweg sind dokumentiert. Etappe 6 wurde nicht begonnen.
Verwaltungskorrektur 0.5.11
- der Werkzeugdialog bleibt nach dem Laden der Verwaltungsseite geschlossen und wird erst durch „Werkzeug hinzufügen“ oder die Bearbeitung eines vorhandenen Werkzeugs als modaler Dialog eingeblendet
- die Iconauswahl der Themenverwaltung bleibt auch in der rechten Desktop-Spalte vollständig innerhalb des sichtbaren Browserbereichs
- ein Browser-Regressionscheck sichert den geschlossenen Ausgangszustand ab
Etappe 6 bleibt unverändert unbegonnen.
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/defaultmit 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#67DDE8und 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-sqlite313.0.3 - Playwright 1.64.1 mit Chromium 156.0.8078.4 (Fallback-Build für Ubuntu 24.04)