ADR-0009 Visual Telemetry Flows
Status
Section titled “Status”Accepted and implemented as an initial vertical slice on 2026-08-05.
Decision
Section titled “Decision”Replace device-type decoder-version pointers with tenant-owned, immutable flow versions. Processing starts only after raw commit through transactional outbox. Ports use exact versioned schema references, graphs are acyclic, and side effects are persisted as intents and executed asynchronously. Custom-script authors may release their own versions after mandatory technical gates; no four-eyes approval or mandatory fixture test is required.
Consequences
Section titled “Consequences”The old decoder schema is removed destructively after a confirmed backup. Raw data remains the authoritative replay source. Three independently scalable worker foundations are added for flows, QuickJS isolation, and actions. Graph and event contracts become long-lived compatibility boundaries. Template copy semantics, custom-script administration, replay administration, and action configuration APIs remain follow-up work and must preserve this decision.