Files
hms-mediaengine/docs/adr
HMS MediaEngine Agent c6a3cf7751 Phase 5: Web-Bedienoberfläche nach §17 (React+Vite, ADR-0006)
- ADR-0006: React 18/19 mit Vite im statischen SPA-Modus
- Workspace §17.2: Statusleiste 32px, einklappbare Werkzeugleiste,
  Layer-Tabelle, Inspector ~30% mit Divider-Resize, umschaltbare
  rechte Seitenleiste, Fußleiste mit Setup/Live-Lock
- Layer-Tabelle §17.3: alle 10 Pflichtspalten, Zeilen 30px,
  7 unterscheidbare Zustände (Glyph+Farbe+Text, nie nur Farbe),
  Pfeiltasten-Navigation, Opacity-Fader mit echtem parameter.set
- Inspector §17.4: 7 Tabs, Zahlenfelder mit Tippen/Ziehen/Pfeiltasten,
  Release-Befehl, Live-Lock sperrt Struktur
- Design-Tokens §17.6: alle als CSS-Variablen (Flächen, Text,
  Akzent-Blau, Zustandsfarben, 4px-Raster, 2-4px Radien,
  Monospace tabular-nums, 100-180ms)
- WebSocket: Snapshot bei Connect, Deltas danach, Reconnect
  1s/2s/4s max 30s; Browser-Neustart stoppt Output nicht (§3.2)
- REST: health/identity/cluster-nodes/parameters/diagnostics,
  Commands mit expected_revision + Revert bei 409
- Kein GO-Button, keine Standby-Anzeige, keine Cue-Carts (§17.1)
- Build: tsc strict + vite, 27 Module, 262KB JS gzip 80KB
- Python-Suite 549 grün unberührt
2026-09-11 03:02:38 +02:00
..

Architecture Decision Records

Vorlage: _template.md. Nummerierung fortlaufend. Abweichungen vom Bauplan nur mit ADR und Freigabe (PLAN.md §1).

Angenommen

  • ADR-0001: Python-Version-Pin 3.13
  • ADR-0002: GStreamer-Pin 1.28.6 (Windows)
  • ADR-0003: IPC lokales TCP + length-prefixed MessagePack v1
  • ADR-0008: Build-first-Strategie verzögerte Hardware-Validierung (Auftraggeber-Freigabe 2026-09-11)
  • ADR-0009: Node-Discovery mDNS/DNS-SD mit manueller Fallback-Liste
  • ADR-0010: Node-Paarung PIN/Fingerprint, Token-Scopes, Widerruf

Vorläufig angenommen (Bestätigung im Windows-Durchlauf, ADR-0008)

  • ADR-0004: Nativer Renderkern Rust auf dem GStreamer-D3D11-Elementpfad
  • ADR-0005: Packaging Nuitka Onefolder (Fallback PyInstaller)

Offen

  • ADR-0006: Frontend React vs. Svelte (Entscheidung zu Beginn Phase 5)
  • ADR-0007: Typprüfung mypy vs. pyright
  • weitere gemäß Bauplan §32 (Persistenz → erledigt in Phase 1 ohne eigene ADR-Nummer, da §24-Vorgaben 1:1 umgesetzt; Preview, Show-Codec, Ownership, Display-Abstraktion, Adaptive-Quality-Policy, Clusterprotokoll-Transport, TLS-Details, Clock-Sync, UI-Design-Tokens)