$ node scripts/prove-scenario.ts scripts/scenarios/git-checkpoint-failure.e2e.ts --base c90b67859a6d85fc957f9ffe25ba95113c6479d3 --head 9d3e315a6db6db5b8029bb613184513647aa16d5 --upload-command 'ghdrop upload' ⊘ cache disabled
Scope: all 42 workspace projects
? Verifying lockfile against supply-chain policies (2087 entries)...
Packages are hard linked from the content-addressable store to the virtual store.
  Content-addressable store is at: <artifact>
  Virtual store is at:             node_modules/.pnpm
Progress: resolved 877, reused 877, downloaded 0, added 862
Progress: resolved 1351, reused 1351, downloaded 0, added 1337
✓ Lockfile passes supply-chain policies (2087 entries in 5s)
Lockfile is up to date, resolution step is skipped
Packages: +1678
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1678, reused 1674, downloaded 0, added 1678, done
Agent skills awaiting approval: e2e.
Run "pnpm approve" to review them.
. prepare$ vp config --no-agent
. prepare: Done

devDependencies:
+ @coderabbitai/config 1.2.0
+ @effect/tsgo 0.67.1
+ @shadcn/lint 0.1.5
+ @types/node 24.12.4
+ knip 6.34.0
+ vite-plus 1.4.0

Done in 6.1s using pnpm v12.14.0

 RUN  e2e v0.23.0 <artifact>
      run 01a1c9a5-702e-7e98-b0ce-d73e93ae6266 · targets: web, ios

 ✓ target "web" command at http://127.0.0.1:39037/.well-known/t3/environment ready 7.44s
 ✓ target "ios" command at http://127.0.0.1:8190/status ready 7.41s
   × |web| scenarios/git-checkpoint-failure.e2e.ts > Git failures are errors while absent repositories remain missing 49.04s
     → tap did not become actionable in time: locator.click: Timeout 21743ms ex…
 ❯ |web| scenarios/git-checkpoint-failure.e2e.ts (1 test | 1 failed) 49.04s

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯

 FAIL  |web| scenarios/git-checkpoint-failure.e2e.ts > Git failures are errors while absent repositories remain missing
ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class="list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]" data-thread-item="d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b">…</li> intercepts pointer events: getByText("broken Git checkpoint proof").first()
 ❯ at http://127.0.0.1:39037/draft/6e7f6eaa-207e-4860-a172-39d487c2a398
 ❯ trace .e2e/prove/base/results/git-checkpoint-failure-git-failures-are-errors-while-67bfa70dd2a1b83e/trace.md
 ❯ video .e2e/prove/base/results/git-checkpoint-failure-git-failures-are-errors-while-67bfa70dd2a1b83e/attempt-1/video/video.webm

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯


 Test Files  1 failed | 0 passed (1)
      Tests  1 failed | 0 passed (1)
   Start at  08:07:05
   Duration  64.89s (1m 5s, startup 14.85s)
     Traces  .e2e/prove/base/results/ (1 page, trace.md in each test's directory)

   Markdown  .e2e/prove/base/summary.md

     Failed  × |web| scenarios/git-checkpoint-failure.e2e.ts:8 > Git failures are errors while absent repositories remain missing
               ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class="list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]" data-thread-item="d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b">…</li> intercepts pointer events: getByText("broken Git checkpoint proof").first()
               trace .e2e/prove/base/results/git-checkpoint-failure-git-failures-are-errors-while-67bfa70dd2a1b83e/trace.md

Scope: all 42 workspace projects
✓ Lockfile passes supply-chain policies (verified 1m ago)
Lockfile is up to date, resolution step is skipped
Packages are hard linked from the content-addressable store to the virtual store.
  Content-addressable store is at: <artifact>
  Virtual store is at:             node_modules/.pnpm
Progress: resolved 886, reused 886, downloaded 0, added 872
Progress: resolved 1460, reused 1460, downloaded 0, added 1444
Packages: +1678
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1678, reused 1674, downloaded 0, added 1678, done
Agent skills awaiting approval: e2e.
Run "pnpm approve" to review them.
. prepare$ vp config --no-agent
. prepare: Done

devDependencies:
+ @coderabbitai/config 1.2.0
+ @effect/tsgo 0.67.1
+ @shadcn/lint 0.1.5
+ @types/node 24.12.4
+ knip 6.34.0
+ vite-plus 1.4.0

Done in 3.8s using pnpm v12.14.0

 RUN  e2e v0.23.0 <artifact>
      run 01a1c9a6-9ac3-7ddc-94c1-4241ca7d014e · targets: web, ios

 ✓ target "web" command at http://127.0.0.1:33133/.well-known/t3/environment ready 6.53s
 ✓ target "ios" command at http://127.0.0.1:8190/status ready 9.58s
stdout | |web| scenarios/git-checkpoint-failure.e2e.ts > Git failures are errors while absent repositories remain missing
{"sha":"9d3e315a6db6db5b8029bb613184513647aa16d5","checkpoints":{"broken":[{"ordinal":0,"status":"error","files":"[]"},{"ordinal":1,"status":"error","files":"[]"}],"plain":[{"ordinal":0,"status":"missing","files":"[]"},{"ordinal":1,"status":"missing","files":"[]"}],"healthy":[{"ordinal":0,"status":"ready","files":"[]"},{"ordinal":1,"status":"ready","files":"[]"}]},"probeWarningCount":2}
   ✓ |web| scenarios/git-checkpoint-failure.e2e.ts > Git failures are errors while absent repositories remain missing 25.86s
 ✓ |web| scenarios/git-checkpoint-failure.e2e.ts (1 test) 25.86s

 Test Files  1 passed (1)
      Tests  1 passed (1)
   Start at  08:08:21
   Duration  42.93s (startup 16.11s)
     Traces  .e2e/prove/head/results/ (1 page, trace.md in each test's directory)
Screenshots  .e2e/prove/head/results/git-checkpoint-failure-git-failures-are-errors-while-67bfa70dd2a1b83e/attempt-1/screenshots/001-completed-broken-repository-turn.png

   Markdown  .e2e/prove/head/summary.md

{
  "scenario": "Git failures are errors while absent repositories remain missing",
  "failsOnBase": false,
  "passesOnHead": true,
  "baseSha": "c90b67859a6d85fc957f9ffe25ba95113c6479d3",
  "headSha": "9d3e315a6db6db5b8029bb613184513647aa16d5",
  "verdict": "Not proven: the scenario could not run on base `c90b67859a` (ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class=\"list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]\" data-thread-item=\"d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b\">…</li> intercepts pointer events: getByText(\"broken Git checkpoint proof\").first()).",
  "steps": {
    "base": [
      {
        "step": "app.open <pairing link>",
        "status": "passed"
      },
      {
        "step": "locator.tap getByText(\"broken Git checkpoint proof\").first()",
        "status": "failed"
      }
    ],
    "head": [
      {
        "step": "app.open <pairing link>",
        "status": "passed"
      },
      {
        "step": "locator.tap getByRole(\"button\", name: \"broken Git checkpoint proof, Done, broken-repository\")",
        "status": "passed"
      },
      {
        "step": "app.screenshot completed-broken-repository-turn",
        "status": "passed"
      }
    ]
  },
  "captures": [
    "<artifact>",
    "<artifact>"
  ],
  "videos": [
    "<artifact>",
    "<artifact>"
  ],
  "markdown": "### Scenario: Git failures are errors while absent repositories remain missing\n\n**Not proven: the scenario could not run on base `c90b67859a` (ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class=\"list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]\" data-thread-item=\"d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b\">…</li> intercepts pointer events: getByText(\"broken Git checkpoint proof\").first()).**\n\n|  | Base `c90b67859a` | Head `9d3e315a6d` |\n| --- | --- | --- |\n| Result | ⚠️ could not run<br>ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class=\"list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]\" data-thread-item=\"d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b\">…</li> intercepts pointer events: getByText(\"broken Git checkpoint proof\").first() | ✅ passed |\n| failure | ![Base c90b67859a: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fe0615303fafd5d7/001-failure.png) |  |\n| completed broken repository turn |  | ![Head 9d3e315a6d: completed broken repository turn](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ecee90a64ca7bb98/001-completed-broken-repository-turn.png) |\n",
  "base": {
    "sha": "c90b67859a6d85fc957f9ffe25ba95113c6479d3",
    "status": "error",
    "title": "Git failures are errors while absent repositories remain missing",
    "message": "ACTION_FAILED: tap did not become actionable in time: locator.click: Timeout 21743ms exceeded. <li class=\"list-none py-0.5 [content-visibility:auto] [contain-intrinsic-size:auto_58px]\" data-thread-item=\"d3e3e0af-792f-44ad-bf8a-de62a0fd0388:mcp:aa18650c-a948-4e02-9d8c-8aa20071263b\">…</li> intercepts pointer events: getByText(\"broken Git checkpoint proof\").first()",
    "steps": [
      {
        "step": "app.open <pairing link>",
        "status": "passed"
      },
      {
        "step": "locator.tap getByText(\"broken Git checkpoint proof\").first()",
        "status": "failed"
      }
    ],
    "captures": [
      "<artifact>"
    ],
    "videos": [
      "<artifact>"
    ]
  },
  "head": {
    "sha": "9d3e315a6db6db5b8029bb613184513647aa16d5",
    "status": "passed",
    "title": "Git failures are errors while absent repositories remain missing",
    "steps": [
      {
        "step": "app.open <pairing link>",
        "status": "passed"
      },
      {
        "step": "locator.tap getByRole(\"button\", name: \"broken Git checkpoint proof, Done, broken-repository\")",
        "status": "passed"
      },
      {
        "step": "app.screenshot completed-broken-repository-turn",
        "status": "passed"
      }
    ],
    "captures": [
      "<artifact>"
    ],
    "videos": [
      "<artifact>"
    ]
  }
}

