Files
hms-mediaengine/docs/adr/0003-ipc-tcp-msgpack.md
T
HMS MediaEngine Agent 0922cc1d68 Phase 0: Repository-Initialisierung nach Bauplan v1.2
- Struktur gemäß §8 (Eigentumsgrenzen), PLAN.md als normative Basis
- Pflichtdokumente: STATUS.md, ERRORS.md, TEST_REPORT.md, CHANGELOG.md, ADRs
- ADR-0001 Python 3.13-Pin, ADR-0002 GStreamer 1.28.6-Pin (Windows),
  ADR-0003 IPC TCP+MessagePack v1
- Kernpakete: hms_protocol, hms_domain, hms_parameter, hms_artnet,
  hms_adaptive, hms_capabilities, hms_plugin_sdk
- Renderer-Spike: D3D11-Primärpfad + Dev-GL-Pfad (§36 Nr. 4-5)
- Control Core: FastAPI REST + WebSocket (§36 Nr. 9)
- Beispielplugins: Passthrough + Gaussian Blur (3 Adaptive-Quality-
  Varianten, HLSL/GLSL/GLES)
- Tools: Art-Net-Emulator, Fixture-Generator (Master32/Layer64-CSV),
  Capability-Probe
- JSON-Schemas: IPC, Plugin, Projekt, Cluster
- 121 Unit-/Integrationstests grün, Ruff grün

Gate 0 bleibt offen: Hardwaremessungen nur auf echter Windows-Referenz-
hardware gültig (§29.7, §33).
2026-09-11 00:36:59 +02:00

850 B
Raw Blame History

ADR-0003: IPC lokales TCP mit length-prefixed MessagePack

  • Status: Angenommen (Bauplan-Vorgabe §6.2; umgesetzt in packages/protocol)
  • Datum: 2026-09-10
  • Phase: 0

Entscheidung

Control Core ↔ Renderer kommunizieren über lokales TCP auf 127.0.0.1 mit length-prefixed MessagePack (4-Byte-Big-Endian-Länge, Protokollversion 1, Idempotency-Keys; Heartbeat ab Phase 1). JSON ausschließlich im Debugmodus.

Alternativen

  • Named Pipes/Unix Sockets: plattformspezifische API-Unterschiede, kein Nutzen im Spike.
  • JSON-Lines: langsamer und größer; nur für Debug erlaubt (§6.2).

Folgen

  • hms_protocol definiert Envelope, Framing und Idempotency-Registry mit Unit-Tests.
  • IPC bindet niemals an eine externe Netzwerkschnittstelle (§6.2).

Freigabe

  • Direkte Umsetzung der normativen Vorgabe PLAN.md §6.2.