dragonflight/services/web-ui
Zac Gaetano 984a73e8ec feat(playout): redesigned MCR screen + SCTE-35 end-to-end
Drop in the redesigned timeline-centric Playout (PGM monitor, transport,
SCTE-35 card, as-run drawer) from the on-node redesign, fully wired to the
real playout API (channels/transport/HLS preview w/ error-recovery/as-run);
no mock data. In-page ConfirmModal for destructive actions.

SCTE-35: new playout_scte_breaks table (migration 033), endpoints to
schedule/trigger/list/cancel breaks (POST/GET/DELETE /channels/:id/scte[/trigger]),
scheduler due-break sweep, engine triggerScte + auto-return + as-run 'scte'
rows + on-air SCTE-BREAK state and timeline AD markers. In-stream SCTE-35
cue injection is a documented stub (CasparCG FFMPEG consumer exposes no
scte35 muxer) — scheduling/triggering/countdown/as-run are functional.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 19:58:02 -04:00
..
public feat(playout): redesigned MCR screen + SCTE-35 end-to-end 2026-05-31 19:58:02 -04:00
scripts chore: 1.2 ship-prep sweep — close 38 issues 2026-05-27 02:06:14 +00:00
src/css rebrand: Dragonflight — ember orange accent (hue 266→32) 2026-05-21 22:16:32 -04:00
.dockerignore add services/web-ui/.dockerignore 2026-04-07 21:58:21 -04:00
.gitignore web-ui: fix corrupted .gitignore from earlier patch 2026-05-21 12:31:18 -04:00
Dockerfile chore: 1.2 ship-prep sweep — close 38 issues 2026-05-27 02:06:14 +00:00
nginx.conf fix(playout/web-ui): no-store on live HLS m3u8 so hls.js sees the live edge 2026-05-31 15:45:28 -04:00
package.json chore: 1.2 ship-prep sweep — close 38 issues 2026-05-27 02:06:14 +00:00
postcss.config.js web-ui: fix wave-1 build pipeline (primitives missing from bundle) 2026-05-21 16:41:55 +00:00
tailwind.config.js web-ui: fix wave-1 build pipeline (primitives missing from bundle) 2026-05-21 16:41:55 +00:00