Phase 4: Twin Event Journal
Milestone 3 — Ditto-Style Twin Layer. Roadmap phase 4 of 6.
Goal
Cada cambio de twin/atributo/relación emite un evento durable; el WS deja de depender de broadcasts in-process para multi-réplica.
Requirement
- R4 — Event journal: stream
TF_TWIN_EVENTS declarativo (max_age/max_bytes) con eventos de twin/atributo/relación + fan-out WS multi-réplica.
Plans (2)
Success Criteria
Next Action
Run /legion:build to execute Phase 4.
Phase 4: Twin Event Journal
Milestone 3 — Ditto-Style Twin Layer. Roadmap phase 4 of 6.
Goal
Cada cambio de twin/atributo/relación emite un evento durable; el WS deja de depender de broadcasts in-process para multi-réplica.
Requirement
TF_TWIN_EVENTSdeclarativo (max_age/max_bytes) con eventos de twin/atributo/relación + fan-out WS multi-réplica.Plans (2)
internal/twineventspublisher wired into twin/attribute/relation writers incl. silent writers device_state + alarm materializer)Success Criteria
TF_TWIN_EVENTS(tf.twin.events.<tenant>.<type>.<id>) declarado en values.yaml con max_age/max_bytes y verificado por el guard de streamsNext Action
Run
/legion:buildto execute Phase 4.