ADR 0002: Redis Streams migration phase 1 (dual transport)
Status
Accepted as the migration step. The consume path described here is historical. ADR 0003 and ADR 0004 replaced it.
Context
Publishers had to keep old Pub/Sub consumers working while auth and social started writing Streams so replay and retention would exist. Social and communication consumers were still on Pub/Sub.
Decision
Phase 1 transport is dual:
- Publishers emit each integration event to Pub/Sub and to Streams.
- Docs from that phase say "Redis integration events (Pub/Sub + Streams phase 1)".
- Consume at that time was "Pub/Sub (legacy) + Streams (dual-write)".
Consequences
Old consumers kept working, and stream data accumulated for the cutover. Two transports cost more to observe, so docs had to say clearly that Pub/Sub was still the consume path.
Rollout that was planned
- Dual publish.
- Leave consumers on Pub/Sub.
- Compare channel and stream before phase 2.
Phase 2 then moved consumers. Do not re-enable dual publish as a default.