Production cutover rehearsal
Production cutover rehearsal
Run this rehearsal in staging against dedicated non-production wallet infrastructure, using the production integration contract. It is not permission to run failure injection, change live credentials, or mutate customer wallets in production.
Goal
Prove operator team can cut over without changing integration semantics.
Rehearsal checklist
- create fresh production-like API keys
- validate wallet adapter config one more time
- validate webhook endpoint config one more time
- run happy-path launch
- run happy-path buy
- run happy-path sell or redemption
- run one webhook replay
- review dashboard evidence
For enabled Polyflight, rehearse native purchase, win, zero-amount loss acknowledgement, full cancelled-ticket refund and no-ticket compensation separately from Opinion. Confirm unknown wallet results stay unresolved until evidence and callback delivery never initiates another financial mutation. A connection-only UAT pass is not a substitute.
Review saved endpoint history, then rehearse explicit historical/bulk Resend with dedicated staging records. Confirm all currently active subscribers are intended recipients and missing delivery history is treated as unknown. Keep source event IDs/time stable and inspect asynchronous receipt after queuing.
Evidence to capture
- launch request and success response
- one successful order ID
- one successful payout or sell ID
- one wallet mutation
idempotency_key - one webhook
event_id - one replayed delivery ID
- UTC timestamps for each step
- Polyflight purchase request/ticket/obligation IDs, where applicable, plus native stake/fee/payout and wallet-result evidence
- setup-history ID and actor for configuration changes; distinguish capture baselines from actual changes
Cutover go/no-go rules
Go only if:
- no unresolved
manual_review - no unresolved
unknownbalance operation - webhook delivery path reaches
sent - operator team can locate support identifiers quickly
- real adapter contract evidence is available independently of simulator success, including permanent deduplication and timeout reconciliation
- historical/bulk resend is duplicate-safe and endpoint subscriptions match the intended product coverage
No-go if:
- secrets still being rotated ad hoc
- ambiguous wallet-result handling is untested
- receiver still returns intermittent
401or500
After rehearsal
- freeze integration changes until launch if possible
- record approved launch contacts
- record rollback owner
