Y-Statement (structured decision record)
Sentence
In the context of order, billing, and notification flows in production, facing synchronous coupling and retry incidents when downstreams lag, we have decided for publishing domain events for order lifecycle changes with async consumers in order to looser coupling and room to add subscribers without expanding core request chains, accepting that we accept eventual consistency, idempotency work, and better tracing requirements.
Fields (same content, for reviews)
- Context: order, billing, and notification flows in production
- Concern: synchronous coupling and retry incidents when downstreams lag
- Stance / subject: for / publishing domain events for order lifecycle changes with async consumers
- Intended outcome: looser coupling and room to add subscribers without expanding core request chains
- Deliberate tradeoff: we accept eventual consistency, idempotency work, and better tracing requirements