[
  {
    "name": "compatibility-withheld",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      }
    ],
    "expected": "blocked on evidence"
  },
  {
    "name": "proposal-only",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      }
    ],
    "expected": "awaiting authorization"
  },
  {
    "name": "approved-not-executed",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      }
    ],
    "expected": "awaiting execution"
  },
  {
    "name": "unauthorized-execution",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "accepted"
      }
    ],
    "expected": "invalid record"
  },
  {
    "name": "command-accepted",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "accepted"
      }
    ],
    "expected": "outcome unverified"
  },
  {
    "name": "execution-timeout",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "timeout"
      }
    ],
    "expected": "execution unknown"
  },
  {
    "name": "requests-only",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "accepted"
      },
      {
        "kind": "verification",
        "observations": {
          "user_requests": "pass"
        }
      }
    ],
    "expected": "outcome unverified"
  },
  {
    "name": "both-outcomes",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "accepted"
      },
      {
        "kind": "verification",
        "observations": {
          "user_requests": "pass",
          "backlog": "pass"
        }
      }
    ],
    "expected": "verified in fixture"
  },
  {
    "name": "later-contradiction",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "dispatch-api one canary"
      },
      {
        "kind": "execution",
        "proposal_id": "rollback-a",
        "result": "accepted"
      },
      {
        "kind": "verification",
        "observations": {
          "user_requests": "pass",
          "backlog": "pass"
        }
      },
      {
        "kind": "verification",
        "observations": {
          "backlog": "fail"
        }
      }
    ],
    "expected": "not recovered"
  },
  {
    "name": "wrong-scope",
    "events": [
      {
        "kind": "proposal",
        "id": "rollback-a",
        "scope": "dispatch-api one canary",
        "required_checks": [
          "compatibility"
        ],
        "required_outcomes": [
          "user_requests",
          "backlog"
        ]
      },
      {
        "kind": "check",
        "name": "compatibility",
        "result": "pass"
      },
      {
        "kind": "authorization",
        "proposal_id": "rollback-a",
        "scope": "all regions"
      }
    ],
    "expected": "invalid record"
  }
]
