Add persistent live controls and interaction notes
This commit is contained in:
1 parent
b1474bc33d
commit
fa17187af4
16 files changed
+882
-62
No files matched your search
@@ -463,3 +463,20 @@
|
||||
- `bash -n start.sh` und `git diff --check`: erfolgreich
|
||||
- reale OBS-Browserquelle, echte YouTube-/TikTok-Wiedergabe und Safari auf einem
|
||||
iOS-Gerät nicht ausgeführt; Anbieterrequests wurden lokal abgefangen
|
||||
|
||||
## Erweiterte Live-Steuerung 0.5.12
|
||||
|
||||
| Kriterium | Stand |
|
||||
| ---------------------------------------------- | ----------------------------- |
|
||||
| Gemeinsame persistente Pause | implementiert, nicht geprüft |
|
||||
| Abschnitts- und Gesamtreset bleiben unabhängig | implementiert, nicht geprüft |
|
||||
| Gesamt-/Restzeit ohne Doppelerfassung | implementiert, nicht geprüft |
|
||||
| Ende, Wiederaufnahme und neuer Lauf getrennt | implementiert, nicht geprüft |
|
||||
| Privates Feld „Interaktion“ durch alle Kopien | implementiert, nicht geprüft |
|
||||
| Öffentliche Positivliste unverändert | implementiert, nicht geprüft |
|
||||
| Classic-Regular-Icons und Drawer-Schließen | implementiert, nicht geprüft |
|
||||
|
||||
Für diese Erweiterung wurden auf ausdrücklichen Auftrag keine Tests erstellt und
|
||||
keine Typ-, Test-, Build-, Migrations- oder Browserläufe ausgeführt. Die oben
|
||||
dokumentierten früheren Prüfungen von 0.5.12 wurden nicht als Nachweis für die
|
||||
neuen Funktionen wiederverwendet.
|
||||
+18
-3
@@ -43,7 +43,7 @@ und spätere Bereiche.
|
||||
| Taxonomie | getrennte `section_categories`, `formats`, `topics` samt optionalem Themenicon; Pieces und Vorschläge mehrfach verknüpft |
|
||||
| Inhalt | `pieces` mit Status, Soft Delete, Favorit, Revision, Texten, Quellen, Werkzeugen und privaten Medien; Vorlagen speichern Snapshots |
|
||||
| Sendungsbau | `shows`, geordnete `show_sections`, `piece_usages` samt Quellen-/Werkzeug-/Themen-/Mediensnapshots, Reservebank und Vorlagen |
|
||||
| Live | expliziter Live-Stand, aktuelles Element, tatsächliche Piece-Zeiten, persistente Abschnittstimer und getrennte Präsentationsausgabe |
|
||||
| Live | expliziter Live-Stand, aktuelles Element, tatsächliche Piece-Zeiten, persistente Abschnitts-/Gesamttimer und getrennte Präsentationsausgabe |
|
||||
| Historie | unveränderliche Abschluss-Snapshots und Verwendungshistorie; Übersprungenes zählt nicht als gesendet |
|
||||
| Freigaben | widerrufbare, gehashte Lesetokens mit Sendung, Umfang, Passwortoption und Ablaufzeit |
|
||||
| RSS | Feedquellen, Abrufläufe und externe Einträge mit stabiler Herkunfts-ID sowie Status neu/übernommen/verworfen |
|
||||
@@ -68,6 +68,10 @@ Ein Live-Abschnittstimer entsteht ausschließlich beim tatsächlichen Eintritt i
|
||||
einen Abschnitt mit positiver expliziter Dauer. Er speichert dieses Soll als
|
||||
unveränderlichen Wert und summiert eigene Laufintervalle; Piece-Wechsel im
|
||||
selben Abschnitt erzeugen deshalb weder Reset noch doppelte Piece-Laufzeit.
|
||||
Der Gesamttimer speichert ebenfalls mehrere Laufintervalle. Eine gemeinsame
|
||||
Pause schließt die offenen Piece-, Abschnitts- und Gesamtintervalle; Fortsetzen
|
||||
öffnet neue Intervalle, ohne die Pause als Laufzeit zu zählen. Abschnitts- und
|
||||
Gesamtreset ersetzen ausschließlich die jeweilige Zeitbasis.
|
||||
|
||||
## Anmeldung und Rechte
|
||||
|
||||
@@ -156,7 +160,7 @@ erhöht sie atomar. Abgeschlossene Sendungen sind bereits an dieser Grenze gegen
|
||||
weitere Bearbeitung geschützt.
|
||||
|
||||
Beim Einplanen werden Titel, Dauer, Einleitung, Recherche, Moderation,
|
||||
Überleitung und der vollständige Präsentationszustand aus dem sendefertigen
|
||||
Interaktion, Überleitung und der vollständige Präsentationszustand aus dem sendefertigen
|
||||
Piece kopiert. Dazu gehören Modus, ausgewählte Quelladresse samt Zeitmarke,
|
||||
Metadaten und validierte Anbieter-ID. Zusätzlich speichern eigene geordnete
|
||||
Tabellen alle Quellen, Werkzeugnamen samt Start-/Arbeitslink und Notiz, die
|
||||
@@ -233,6 +237,15 @@ liegen als mehrere Start-/Endintervalle je Verwendung vor. Damit bleiben
|
||||
Zurückgehen, Wiederaufnahme und bereits abgeschlossene Laufzeit getrennt von der
|
||||
geplanten Dauer nachvollziehbar.
|
||||
|
||||
`live_show_timer_runs` hält die unabhängige Gesamtzeit. Pause und Fortsetzen
|
||||
behandeln Gesamt-, Abschnitts- und Piece-Intervalle gemeinsam. Beenden setzt den
|
||||
Sendungsstatus auf `completed`, schließt laufende Intervalle, markiert offene
|
||||
Pieces aber nicht als erledigt. Eine ausdrückliche Wiederaufnahme bewahrt Zeiten
|
||||
und Fortschritt; nur „Neuer Durchlauf“ verwirft Laufintervalle und setzt die
|
||||
Piece-Status zurück. Die Restzeitschätzung verwendet je Abschnitt entweder die
|
||||
positive Abschnittsdauer oder die verbleibenden Piece-Dauern und zählt beide nie
|
||||
zusammen.
|
||||
|
||||
Die interne Route `/live` benötigt weiterhin eine aktive Sitzung und darf
|
||||
Recherche, Moderation und eigene Arbeitsdaten lesen. Die separate Ausgabe nutzt
|
||||
den stabilen Kanal `/heinzlive/default` in einem reduzierten Layout ohne
|
||||
@@ -243,7 +256,9 @@ rohen Schlüssel, weil die angemeldete Steuerung dieselbe stabile OBS-Adresse
|
||||
erneut ausgeben können muss. Datenbank und Sicherungen sind deshalb Teil der
|
||||
Geheimnisgrenze. Eine Rotation widerruft den bisherigen Schlüssel, normales
|
||||
erneutes Öffnen behält ihn bei.
|
||||
Page, Polling-JSON und Proxyrouten leiten ihre Daten aus einer eigenen
|
||||
Das private Markdownfeld „Interaktion“ wird am Original und als
|
||||
Verwendungssnapshot gespeichert und ausschließlich in der authentifizierten
|
||||
Live-Regie gerendert. Page, Polling-JSON und Proxyrouten leiten ihre Daten aus einer eigenen
|
||||
Positivliste ab. Private Quellen-/Werkzeug-Snapshots, Arbeitslinks, Notizen und
|
||||
Uploads werden nicht veröffentlicht; nur Themennamen sowie die ausdrücklich
|
||||
gewählte Link- oder Videoquelle und deren erlaubte Vorschau-URL können die
|
||||
|
||||
@@ -402,3 +402,26 @@ kleines geprüftes Feld an `users` gespeichert. Sie ist weder Bestandteil einer
|
||||
Sendung noch Browserzustand. Der Kalender dient nur der Navigation und erhält
|
||||
bewusst kein Drag-and-drop, damit eine Terminänderung ausschließlich über die
|
||||
bestehende serverseitig validierte Sendungsbearbeitung erfolgt.
|
||||
|
||||
## D-026: Gemeinsame Live-Pause und getrennte Zeitbasen
|
||||
|
||||
Piece-Laufzeit, Abschnittszeit und Gesamtzeit bleiben getrennte persistente
|
||||
Intervallmengen. Pause schließt in einer Live-Transaktion alle offenen
|
||||
Intervalle, Fortsetzen eröffnet sie am gespeicherten Fortschritt erneut. Dadurch
|
||||
zählt weder Browserwechsel noch eine beliebig lange Pause zur Sendezeit. Ein
|
||||
Abschnittsreset ersetzt nur den aktiven Abschnittstimer; ein Gesamtreset löscht
|
||||
nur die Gesamtlaufintervalle. Beide ändern weder Piece-Status noch Reihenfolge,
|
||||
Restplanung oder Präsentationsstand.
|
||||
|
||||
Die Restzeit ist eine Ableitung, kein zweiter Ablaufplan. Für jeden verbleibenden
|
||||
Abschnitt gilt entweder dessen positive explizite Dauer oder die Summe seiner
|
||||
verbleibenden Piece-Dauern. Bereits abgeschlossene Abschnitte werden ausgelassen,
|
||||
ungeplante Abschnitte werden sichtbar gezählt und eine Überziehung reduziert
|
||||
nicht die geplante Zeit kommender Inhalte.
|
||||
|
||||
`completed` beendet einen Durchlauf, nicht automatisch dessen offene Pieces.
|
||||
Wiederaufnahme und neuer Durchlauf sind deshalb getrennte Befehle: Erstere
|
||||
bewahrt Intervalle und Fortschritt, letzterer setzt beides ausdrücklich zurück.
|
||||
Das private Markdownfeld „Interaktion“ folgt derselben Original-/Snapshotgrenze
|
||||
wie Moderation und Überleitung, ist aber nicht Teil der öffentlichen
|
||||
Präsentations-Positivliste.
|
||||
+29
-1
@@ -45,6 +45,17 @@ Livezustände bleiben technisch getrennt.
|
||||
|
||||
### Ablauf und Liveverhalten
|
||||
|
||||
- Pause und Fortsetzen steuern Piece-, Abschnitts- und Gesamtzeit gemeinsam und
|
||||
zählen Pausen auch nach Reload oder Navigation nicht mit.
|
||||
- Gelaufene Gesamtzeit und geschätzte Restzeit lassen sich direkt umschalten;
|
||||
die Auswahl bleibt lokal erhalten. Ungeplante verbleibende Abschnitte sind
|
||||
sichtbar, ohne Abschnitts- und Piece-Dauern doppelt zu zählen.
|
||||
- Abschnitts- und Gesamtzeit lassen sich getrennt nach Bestätigung zurücksetzen.
|
||||
Ablaufposition, Piece-Status, Restplanung und Präsentation bleiben dabei
|
||||
unverändert.
|
||||
- Sendungen lassen sich ausdrücklich vorbereiten, starten, pausieren und
|
||||
beenden. Nach dem Ende sind „Lauf fortsetzen“ und „Neuer Durchlauf“ getrennte
|
||||
Aktionen; offene Pieces werden beim Beenden nicht automatisch erledigt.
|
||||
- Abschnitte sind kompakt aufklappbar; der aktuelle Abschnitt ist geöffnet und
|
||||
das aktive Piece bleibt in der Ablaufspalte sichtbar.
|
||||
- Pieces kennzeichnen tatsächliches Live-Piece, lokal betrachtetes Piece und
|
||||
@@ -72,6 +83,15 @@ Livezustände bleiben technisch getrennt.
|
||||
Glasflächen. Es bleibt in kleinen Fenstern scrollbar erreichbar und schließt
|
||||
mit Escape oder Außenklick; der Fokus kehrt zum Menüauslöser zurück.
|
||||
|
||||
### Interaktion
|
||||
|
||||
- „Interaktion“ ergänzt Piece und Sendungsfassung als optionales privates
|
||||
Markdownfeld zwischen Moderationsstichpunkten und Überleitung.
|
||||
- Vorlagen, Duplikate, Einplanungen und die bewusste Aktualisierung aus dem
|
||||
Fundus übernehmen das Feld jeweils als unabhängigen Snapshot.
|
||||
- Die private Live-Regie zeigt das Feld nur bei Inhalt. Die öffentliche
|
||||
heinzlive-Ausgabe übernimmt es nicht.
|
||||
|
||||
### Sendungsübersicht
|
||||
|
||||
- „Liste | Kalender“ schaltet zwischen der bekannten Sendungsliste und einer
|
||||
@@ -92,12 +112,20 @@ Livezustände bleiben technisch getrennt.
|
||||
- `0012_show_overview_view.sql` ergänzt ausschließlich die kontobezogene
|
||||
Listen-/Kalenderpräferenz mit dem sicheren Standardwert `list`.
|
||||
- Es ist keine Änderung der Konfiguration erforderlich.
|
||||
- Bestehende Sendungen, Livezustände, Timer, Ausgabekanäle und
|
||||
- `0013_live_controls_and_interaction.sql` ergänzt das private Interaktionsfeld
|
||||
und persistente Gesamtzeitintervalle. Bestehende Piece-Laufintervalle werden
|
||||
als Gesamtzeit übernommen.
|
||||
- Bestehende Sendungen, Livezustände, Abschnittstimer, Ausgabekanäle und
|
||||
Präsentationssnapshots bleiben erhalten.
|
||||
- Paket, Lockdatei und Cloudron-Manifest tragen gemeinsam Version `0.5.12`.
|
||||
|
||||
### Prüfung
|
||||
|
||||
- Für die Timer-, Sendungssteuerungs- und Interaktionserweiterung wurden auf
|
||||
ausdrücklichen Auftrag keine Tests, Builds, Migrationen oder Browserprüfungen
|
||||
ausgeführt.
|
||||
- Die folgenden Nachweise stammen vom vorherigen 0.5.12-Stand und decken diese
|
||||
Ergänzungen nicht ab.
|
||||
- 44 Unit- und Verhaltenstests sowie 17 Chromium-E2E-Abläufe sind erfolgreich.
|
||||
- Die Live-Regie wurde bei 1440 × 900, 900 × 450, 670 × 450 und 390 × 700 Pixeln
|
||||
mit langen Titeln, sichtbarem Regiemenü, unabhängigen Scrollflächen und
|
||||
|
||||
+18
-1
@@ -9,6 +9,20 @@ Etappe 6 wurde nicht begonnen.
|
||||
|
||||
## Live-Regie und Sendungskalender 0.5.12
|
||||
|
||||
- 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
|
||||
@@ -53,7 +67,10 @@ Etappe 6 wurde nicht begonnen.
|
||||
|
||||
Etappe 6 bleibt unverändert unbegonnen.
|
||||
|
||||
Die lokale Prüfmatrix umfasst 44 Verhaltenstests und 17 Chromium-Abläufe.
|
||||
Die bestehende lokale Prüfmatrix umfasst 44 Verhaltenstests und 17
|
||||
Chromium-Abläufe. Für die Timer-, Sendungssteuerungs- und Interaktionserweiterung
|
||||
wurden auf ausdrücklichen Auftrag keine Tests, Builds oder Browserprüfungen
|
||||
ausgeführt; dieser neue Stand ist daher noch nicht verifiziert.
|
||||
Reales OBS, echte YouTube-/TikTok-Wiedergabe sowie Safari auf einem iOS-Gerät
|
||||
bleiben mangels verfügbarer Umgebung offen.
|
||||
|
||||
|
||||
Reference in new issue
Block a user