24-hour receipts your agents check before they act.
ProofSlip
> view payload
{
"customer_id": 8812,
"refund_amount": 42.00,
"currency": "USD",
"reason": "duplicate_charge",
"initiated_by": "agent/billing-v2"
}
Issue a receipt when something happens — a payment, an approval, a handshake.
Before acting, your agent checks the receipt. Valid receipt = go. No receipt = stop.
Receipts auto-expire after 24 hours. No cleanup. No stale state.
Agent A refunds $42. Agent B sees the same ticket, refunds $42 again. Customer gets $84. Your DB flag was stale.
Agent A creates a receipt with idempotency_key: "refund-8812". Agent B tries the same key — gets the existing receipt back. One refund, one proof.
Manager approved a $500 payment on Monday. Friday, a different agent finds that approval flag and pushes $5,000. The flag never expired.
Approval receipt expires in 1 hour. Agent checks valid: true and expired: false before every action. Stale approval = automatic stop.
Agent A is mid-read. Agent B assumes it’s done and starts writing. Data corruption. No coordination, just hope.
Agent A creates a handshake receipt when ready. Agent B verifies it exists before writing. No receipt = wait.
Pipeline fails at step 7 of 10. Restarts at step 1. Re-sends emails, re-processes payments, re-deploys artifacts. Chaos.
Each step creates a resume receipt. On restart, the pipeline checks which receipts are still valid and skips to step 8.