ADR-004: Overlay Process Isolation
Status
Accepted
Context
VR overlays need to be reliable and resilient. A crash in one overlay should not affect others or the main dashboard. We need process isolation with efficient communication.
Decision
Each overlay runs in its own process with:
- Shared memory IPC for frame data
- Process monitoring and automatic restart
- Resource isolation and limits
- Independent failure domains
Consequences
Positive
- Crash isolation - one overlay failure doesn't affect others
- Better security through process boundaries
- Easier debugging of individual overlays
- Can use different runtimes/languages per overlay
Negative
- Higher memory overhead
- IPC complexity
- Process management complexity
- Need health monitoring infrastructure
Implementation
- Process manager in main dashboard
- Health monitoring via IPC heartbeats
- Automatic restart with exponential backoff
- See Overlay Process IPC