Saga Client Server
POST /api/orders
| Failure point | SAGA action | Client impact | |---------------|-------------|----------------| | Server A fails before committing | Retry or abort SAGA (no compensation needed) | Transient error | | Server B fails after Server A committed | Execute compensation in Server A | Client sees "compensated" status | | Orchestrator crashes mid-SAGA | Recover state from persistent log | Client may see delayed completion | | Compensation fails (e.g., network) | Retry with backoff, log for manual intervention | Status "COMPENSATION_FAILED" | saga client server
"userId": 123, "items": ["productId": 456, "quantity": 2], "paymentMethod": "credit_card" POST /api/orders | Failure point | SAGA action
