24 lines
850 B
Markdown
24 lines
850 B
Markdown
|
|
# 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.
|