Architecture Decision Records
Format: MADR-lite. An ADR is immutable once Accepted. To change a decision, write a new ADR that supersedes the old one.
| ADR | Title | Status |
|---|---|---|
| 0001 | Phase 1: debit-as-authorisation on the existing wallet API | Accepted |
| 0002 | Never queue the decision; fast retryable decline; stand-in built but off | Accepted |
| 0003 | Phase 2: propose a hold/capture API to the Wallet team | Accepted (our side). Wallet delivery is assumption A9 |
| 0004 | Postgres-only: local ledger, SKIP LOCKED work queue, outbox | Accepted |
| 0005 | Cut over per account cohort, with kill switch and per-payment mode | Accepted |
| 0006 | Monorepo, contract-first, single version policy | Accepted |
| 0007 | Deadline budget, timeouts and retries (resolves OQ-1) | Accepted |
| 0008 | Settle window, compensation from wallet truth, work-queue policy (resolves OQ-2) | Accepted |
| 0009 | Stand-in policy, parameters and governance (resolves OQ-3) | Accepted |
| 0010 | Idempotency key retention and expiry (resolves OQ-4) | Accepted |
| 0011 | Outbox event catalogue, no relay yet (resolves OQ-5) | Accepted |
| 0012 | Runtime switches stored in Postgres | Accepted |
| 0013 | GitHub issues are the task specifications | Accepted |