run.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b9-7c44-7f18-bbdf-df59b5983c5e · targets: web, ios
✓ target "web" command at http://127.0.0.1:39735/.well-known/t3/environment ready 4.15s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 42.29s
→ expect.toBeVisible failed
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 42.29s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
ASSERTION_FAILED: expect.toBeVisible failed
locator: getByRole("button", name: "Unarchive Release checklist")
expected: visible
observed: no node (match count 0)
❯ scenarios/archive-live-updates.e2e.ts:37:7
35| // Keep the first client mounted: the shell event must refresh it…
36| try {
37| await expect(screen.getByRole("button", "Unarchive Release chec…
| ^
38| } finally {
39| await stableCapture("archive-after-external-action");
❯ at http://127.0.0.1:39735/settings/archived
❯ app 1 error logged
× console error: WebSocket connection to 'ws://127.0.0.1:39735/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
❯ trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:49:22
Duration 48.10s (startup 4.15s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action-settling.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/002-archive-before-external-action.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/003-archive-after-external-action-settling.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/004-archive-after-external-action.png
Markdown .e2e/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:37 > An externally archived thread appears in the open Archive
ASSERTION_FAILED: expect.toBeVisible failed
trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
run.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8ba-a85c-7953-a198-4c1526ef258c · targets: web, ios
✓ target "web" command at http://127.0.0.1:39445/.well-known/t3/environment ready 4.53s
✓ |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 13.26s
✓ |web| scenarios/archive-live-updates.e2e.ts (1 test) 13.26s
Test Files 1 passed (1)
Tests 1 passed (1)
Start at 03:50:38
Duration 19.58s (startup 4.53s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action-settling.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/002-archive-before-external-action.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/003-archive-after-external-action-settling.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/004-archive-after-external-action.png
Markdown .e2e/summary.md
manual-base-final.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b7-410d-78d1-a260-64df9cd3c481 · targets: web, ios
✓ target "web" command at http://127.0.0.1:44385/.well-known/t3/environment ready 3.15s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 24.58s
→ expect.toBeVisible failed
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 24.58s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
ASSERTION_FAILED: expect.toBeVisible failed
locator: getByRole("button", name: "Unarchive Release checklist")
expected: visible
observed: no node (match count 0)
❯ scenarios/archive-live-updates.e2e.ts:27:7
25| // Keep the first client mounted: the shell event must refresh it…
26| try {
27| await expect(screen.getByRole("button", "Unarchive Release chec…
| ^
28| } finally {
29| await app.screenshot("archive-after-external-action");
❯ at http://127.0.0.1:44385/settings/archived
❯ trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:46:55
Duration 28.31s (startup 3.15s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/002-archive-after-external-action.png
Markdown .e2e/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:27 > An externally archived thread appears in the open Archive
ASSERTION_FAILED: expect.toBeVisible failed
trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
manual-base-run.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b6-42b8-7e49-bae7-14b53457dd4b · targets: web, ios
✓ target "web" command at http://127.0.0.1:44731/.well-known/t3/environment ready 4.26s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 38.40s
→ locator.click: Timeout 30000ms exceeded.
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 38.40s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
Call log:
- waiting for getByText('Release checklist', { exact: true }).first()
- locator resolved to Release checklist
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
-
… intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 100ms
53 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 500ms
❯ scenarios/archive-live-updates.e2e.ts:21:74
19| const second = await context.newPage();
20| await second.goto(new URL(await readFile(`${T3_HOME}/pairing-path…
21| await second.getByText("Release checklist", { exact: true }).firs…
22| await second.getByText("Archive thread", { exact: true }).click();
23| await second.getByText("Release checklist", { exact: true }).wait…
❯ at http://127.0.0.1:44731/settings/archived
❯ trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:45:50
Duration 43.58s (startup 4.26s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action.png
Markdown .e2e/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:21 > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
trace .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
manual-base.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scripts/scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b6-121b-7e10-ab77-97d05c541a13 · targets: web, ios
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Run Errors 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
ERROR configuration error NO_TESTS (collection)
no test file matched scripts/scenarios/archive-live-updates.e2e.ts (did you mean scenarios/archive-live-updates.e2e.ts?); the config globs discovered scenarios/add-project-tab-reaches-submit.e2e.ts, scenarios/archive-live-updates.e2e.ts, scenarios/mobile-opens-a-seeded-thread.e2e.ts and 1 more; pass --pass-with-no-tests to allow this
Test Files no test files
Tests no tests executed
Errors 1 error
Start at 03:45:38
Duration 549ms
Report (not written)
manual-head.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-live-updates.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b8-1a65-7c2a-abd1-07c5727dcd4c · targets: web, ios
✓ target "web" command at http://127.0.0.1:43481/.well-known/t3/environment ready 14.59s
✓ |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 18.15s
✓ |web| scenarios/archive-live-updates.e2e.ts (1 test) 18.15s
Test Files 1 passed (1)
Tests 1 passed (1)
Start at 03:47:51
Duration 33.78s (startup 14.59s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action.png
.e2e/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/002-archive-after-external-action.png
Markdown .e2e/summary.md
mobile-base-retry.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-mobile-live-updates.e2e.ts --target ios ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8c1-0b5e-7fad-9f10-3671df365d42 · targets: web, ios
ℹ leasing 1 ios device(s) from simlock
ℹ simlock: leased 936909f2a6e247ea93c2c3b9b1032c76
ℹ booting B2D564C7-C7A5-494A-A7F2-A8F4BCFBB508 (1 of 1)
mobile-base.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-mobile-live-updates.e2e.ts --target ios ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8bc-ffba-7fb6-a313-c1bfad459daf · targets: web, ios
ℹ leasing 1 ios device(s) from simlock
ℹ simlock: leased 67915af622f14732be07fe7f82ca6b4d
ℹ booting 51D7CCCF-4898-43F3-BC5D-330BD663B8A2 (1 of 1)
ℹ 51D7CCCF-4898-43F3-BC5D-330BD663B8A2: com.t3tools.t3code.dev did not open (open com.t3tools.t3code.dev failed: Simulator device failed to launch com.t3tools.t3code.dev. Hint: The app bundle is not installed on this simulator. Run install before open.); the first attempt opens it
✓ mobile engine for target "ios" prepared 137.73s
✓ target "ios" command at http://127.0.0.1:8190/status ready 8.37s
interrupted: stopping the running test and tearing down (interrupt again to force)
mobile-prepare.log
$ node scripts/mobile-native-client.ts ensure ios --prepare ⊘ cache disabled
Downloading native client ios/development/5fa891c99bf29870cc7d56112e3458d95a948393 from the shared cache...
Client ready for ios (remote); lease a device and install.
{"status":"ready","source":"remote","fingerprint":"5fa891c99bf29870cc7d56112e3458d95a948393"}
prove-second.log
$ node scripts/prove-scenario.ts scripts/scenarios/archive-live-updates.e2e.ts --base b3fdf2b10fb92e5dbc71a83381c602a8a464bbca --head 2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6 --upload-command 'ghdrop upload' ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b4-1b5e-7ad2-a42d-ba986a8082c3 · targets: web, ios
✓ target "web" command at http://127.0.0.1:37997/.well-known/t3/environment ready 4.38s
✓ target "ios" command at http://127.0.0.1:8190/status ready 3.66s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 38.12s
→ locator.click: Timeout 30000ms exceeded.
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 38.12s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
Call log:
- waiting for getByText('Release checklist', { exact: true }).first()
- locator resolved to Release checklist
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 100ms
54 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 500ms
❯ scenarios/archive-live-updates.e2e.ts:19:74
17| const second = await context.newPage();
18| await second.goto(new URL("/", await browser.url()).href);
19| await second.getByText("Release checklist", { exact: true }).firs…
20| await second.getByText("Archive thread", { exact: true }).click();
21| await second.getByText("Release checklist", { exact: true }).wait…
❯ at http://127.0.0.1:37997/settings/archived
❯ app 1 error logged
× console error: WebSocket connection to 'ws://127.0.0.1:37997/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
❯ trace .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:43:29
Duration 46.92s (startup 8.04s)
Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action.png
Markdown .e2e/prove/base/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:19 > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
trace .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
Scope: all 42 workspace projects
✓ Lockfile passes supply-chain policies (verified 19m 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: [private path]
Virtual store is at: node_modules/.pnpm
Progress: resolved 567, reused 567, downloaded 0, added 552
Progress: resolved 897, reused 897, downloaded 0, added 882
Progress: resolved 1319, reused 1319, downloaded 0, added 1306
Progress: resolved 1643, reused 1643, downloaded 0, added 1632
Progress: resolved 1673, reused 1673, downloaded 0, added 1671
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 7.4s using pnpm v12.14.0
RUN e2e v0.23.0 [private path]
run 01a1c8b4-f8ec-7295-a0ed-8d23fef1d13b · targets: web, ios
✓ target "web" command at http://127.0.0.1:42227/.well-known/t3/environment ready 3.77s
✓ target "ios" command at http://127.0.0.1:8190/status ready 4.34s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 41.73s
→ locator.click: Timeout 30000ms exceeded.
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 41.73s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
Call log:
- waiting for getByText('Release checklist', { exact: true }).first()
- locator resolved to Release checklist
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 100ms
53 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 500ms
❯ scenarios/archive-live-updates.e2e.ts:21:74
19| const second = await context.newPage();
20| await second.goto(new URL(await readFile(`${T3_HOME}/pairing-path…
21| await second.getByText("Release checklist", { exact: true }).firs…
22| await second.getByText("Archive thread", { exact: true }).click();
23| await second.getByText("Release checklist", { exact: true }).wait…
❯ at http://127.0.0.1:42227/settings/archived
❯ app 1 error logged
× console error: WebSocket connection to 'ws://127.0.0.1:42227/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
❯ trace .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:44:26
Duration 50.89s (startup 8.11s)
Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory)
Screenshots .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/screenshots/001-archive-before-external-action.png
Markdown .e2e/prove/head/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:21 > An externally archived thread appears in the open Archive
ERROR: locator.click: Timeout 30000ms exceeded.
trace .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
{
"scenario": "An externally archived thread appears in the open Archive",
"failsOnBase": false,
"passesOnHead": false,
"baseSha": "b3fdf2b10fb92e5dbc71a83381c602a8a464bbca",
"headSha": "2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6",
"verdict": "Not proven: the scenario could not run on base `b3fdf2b10f` (ERROR: locator.click: Timeout 30000ms exceeded.\nCall log:\n - waiting for getByText('Release checklist', { exact: true }).first()\n - locator resolved to Release checklist\n - attempting click action\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 20ms\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 100ms\n 54 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 500ms\n).",
"steps": {
"base": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"Release checklist\").first() → visible",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "passed"
},
{
"step": "app.screenshot archive-before-external-action",
"status": "passed"
},
{
"step": "browser.cookies ",
"status": "passed"
},
{
"step": "browser.url ",
"status": "passed"
}
],
"head": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"Release checklist\").first() → visible",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "passed"
},
{
"step": "app.screenshot archive-before-external-action",
"status": "passed"
},
{
"step": "browser.cookies ",
"status": "passed"
},
{
"step": "browser.url ",
"status": "passed"
}
]
},
"captures": [
"[private path]",
"[private path]",
"[private path]",
"[private path]"
],
"videos": [
"[private path]",
"[private path]"
],
"markdown": "### Scenario: An externally archived thread appears in the open Archive\n\n**Not proven: the scenario could not run on base `b3fdf2b10f` (ERROR: locator.click: Timeout 30000ms exceeded.\nCall log:\n - waiting for getByText('Release checklist', { exact: true }).first()\n - locator resolved to Release checklist\n - attempting click action\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 20ms\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 100ms\n 54 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 500ms\n).**\n\n| | Base `b3fdf2b10f` | Head `2e94c7ea67` |\n| --- | --- | --- |\n| Result | ⚠️ could not run
ERROR: locator.click: Timeout 30000ms exceeded.
Call log:
- waiting for getByText('Release checklist', { exact: true }).first()
- locator resolved to Release checklist
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 100ms
54 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 500ms
| ⚠️ could not run
ERROR: locator.click: Timeout 30000ms exceeded.
Call log:
- waiting for getByText('Release checklist', { exact: true }).first()
- locator resolved to Release checklist
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 100ms
53 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- … intercepts pointer events
- retrying click action
- waiting 500ms
|\n| archive before external action |  |  |\n| failure |  |  |\n",
"base": {
"sha": "b3fdf2b10fb92e5dbc71a83381c602a8a464bbca",
"status": "error",
"title": "An externally archived thread appears in the open Archive",
"message": "ERROR: locator.click: Timeout 30000ms exceeded.\nCall log:\n - waiting for getByText('Release checklist', { exact: true }).first()\n - locator resolved to Release checklist\n - attempting click action\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 20ms\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 100ms\n 54 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 500ms\n",
"steps": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"Release checklist\").first() → visible",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "passed"
},
{
"step": "app.screenshot archive-before-external-action",
"status": "passed"
},
{
"step": "browser.cookies ",
"status": "passed"
},
{
"step": "browser.url ",
"status": "passed"
}
],
"captures": [
"[private path]",
"[private path]"
],
"videos": [
"[private path]"
]
},
"head": {
"sha": "2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6",
"status": "error",
"title": "An externally archived thread appears in the open Archive",
"message": "ERROR: locator.click: Timeout 30000ms exceeded.\nCall log:\n - waiting for getByText('Release checklist', { exact: true }).first()\n - locator resolved to Release checklist\n - attempting click action\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 20ms\n 2 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 100ms\n 53 × waiting for element to be visible, enabled and stable\n - element is visible, enabled and stable\n - scrolling into view if needed\n - done scrolling\n - … intercepts pointer events\n - retrying click action\n - waiting 500ms\n",
"steps": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"Release checklist\").first() → visible",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "passed"
},
{
"step": "app.screenshot archive-before-external-action",
"status": "passed"
},
{
"step": "browser.cookies ",
"status": "passed"
},
{
"step": "browser.url ",
"status": "passed"
}
],
"captures": [
"[private path]",
"[private path]"
],
"videos": [
"[private path]"
]
}
}
prove.log
$ node scripts/prove-scenario.ts scripts/scenarios/archive-live-updates.e2e.ts --base b3fdf2b10fb92e5dbc71a83381c602a8a464bbca --head 2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6 --upload-command 'ghdrop upload' ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8b2-1f64-71c3-91d7-bb5c91a5cad6 · targets: web, ios
✓ target "web" command at http://127.0.0.1:37493/.well-known/t3/environment ready 6.71s
✓ target "ios" command at http://127.0.0.1:8190/status ready 4.67s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 33.82s
→ locator did not become visible: getByText("No archived threads")
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 33.82s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
LOCATOR_NOT_FOUND: locator did not become visible: getByText("No archived threads")
❯ scenarios/archive-live-updates.e2e.ts:9:3
7| await t3.thread({ project, title: "Release checklist", messages: ["…
8| await t3.open("/settings/archived");
9| await screen.getByText("No archived threads", { exact: true }).wait…
| ^
10| await app.screenshot("archive-before-external-action");
11| const external = await chromium.launch({ headless: true });
❯ at http://127.0.0.1:37493/pair
❯ app 5 errors logged
× console error: WebSocket connection to 'ws://127.0.0.1:37493/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
× console error: WebSocket connection to 'ws://127.0.0.1:37493/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
× console error: WebSocket connection to 'ws://127.0.0.1:37493/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
2 more app errors logged
❯ trace .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:41:19
Duration 46.95s (startup 11.38s)
Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory)
Markdown .e2e/prove/base/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:9 > An externally archived thread appears in the open Archive
LOCATOR_NOT_FOUND: locator did not become visible: getByText("No archived threads")
trace .e2e/prove/base/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
Scope: all 42 workspace projects
✓ Lockfile passes supply-chain policies (verified 17m 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: [private path]
Virtual store is at: node_modules/.pnpm
Progress: resolved 441, reused 441, downloaded 0, added 426
Progress: resolved 848, reused 848, downloaded 0, added 833
Progress: resolved 1130, reused 1130, downloaded 0, added 1115
Progress: resolved 1380, reused 1380, downloaded 0, added 1365
Progress: resolved 1623, reused 1623, downloaded 0, added 1614
Progress: resolved 1655, reused 1655, downloaded 0, added 1651
Progress: resolved 1674, reused 1674, downloaded 0, added 1673
Packages: +1678
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1678, reused 1674, downloaded 0, added 1678, done
.../esbuild@0.28.2/node_modules/esbuild postinstall$ node install.js
.../node_modules/node-pty install$ node scripts/prebuild.js || node-gyp rebuild
.../react-native-enriched-markdown postinstall$ node postinstall.mjs
.../node_modules/node-pty install: > Checking prebuilds...
.../node_modules/node-pty install: Done
.../node_modules/node-pty postinstall$ node scripts/post-install.js
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] restoring vendored native assets ...
.../node_modules/node-pty postinstall: > Cleaning release folder...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] fetching runtime v0.26.3 from https://github.com/tree-sitter/tree-sitter/archive/refs/tags/v0.26.3.tar.gz
.../node_modules/node-pty postinstall: > Moving conpty.dll...
.../node_modules/node-pty postinstall: SKIPPED (not Windows)
.../node_modules/node-pty postinstall: Done
.../esbuild@0.28.2/node_modules/esbuild postinstall: Done
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] runtime -> react-native-enriched-markdown/cpp/highlight/vendor/tree-sitter/src
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-json@0.24.8 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-html@0.23.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-css@0.23.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading @tree-sitter-grammars/tree-sitter-markdown@0.3.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading @tree-sitter-grammars/tree-sitter-yaml@0.7.1 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-go@0.23.4 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-java@0.23.5 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-javascript@0.23.1 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-python@0.23.6 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-c@0.23.5 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-rust@0.23.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-bash@0.23.3 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-typescript@0.23.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-cpp@0.23.4 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-swift@0.7.0 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-php@0.24.2 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-ruby@0.23.1 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] downloading tree-sitter-c-sharp@0.23.1 ...
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] json -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/json
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] html -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/html
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] css -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/css
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] markdown -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/markdown
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] yaml -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/yaml
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] go -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/go
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] java -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/java
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] javascript -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/javascript
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] python -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/python
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] c -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/c
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] rust -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/rust
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] bash -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/bash
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] typescript -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/typescript
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] tsx -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/tsx
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] cpp -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/cpp
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] swift -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/swift
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] php -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/php
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] ruby -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/ruby
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] c-sharp -> react-native-enriched-markdown/cpp/highlight/vendor/grammars/c-sharp
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] grammar sources ready.
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] done.
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] fetching xcframework from https://github.com/erweixin/RaTeX/releases/download/v0.1.15/RaTeX.xcframework.zip
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] fetching source from https://github.com/erweixin/RaTeX/archive/refs/tags/v0.1.15.tar.gz
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] RaTeX v0.1.15 -> [private path]
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] done.
.../react-native-enriched-markdown postinstall: [react-native-enriched-markdown] postinstall complete.
.../react-native-enriched-markdown postinstall: 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 15.2s using pnpm v12.14.0
RUN e2e v0.23.0 [private path]
run 01a1c8b3-1e95-7060-bc6b-a496bcdb5f7d · targets: web, ios
✓ target "web" command at http://127.0.0.1:36975/.well-known/t3/environment ready 5.13s
✓ target "ios" command at http://127.0.0.1:8190/status ready 5.81s
× |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive 34.73s
→ locator did not become visible: getByText("No archived threads")
❯ |web| scenarios/archive-live-updates.e2e.ts (1 test | 1 failed) 34.73s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-live-updates.e2e.ts > An externally archived thread appears in the open Archive
LOCATOR_NOT_FOUND: locator did not become visible: getByText("No archived threads")
❯ scenarios/archive-live-updates.e2e.ts:9:3
7| await t3.thread({ project, title: "Release checklist", messages: ["…
8| await t3.open();
9| await screen.getByText("Release checklist", { exact: true }).first(…
| ^
10| await app.open("/settings/archived");
11| await screen.getByText("No archived threads", { exact: true }).wait…
❯ at http://127.0.0.1:36975/pair
❯ app 5 errors logged
× console error: WebSocket connection to 'ws://127.0.0.1:36975/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
× console error: WebSocket connection to 'ws://127.0.0.1:36975/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
× console error: WebSocket connection to 'ws://127.0.0.1:36975/ws?clientSurface=web&clientAppVersion=0.1.8&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=[redacted credential]&orchestrationProtoc…
2 more app errors logged
❯ trace .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
❯ video .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:42:24
Duration 46.60s (startup 10.94s)
Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory)
Markdown .e2e/prove/head/summary.md
Failed × |web| scenarios/archive-live-updates.e2e.ts:9 > An externally archived thread appears in the open Archive
LOCATOR_NOT_FOUND: locator did not become visible: getByText("No archived threads")
trace .e2e/prove/head/results/archive-live-updates-an-externally-archived-thread-e4a944179733463f/trace.md
{
"scenario": "An externally archived thread appears in the open Archive",
"failsOnBase": false,
"passesOnHead": false,
"baseSha": "b3fdf2b10fb92e5dbc71a83381c602a8a464bbca",
"headSha": "2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6",
"verdict": "Not proven: the scenario could not run on base `b3fdf2b10f` (LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\")).",
"steps": {
"base": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "failed"
}
],
"head": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "failed"
}
]
},
"captures": [
"[private path]",
"[private path]"
],
"videos": [
"[private path]",
"[private path]"
],
"markdown": "### Scenario: An externally archived thread appears in the open Archive\n\n**Not proven: the scenario could not run on base `b3fdf2b10f` (LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\")).**\n\n| | Base `b3fdf2b10f` | Head `2e94c7ea67` |\n| --- | --- | --- |\n| Result | ⚠️ could not run
LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\") | ⚠️ could not run
LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\") |\n| failure |  |  |\n",
"base": {
"sha": "b3fdf2b10fb92e5dbc71a83381c602a8a464bbca",
"status": "error",
"title": "An externally archived thread appears in the open Archive",
"message": "LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\")",
"steps": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "failed"
}
],
"captures": [
"[private path]"
],
"videos": [
"[private path]"
]
},
"head": {
"sha": "2e94c7ea67336fb664ba081e5d9a4ae3ea0b19e6",
"status": "error",
"title": "An externally archived thread appears in the open Archive",
"message": "LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"No archived threads\")",
"steps": [
{
"step": "app.open ",
"status": "passed"
},
{
"step": "app.open /settings/archived",
"status": "passed"
},
{
"step": "locator.waitFor getByText(\"No archived threads\") → visible",
"status": "failed"
}
],
"captures": [
"[private path]"
],
"videos": [
"[private path]"
]
}
}
run.log
~/scripts$ E2E_TELEMETRY_DISABLED=1 e2e run scenarios/archive-reconnect.e2e.ts --target web ⊘ cache disabled
RUN e2e v0.23.0 [private path]
run 01a1c8bf-8dea-7ae3-a54c-399d541da1bb · targets: web, ios
✓ target "web" command at http://127.0.0.1:35723/.well-known/t3/environment ready 8.28s
× |web| scenarios/archive-reconnect.e2e.ts > Reconnect refreshes archives missed while disconnected 38.48s
→ locator did not become visible: getByText("Reconnect checklist").first()
❯ |web| scenarios/archive-reconnect.e2e.ts (1 test | 1 failed) 38.48s
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
FAIL |web| scenarios/archive-reconnect.e2e.ts > Reconnect refreshes archives missed while disconnected
LOCATOR_NOT_FOUND: locator did not become visible: getByText("Reconnect checklist").first()
❯ scenarios/archive-reconnect.e2e.ts:24:3
22| });
23| await t3.open();
24| await screen.getByText("Reconnect checklist", { exact: true }).firs…
| ^
25| await app.open("/settings/archived");
26| await screen.getByText("No archived threads", { exact: true }).wait…
❯ at http://127.0.0.1:35723/
❯ trace .e2e/results/archive-reconnect-reconnect-refreshes-archives-00776c6f1a2fa1b3/trace.md
❯ video .e2e/results/archive-reconnect-reconnect-refreshes-archives-00776c6f1a2fa1b3/attempt-1/video/video.webm
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 0 passed (1)
Tests 1 failed | 0 passed (1)
Start at 03:56:01
Duration 50.42s (startup 8.28s)
Traces .e2e/results/ (1 page, trace.md in each test's directory)
Markdown .e2e/summary.md
Failed × |web| scenarios/archive-reconnect.e2e.ts:24 > Reconnect refreshes archives missed while disconnected
LOCATOR_NOT_FOUND: locator did not become visible: getByText("Reconnect checklist").first()
trace .e2e/results/archive-reconnect-reconnect-refreshes-archives-00776c6f1a2fa1b3/trace.md