{
  "revision": "3db3bd9ec7cb0c157482ddf7e51c39f1b6a5ba06",
  "stats": {
    "startTime": "2026-09-11T06:05:08.271Z",
    "duration": 57356.223,
    "expected": 1,
    "skipped": 0,
    "unexpected": 1,
    "flaky": 0
  },
  "total": 2,
  "statusCounts": {
    "failed": 1,
    "passed": 1
  },
  "passRatePercent": 50,
  "rows": [
    {
      "caseId": "CASE-010",
      "title": "CASE-010 stale Feed chunk preserves the document until the user explicitly reopens the app",
      "file": "CASE-010-stale-lazy-chunk-auto-recovery/regression.spec.mjs",
      "status": "failed",
      "durationMs": 12950,
      "retries": 0,
      "errors": [
        "Error: expect(locator).toBeDisabled() failed\n\nLocator:  getByRole('alert').getByRole('button', { name: '운동 보관 중…', exact: true })\nExpected: disabled\nReceived: undefined\nTimeout:  10000ms\n\nCall log:\n  - Expect \"toBeDisabled\" with timeout 10000ms\n  - waiting for getByRole('alert').getByRole('button', { name: '운동 보관 중…', exact: true })\n    - waiting for \"http://127.0.0.1:4353/\" navigation to finish...\n\n\n  53 |      await recovery.getByRole('button',{name:'앱 다시 열기',exact:true}).click({noWaitAfter:true});\n  54 |      await expect.poll(()=>documentHeld).toBe(true);\n> 55 |      await expect(recovery.getByRole('button',{name:'운동 보관 중…',exact:true})).toBeDisabled();\n     |                                                                              ^\n  56 |     } finally {releaseReopen();}\n  57 |     await expect(home).toBeVisible();\n  58 |     await page.unroute(reopenUrl,holdDocument);\n    at C:\\Users\\USER\\Documents\\Codex\\2026-09-10\\1534-5-18-0-hq-4\\work\\barbelic-1540\\error-cases\\CASE-010-stale-lazy-chunk-auto-recovery\\regression.spec.mjs:55:78\n    at Object.prove (C:\\Users\\USER\\Documents\\Codex\\2026-09-10\\1534-5-18-0-hq-4\\work\\barbelic-1540\\error-cases\\support\\fixture.mjs:222:24)\n    at C:\\Users\\USER\\Documents\\Codex\\2026-09-10\\1534-5-18-0-hq-4\\work\\barbelic-1540\\error-cases\\CASE-010-stale-lazy-chunk-auto-recovery\\regression.spec.mjs:45:4\n    at C:\\Users\\USER\\Documents\\Codex\\2026-09-10\\1534-5-18-0-hq-4\\work\\barbelic-1540\\error-cases\\CASE-010-stale-lazy-chunk-auto-recovery\\regression.spec.mjs:32:3",
        "Error: CASE-010 returned without the fail-closed full-round-trip completion gate.\n\n   at support\\fixture.mjs:552\n\n  550 |       await use(state);\n  551 |       if (!journeyCompleted) {\n> 552 |         throw new Error(\n      |               ^\n  553 |           `${caseId} returned without the fail-closed full-round-trip completion gate.`,\n  554 |         );\n  555 |       }\n    at Object.caseContext (C:\\Users\\USER\\Documents\\Codex\\2026-09-10\\1534-5-18-0-hq-4\\work\\barbelic-1540\\error-cases\\support\\fixture.mjs:552:15)"
      ]
    },
    {
      "caseId": "CASE-028",
      "title": "CASE-028 a live workout saved on the finish screen can go back for one more set and resave with the added set without a single user-facing error",
      "file": "CASE-028-finish-back-one-more-set-resave-round-trip/regression.spec.mjs",
      "status": "passed",
      "durationMs": 8994,
      "retries": 0,
      "errors": []
    }
  ]
}