{
  "schema": "proof-of-done-scenarios/1",
  "note": "Synthetic. Paths are relative to the fixture server base URL. 'claim' is what an agent might say; 'expected_label' is what the verifier must derive.",
  "fixture_file_sha256": "89c0884c5d961ca4723592f88860898417165da9d257cb3308ac9d96c222ac3e",
  "scenarios": [
    {
      "id": "live-page",
      "category": "LIVE",
      "claim": "deployed, page is up",
      "path": "/ok",
      "args": [
        "--expect-status",
        "200",
        "--expect-text",
        "Carehab fixture OK"
      ],
      "expected_label": "LIVE_VERIFIED",
      "expected_exit": 0
    },
    {
      "id": "live-redirect",
      "category": "LIVE",
      "claim": "/redirect now points to /ok",
      "path": "/redirect",
      "args": [
        "--expect-redirect-to",
        "{base}/ok",
        "--expect-status",
        "200"
      ],
      "expected_label": "LIVE_VERIFIED",
      "expected_exit": 0
    },
    {
      "id": "live-file-checksum",
      "category": "LIVE",
      "claim": "release file published unchanged",
      "path": "/file.bin",
      "args": [
        "--sha256",
        "89c0884c5d961ca4723592f88860898417165da9d257cb3308ac9d96c222ac3e"
      ],
      "expected_label": "LIVE_VERIFIED",
      "expected_exit": 0
    },
    {
      "id": "code-only-404",
      "category": "CODE_ONLY",
      "claim": "deployed (code merged, URL missing)",
      "path": "/missing",
      "args": [
        "--expect-status",
        "200"
      ],
      "expected_label": "FAIL",
      "expected_exit": 1
    },
    {
      "id": "code-only-wrong-redirect",
      "category": "CODE_ONLY",
      "claim": "live (redirect lands on a 404)",
      "path": "/redirect-wrong",
      "args": [
        "--expect-redirect-to",
        "{base}/ok"
      ],
      "expected_label": "FAIL",
      "expected_exit": 1
    },
    {
      "id": "code-only-silent-redirect",
      "category": "CODE_ONLY",
      "claim": "live at /redirect (undeclared redirect)",
      "path": "/redirect",
      "args": [
        "--expect-status",
        "200"
      ],
      "expected_label": "FAIL",
      "expected_exit": 1
    },
    {
      "id": "code-only-checksum-drift",
      "category": "CODE_ONLY",
      "claim": "file published (different bytes served)",
      "path": "/file.bin",
      "args": [
        "--sha256",
        "0000000000000000000000000000000000000000000000000000000000000000"
      ],
      "expected_label": "FAIL",
      "expected_exit": 1
    }
  ]
}
