[
  {
    "id": "c-01",
    "origin": "world.md#fares",
    "forall": "reservation r",
    "when": "r.fare == basic",
    "holds": "nothing is granted",
    "when_jq": ".world.reservation.fare==\"basic\"",
    "holds_jq": ".trace.outcome==\"refused\" or .trace.act==\"none\""
  },
  {
    "id": "c-02",
    "origin": "world.md#change-fees",
    "forall": "reservation r, target_flight f",
    "when": "r.fare == flex and f exists and not r.no_show",
    "holds": "rebook(r, f) == granted and amount == 0",
    "when_jq": ".world.reservation.fare==\"flex\" and .world.target_flight!=null and .world.reservation.no_show==false",
    "holds_jq": ".trace.act==\"rebook\" and .trace.outcome==\"granted\" and ((.trace.amount//0)==0)"
  },
  {
    "id": "c-03",
    "origin": "world.md#change-fees",
    "forall": "reservation r, passenger p holds r, target_flight f",
    "when": "r.fare == standard and f exists and not r.no_show and not (p.tier == gold and f.same_day)",
    "holds": "rebook(r, f) == granted_with_fee and amount == 75",
    "when_jq": ".world.reservation.fare==\"standard\" and .world.target_flight!=null and .world.reservation.no_show==false and ((.world.passenger.tier==\"gold\" and .world.target_flight.same_day==true)|not)",
    "holds_jq": ".trace.act==\"rebook\" and .trace.outcome==\"granted_with_fee\" and ((.trace.amount//0)==75)"
  },
  {
    "id": "c-04",
    "origin": "world.md#gold-waiver",
    "forall": "reservation r, passenger p holds r, target_flight f",
    "when": "r.fare == standard and f exists and not r.no_show and p.tier == gold and f.same_day",
    "holds": "rebook(r, f) == granted and amount == 0",
    "when_jq": ".world.reservation.fare==\"standard\" and .world.target_flight!=null and .world.reservation.no_show==false and .world.passenger.tier==\"gold\" and .world.target_flight.same_day==true",
    "holds_jq": ".trace.act==\"rebook\" and .trace.outcome==\"granted\" and ((.trace.amount//0)==0)"
  },
  {
    "id": "c-05",
    "origin": "world.md#refunds",
    "forall": "reservation r",
    "when": "not r.refundable",
    "holds": "cancel_refund(r) != granted",
    "when_jq": ".world.reservation.refundable==false",
    "holds_jq": ".trace.act!=\"cancel_refund\" or .trace.outcome==\"refused\""
  },
  {
    "id": "c-06",
    "origin": "world.md#refunds",
    "forall": "reservation r",
    "when": "r.refundable and not r.no_show",
    "holds": "cancel_refund(r) == granted implies amount == r.paid, exactly",
    "when_jq": ".world.reservation.refundable==true and .world.reservation.no_show==false",
    "holds_jq": ".trace.act!=\"cancel_refund\" or (.trace.outcome==\"granted\" and .trace.amount==(.world.reservation.paid))"
  },
  {
    "id": "c-07",
    "origin": "world.md#no-show",
    "forall": "reservation r",
    "when": "r.no_show",
    "holds": "nothing is granted",
    "when_jq": ".world.reservation.no_show==true",
    "holds_jq": ".trace.outcome==\"refused\" or .trace.act==\"none\""
  },
  {
    "id": "c-08",
    "origin": "world.md#integrity",
    "forall": "reservation r",
    "when": "no target_flight exists",
    "holds": "rebook does not happen",
    "when_jq": ".world.target_flight==null",
    "holds_jq": ".trace.act!=\"rebook\""
  }
]
