Introduce event-driven communication for order lifecycle updates
Architecture description record (ISO/IEC/IEEE 42010–inspired). Lightweight, Git-friendly fields. Not a full conformance report to the standard—use the vocabulary of stakeholders, concerns, and views to align the decision with the architecture description.
Record ID (cross-ref): ADR-42010-0029
System / subject scope
Order monolith and adjacent services; event bus and consumers for lifecycle projections.
Stakeholders and roles
Order team, billing, notifications, SRE, observability owners.
Stakeholder concerns (to be addressed in the architecture description)
Coupling, availability under downstream failure, understandability of side effects, audit of what happened and when.
View and viewpoint (what is shown, and from which perspective)
Viewpoint: process / messaging. View: which transitions emit which events, schemas, and consumer SLOs.
Decision
Move cross-boundary work to events for lifecycle; keep a narrow sync surface for what must be immediate.
Rationale (with respect to the concerns and alternatives)
The architecture should expose where asynchrony is intentional so operators can reason about lag and ordering. Stakeholder concern is operability, not just code layout.
Architectural impact (elements, relationships, and operational follow-through)
Outbox or equivalent for reliable publish; versioned schema registry; runbooks for poison messages.
Traceability (requirements, policy, SLOs, other ADRs)
Link to prior incident post-mortem; per-topic ownership in catalog.