{
  "schemaVersion": 1,
  "provenance": "Controlled reference project — not client work",
  "referenceProject": true,
  "clientWork": false,
  "runId": "REF-RUN-20261021110526439",
  "startedAt": "2026-10-21T11:05:26.439Z",
  "completedAt": "2026-10-21T11:05:42.552Z",
  "project": {
    "name": "Reference Checkout",
    "build": "reference-checkout-1.0.0",
    "sourceHash": "7271ee193d078bb3232470915c5f6bbb52569877f21b6857e1d67a498a7da092",
    "seededDefects": [
      "REF-BUG-001"
    ]
  },
  "environment": {
    "browser": "Chrome",
    "browserVersion": "Chrome/155.0.8059.85",
    "os": "Windows_NT 10.0.26200 x64",
    "node": "v24.19.0",
    "baseUrl": "http://127.0.0.1:55000",
    "viewports": [
      {
        "name": "desktop",
        "width": 1280,
        "height": 1000,
        "cases": [
          "REF-001",
          "REF-002",
          "REF-003",
          "REF-004",
          "REF-005",
          "REF-006",
          "REF-007",
          "REF-008",
          "REF-009",
          "REF-010",
          "REF-011"
        ]
      },
      {
        "name": "mobile",
        "width": 390,
        "height": 844,
        "cases": [
          "REF-012"
        ]
      }
    ]
  },
  "summary": {
    "totalCases": 12,
    "testScriptCount": 12,
    "executed": 12,
    "passed": 11,
    "failed": 1,
    "blocked": 0,
    "notRun": 0,
    "passRate": 91.7,
    "failRate": 8.3
  },
  "cases": [
    {
      "id": "REF-001",
      "title": "Valid new-card checkout",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 201,
        "messageContains": "Order confirmed",
        "orderCount": 1,
        "acceptanceCriterion": "A shopper can place a one-unit order with a valid new test card."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-001.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 201,
        "payload": {
          "orderId": "REF-ORDER-0001",
          "quantity": 1,
          "total": 24,
          "referenceProject": true,
          "replayed": false
        },
        "uiMessage": "Order confirmed · REF-ORDER-0001 · $24.00",
        "orderCount": 1,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-001.mjs",
      "scriptSha256": "8153260e9e3fe236d7e25c0ad702591c2b21f93b11e9403e009c7b852dcab16c",
      "screenshot": "/assets/proof/reference/screenshots/REF-001.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 201"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":201,\"orderId\":\"REF-ORDER-0001\",\"quantity\":1,\"total\":24,\"referenceProject\":true,\"replayed\":false}"
        }
      ],
      "durationMs": 1232
    },
    {
      "id": "REF-002",
      "title": "Empty-cart lower boundary",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "0",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Quantity must be 1 to 5.",
        "orderCount": 0,
        "acceptanceCriterion": "A zero-quantity cart is rejected without creating an order."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-002.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "QUANTITY_OUT_OF_RANGE",
          "message": "Quantity must be 1 to 5."
        },
        "uiMessage": "Quantity must be 1 to 5.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-002.mjs",
      "scriptSha256": "3604e6523b2231afa9721102a63bac4970d67459696c6234064cd20c56f9e327",
      "screenshot": "/assets/proof/reference/screenshots/REF-002.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"QUANTITY_OUT_OF_RANGE\",\"message\":\"Quantity must be 1 to 5.\"}"
        }
      ],
      "durationMs": 1222
    },
    {
      "id": "REF-003",
      "title": "Maximum-stock boundary",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "5",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 201,
        "messageContains": "Order confirmed",
        "orderCount": 1,
        "acceptanceCriterion": "Exactly five units are accepted and charged at the reference total of $120.",
        "total": 120
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-003.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 201,
        "payload": {
          "orderId": "REF-ORDER-0001",
          "quantity": 5,
          "total": 120,
          "referenceProject": true,
          "replayed": false
        },
        "uiMessage": "Order confirmed · REF-ORDER-0001 · $120.00",
        "orderCount": 1,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-003.mjs",
      "scriptSha256": "d46c48c6e83d14ebf7dd60ba62f3812bcc8bceb325b42f3548dc2f69214037a8",
      "screenshot": "/assets/proof/reference/screenshots/REF-003.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 201"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":201,\"orderId\":\"REF-ORDER-0001\",\"quantity\":5,\"total\":120,\"referenceProject\":true,\"replayed\":false}"
        }
      ],
      "durationMs": 1178
    },
    {
      "id": "REF-004",
      "title": "Quantity above available stock",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "6",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Quantity must be 1 to 5.",
        "orderCount": 0,
        "acceptanceCriterion": "Six units exceed the available stock and do not create an order."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-004.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "QUANTITY_OUT_OF_RANGE",
          "message": "Quantity must be 1 to 5."
        },
        "uiMessage": "Quantity must be 1 to 5.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-004.mjs",
      "scriptSha256": "be9c6b89530370e67308d480277f112fd83eba4c69c1269be5e341d600778c6b",
      "screenshot": "/assets/proof/reference/screenshots/REF-004.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"QUANTITY_OUT_OF_RANGE\",\"message\":\"Quantity must be 1 to 5.\"}"
        }
      ],
      "durationMs": 1200
    },
    {
      "id": "REF-005",
      "title": "Required shipping address",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Shipping address is required.",
        "orderCount": 0,
        "acceptanceCriterion": "An empty shipping address is rejected without creating an order."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-005.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "ADDRESS_REQUIRED",
          "message": "Shipping address is required."
        },
        "uiMessage": "Shipping address is required.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-005.mjs",
      "scriptSha256": "7cfd396524632558aa37ee2d1d968503a77765c452121feea3e08d61b4e70dba",
      "screenshot": "/assets/proof/reference/screenshots/REF-005.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"ADDRESS_REQUIRED\",\"message\":\"Shipping address is required.\"}"
        }
      ],
      "durationMs": 1221
    },
    {
      "id": "REF-006",
      "title": "Postal-code length boundary",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "1000",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Enter a 5-digit US postal code.",
        "orderCount": 0,
        "acceptanceCriterion": "A four-digit postal code is rejected; the required format is five digits."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-006.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "POSTCODE_INVALID",
          "message": "Enter a 5-digit US postal code."
        },
        "uiMessage": "Enter a 5-digit US postal code.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-006.mjs",
      "scriptSha256": "5c195c4356047b83ba8082a034546e7fd907c5fbaddeac9485ce5be6670541ba",
      "screenshot": "/assets/proof/reference/screenshots/REF-006.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"POSTCODE_INVALID\",\"message\":\"Enter a 5-digit US postal code.\"}"
        }
      ],
      "durationMs": 1229
    },
    {
      "id": "REF-007",
      "title": "Read-only role cannot order",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "viewer",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 403,
        "messageContains": "Read-only viewers cannot place orders.",
        "orderCount": 0,
        "acceptanceCriterion": "A viewer is denied order creation by the server."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-007.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 403,
        "payload": {
          "code": "ROLE_FORBIDDEN",
          "message": "Read-only viewers cannot place orders."
        },
        "uiMessage": "Read-only viewers cannot place orders.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-007.mjs",
      "scriptSha256": "67947a3520f457c66a3a36478af004e8ce32700829ba20f494decd9c957e6aba",
      "screenshot": "/assets/proof/reference/screenshots/REF-007.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 403"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 403 (Forbidden)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":403,\"code\":\"ROLE_FORBIDDEN\",\"message\":\"Read-only viewers cannot place orders.\"}"
        }
      ],
      "durationMs": 1226
    },
    {
      "id": "REF-008",
      "title": "Missing payment card",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": ""
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Enter a valid 16-digit test card number.",
        "orderCount": 0,
        "acceptanceCriterion": "A missing new-card number is rejected without creating an order."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-008.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "CARD_INVALID",
          "message": "Enter a valid 16-digit test card number."
        },
        "uiMessage": "Enter a valid 16-digit test card number.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-008.mjs",
      "scriptSha256": "e8e4f8a81c124e7e538468520e8f7c17cc02c45f08aeba48f98a9c72b9fbe48f",
      "screenshot": "/assets/proof/reference/screenshots/REF-008.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"CARD_INVALID\",\"message\":\"Enter a valid 16-digit test card number.\"}"
        }
      ],
      "durationMs": 1222
    },
    {
      "id": "REF-009",
      "title": "Invalid payment-card checksum",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424241"
      },
      "expected": {
        "httpStatus": 422,
        "messageContains": "Enter a valid 16-digit test card number.",
        "orderCount": 0,
        "acceptanceCriterion": "A 16-digit number with an invalid checksum is rejected."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-009.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 422,
        "payload": {
          "code": "CARD_INVALID",
          "message": "Enter a valid 16-digit test card number."
        },
        "uiMessage": "Enter a valid 16-digit test card number.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-009.mjs",
      "scriptSha256": "af3d2dba259d9af99d939c05988a86420f379e80aa4c41aec08ad0eea68ee7d1",
      "screenshot": "/assets/proof/reference/screenshots/REF-009.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 422"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 422 (Unprocessable Entity)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":422,\"code\":\"CARD_INVALID\",\"message\":\"Enter a valid 16-digit test card number.\"}"
        }
      ],
      "durationMs": 1213
    },
    {
      "id": "REF-010",
      "title": "Saved-card checkout regression",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Click Place test order.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "saved",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 201,
        "messageContains": "Order confirmed",
        "orderCount": 1,
        "acceptanceCriterion": "A valid saved test card should authorize and create an order."
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-010.mjs",
      "status": "failed",
      "actual": {
        "httpStatus": 503,
        "payload": {
          "code": "SAVED_CARD_TOKEN_MISSING",
          "message": "Saved card authorization failed. The order was not placed.",
          "referenceSeededDefect": "REF-BUG-001"
        },
        "uiMessage": "Saved card authorization failed. The order was not placed.",
        "orderCount": 0,
        "requestCount": 1
      },
      "error": {
        "name": "AssertionError",
        "message": "A valid saved test card should authorize and create an order.\n\n503 !== 201\n"
      },
      "bugIds": [
        "REF-BUG-001"
      ],
      "repositoryScript": "scripts/reference-qa/cases/REF-010.mjs",
      "scriptSha256": "477d726b506e91010b76fc6a0641762f15b52eda90f331f27907d97bacaad52a",
      "screenshot": "/assets/proof/reference/screenshots/REF-010.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 503"
        },
        {
          "level": "error",
          "message": "Failed to load resource: the server responded with a status of 503 (Service Unavailable)"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":503,\"code\":\"SAVED_CARD_TOKEN_MISSING\",\"message\":\"Saved card authorization failed. The order was not placed.\",\"referenceSeededDefect\":\"REF-BUG-001\"}"
        },
        {
          "level": "assertion",
          "message": "A valid saved test card should authorize and create an order.\n\n503 !== 201\n"
        }
      ],
      "durationMs": 1246
    },
    {
      "id": "REF-011",
      "title": "Duplicate request is idempotent",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout in the browser.",
        "Submit the valid reference order to /api/orders with a fixed per-case idempotency key.",
        "Repeat the same request with the same key.",
        "Compare HTTP responses, order identifiers, and the server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 201,
        "messageContains": "One order only",
        "orderCount": 1,
        "acceptanceCriterion": "Submitting the same idempotency key twice returns the same order and creates only one order.",
        "replayedHttpStatus": 200,
        "sameOrderId": true
      },
      "viewport": {
        "width": 1280,
        "height": 1000,
        "isMobile": false,
        "hasTouch": false
      },
      "script": "/assets/proof/reference/source/cases/REF-011.mjs",
      "status": "passed",
      "actual": {
        "responses": [
          {
            "httpStatus": 201,
            "payload": {
              "orderId": "REF-ORDER-0001",
              "quantity": 1,
              "total": 24,
              "referenceProject": true,
              "replayed": false
            }
          },
          {
            "httpStatus": 200,
            "payload": {
              "orderId": "REF-ORDER-0001",
              "quantity": 1,
              "total": 24,
              "referenceProject": true,
              "replayed": true
            }
          }
        ],
        "orderCount": 1,
        "requestCount": 2
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-011.mjs",
      "scriptSha256": "d866f6c345aa43a4c51c3213afc3db2b9a62ffd0e6fdc54be735fbc31ae7077c",
      "screenshot": "/assets/proof/reference/screenshots/REF-011.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 201"
        },
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 200"
        },
        {
          "level": "info",
          "message": "Reference idempotency result {\"responses\":[{\"httpStatus\":201,\"payload\":{\"orderId\":\"REF-ORDER-0001\",\"quantity\":1,\"total\":24,\"referenceProject\":true,\"replayed\":false}},{\"httpStatus\":200,\"payload\":{\"orderId\":\"REF-ORDER-0001\",\"quantity\":1,\"total\":24,\"referenceProject\":true,\"replayed\":true}}],\"orderCount\":1,\"requestCount\":2}"
        }
      ],
      "durationMs": 1117
    },
    {
      "id": "REF-012",
      "title": "Mobile keyboard checkout",
      "preconditions": [
        "Controlled reference app build reference-checkout-1.0.0 is running locally.",
        "Order state is reset; five reference units are available.",
        "Only reference product/address/payment fixtures are used."
      ],
      "steps": [
        "Open the reference checkout with a fresh order state.",
        "Set checkout fields to the documented inputs.",
        "Focus Place test order and press Enter at the mobile viewport.",
        "Check the HTTP response, visible message, and server order count."
      ],
      "inputs": {
        "role": "shopper",
        "quantity": "1",
        "address": "10 Reference Lane",
        "postcode": "10001",
        "payment": "new",
        "card": "4242424242424242"
      },
      "expected": {
        "httpStatus": 201,
        "messageContains": "Order confirmed",
        "orderCount": 1,
        "acceptanceCriterion": "A shopper can submit a valid order using the keyboard at a 390 × 844 mobile viewport."
      },
      "viewport": {
        "width": 390,
        "height": 844,
        "isMobile": true,
        "hasTouch": true
      },
      "script": "/assets/proof/reference/source/cases/REF-012.mjs",
      "status": "passed",
      "actual": {
        "httpStatus": 201,
        "payload": {
          "orderId": "REF-ORDER-0001",
          "quantity": 1,
          "total": 24,
          "referenceProject": true,
          "replayed": false
        },
        "uiMessage": "Order confirmed · REF-ORDER-0001 · $24.00",
        "orderCount": 1,
        "requestCount": 1
      },
      "error": null,
      "bugIds": [],
      "repositoryScript": "scripts/reference-qa/cases/REF-012.mjs",
      "scriptSha256": "36e28cc456ac4aab018ee9d28b684abbac2e42351f91137df1bd97ca233f56ca",
      "screenshot": "/assets/proof/reference/screenshots/REF-012.png",
      "logs": [
        {
          "level": "network",
          "message": "POST /api/orders → HTTP 201"
        },
        {
          "level": "info",
          "message": "Reference checkout result {\"status\":201,\"orderId\":\"REF-ORDER-0001\",\"quantity\":1,\"total\":24,\"referenceProject\":true,\"replayed\":false}"
        }
      ],
      "durationMs": 959
    }
  ],
  "artifactPaths": {
    "execution": "/assets/proof/reference/execution-results.json",
    "defects": "/assets/proof/reference/defects.json",
    "release": "/assets/proof/reference/release-note.json",
    "sources": "/assets/proof/reference/source-manifest.json"
  }
}
