{
  "scenario": "payment_identity_expiry_and_rollback",
  "observations": {
    "same_buyer_old_hold_fenced": {
      "seats": [
        {
          "id": 1,
          "state": "SOLD",
          "hold_id": "eba3ff052f164fb8bdba1cdc3b912cc3",
          "expires_at": 1600
        }
      ],
      "orders": [
        {
          "id": "4e596030ba304505ab24fb369538df68",
          "buyer": "alice",
          "request_key": "first",
          "seat_id": 1,
          "hold_id": "a345b01526294fd4915fd22c5e930f3c",
          "expires_at": 1300,
          "state": "EXPIRED",
          "amount_cents": 10000,
          "currency": "CNY"
        },
        {
          "id": "97382f9a3ea84704bdb4a6c70afb4236",
          "buyer": "alice",
          "request_key": "second",
          "seat_id": 1,
          "hold_id": "eba3ff052f164fb8bdba1cdc3b912cc3",
          "expires_at": 1600,
          "state": "PAID",
          "amount_cents": 10000,
          "currency": "CNY"
        }
      ],
      "payments": [
        {
          "id": "old-payment",
          "order_id": "4e596030ba304505ab24fb369538df68",
          "amount_cents": 10000,
          "currency": "CNY",
          "result": "REFUND_PENDING"
        },
        {
          "id": "new-payment",
          "order_id": "97382f9a3ea84704bdb4a6c70afb4236",
          "amount_cents": 10000,
          "currency": "CNY",
          "result": "BOOKED"
        },
        {
          "id": "another-payment",
          "order_id": "97382f9a3ea84704bdb4a6c70afb4236",
          "amount_cents": 10000,
          "currency": "CNY",
          "result": "REFUND_PENDING"
        }
      ],
      "ledger": [
        {
          "payment_id": "new-payment",
          "order_id": "97382f9a3ea84704bdb4a6c70afb4236",
          "amount_cents": 10000
        }
      ],
      "refunds": [
        {
          "payment_id": "old-payment",
          "reason": "no_live_hold_or_already_paid",
          "state": "PENDING"
        },
        {
          "payment_id": "another-payment",
          "reason": "no_live_hold_or_already_paid",
          "state": "PENDING"
        }
      ]
    },
    "expiry_equal": "REFUND_PENDING; cleanup releases exactly once",
    "duplicate_callbacks": {
      "callbacks": 24,
      "payments": 1,
      "ledger": 1,
      "identity_conflicts_rejected": 3
    },
    "wrong_amount": {
      "refund_obligations": [
        {
          "payment_id": "underpayment",
          "reason": "amount_mismatch",
          "state": "PENDING"
        }
      ],
      "ledger": [
        {
          "payment_id": "right-payment",
          "order_id": "b7e3fb889c0f4db5abebfd76a6df5fcc",
          "amount_cents": 10000
        }
      ]
    },
    "after_seat_update": {
      "injected": "injected failure at after_seat_update",
      "retry": "BOOKED",
      "ledger_rows": 1
    },
    "before_commit": {
      "injected": "injected failure at before_commit",
      "retry": "BOOKED",
      "ledger_rows": 1
    }
  },
  "pass": true
}
