browser suite: startup-demo.spec.ts fails on dev #468

Open
opened 2026-11-09 09:44:29 +00:00 by kayg · 0 comments
Owner

Nightly browser suite on dev (D373, #443).

Spec: startup-demo.spec.ts
Source: c751e99309764e30958eb665708e2553c31043c4
Evidence: /home/claude/j406-ev/runs/20261109T061806Z-c751e99/evidence on infraternal-dev-02-std (the newest seven nights are kept)
Full log: /home/claude/j406-ev/runs/20261109T061806Z-c751e99/suite.log

desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page

Error: expect(locator).toHaveText(expected) failed

Locator: locator('.ui-toast-message')
Expected: ".zshrc restored. tmux starts automatically again."
Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements:
    1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer')
    2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts')

Call log:
  - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms
  - waiting for locator('.ui-toast-message')
    3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span>
      - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)."


  55 |       await shot("switched");
  56 |       await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click();
> 57 |       await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again.");
     |                                                       ^
  58 |       await expect.poll(() => screen(page)).toContain("3:  exec tmux new-session -s main");
  59 |
  60 |       // ? opens the docs page and leaves the question up; ✗ closes it for good.
    at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55

desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page

Error: expect(locator).toHaveText(expected) failed

Locator: locator('.ui-toast-message')
Expected: ".zshrc restored. tmux starts automatically again."
Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements:
    1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer')
    2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts')

Call log:
  - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms
  - waiting for locator('.ui-toast-message')
    3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span>
      - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)."


  55 |       await shot("switched");
  56 |       await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click();
> 57 |       await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again.");
     |                                                       ^
  58 |       await expect.poll(() => screen(page)).toContain("3:  exec tmux new-session -s main");
  59 |
  60 |       // ? opens the docs page and leaves the question up; ✗ closes it for good.
    at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55

phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page

Error: expect(locator).toHaveText(expected) failed

Locator: locator('.ui-toast-message')
Expected: ".zshrc restored. tmux starts automatically again."
Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements:
    1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer')
    2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts')

Call log:
  - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms
  - waiting for locator('.ui-toast-message')
    3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span>
      - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)."


  55 |       await shot("switched");
  56 |       await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click();
> 57 |       await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again.");
     |                                                       ^
  58 |       await expect.poll(() => screen(page)).toContain("3:  exec tmux new-session -s main");
  59 |
  60 |       // ? opens the docs page and leaves the question up; ✗ closes it for good.
    at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55

phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page

Error: expect(locator).toHaveText(expected) failed

Locator: locator('.ui-toast-message')
Expected: ".zshrc restored. tmux starts automatically again."
Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements:
    1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer')
    2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts')

Call log:
  - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms
  - waiting for locator('.ui-toast-message')
    3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span>
      - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)."


  55 |       await shot("switched");
  56 |       await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click();
> 57 |       await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again.");
     |                                                       ^
  58 |       await expect.poll(() => screen(page)).toContain("3:  exec tmux new-session -s main");
  59 |
  60 |       // ? opens the docs page and leaves the question up; ✗ closes it for good.
    at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55

small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page

Error: expect(locator).toHaveText(expected) failed

Locator: locator('.ui-toast-message')
Expected: ".zshrc restored. tmux starts automatically again."
Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements:
    1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer')
    2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts')

Call log:
  - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms
  - waiting for locator('.ui-toast-message')
    3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span>
      - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)."


  55 |       await shot("switched");
  56 |       await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click();
> 57 |       await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again.");
     |                                                       ^
  58 |       await expect.poll(() => screen(page)).toContain("3:  exec tmux new-session -s main");
  59 |
  60 |       // ? opens the docs page and leaves the question up; ✗ closes it for good.
    at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55

(and 1 more failing tests)

Log tail for this spec:

  ✘  1068 test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s)
  ✘  1069 test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page (12.1s)
  ✘  1070 test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s)
  ✘  1071 test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s)
  ✘  1072 test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page (11.9s)
  ✘  1073 test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page (11.8s)
  42) test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
  43) test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
  44) test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
  45) test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
  46) test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
  47) test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page 
        at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55
    test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page 
    test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page 
    test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page ─
    test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page 
    test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page 
    test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page 

Rerun with cd apps/tracer && bun x playwright test test/startup-demo.spec.ts.

Nightly browser suite on dev (D373, #443). Spec: `startup-demo.spec.ts` Source: `c751e99309764e30958eb665708e2553c31043c4` Evidence: `/home/claude/j406-ev/runs/20261109T061806Z-c751e99/evidence` on infraternal-dev-02-std (the newest seven nights are kept) Full log: `/home/claude/j406-ev/runs/20261109T061806Z-c751e99/suite.log` ### desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Error: expect(locator).toHaveText(expected) failed Locator: locator('.ui-toast-message') Expected: ".zshrc restored. tmux starts automatically again." Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements: 1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer') 2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts') Call log: - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms - waiting for locator('.ui-toast-message') 3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)." 55 | await shot("switched"); 56 | await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click(); > 57 | await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again."); | ^ 58 | await expect.poll(() => screen(page)).toContain("3: exec tmux new-session -s main"); 59 | 60 | // ? opens the docs page and leaves the question up; ✗ closes it for good. at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 ``` ### desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Error: expect(locator).toHaveText(expected) failed Locator: locator('.ui-toast-message') Expected: ".zshrc restored. tmux starts automatically again." Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements: 1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer') 2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts') Call log: - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms - waiting for locator('.ui-toast-message') 3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)." 55 | await shot("switched"); 56 | await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click(); > 57 | await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again."); | ^ 58 | await expect.poll(() => screen(page)).toContain("3: exec tmux new-session -s main"); 59 | 60 | // ? opens the docs page and leaves the question up; ✗ closes it for good. at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 ``` ### phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Error: expect(locator).toHaveText(expected) failed Locator: locator('.ui-toast-message') Expected: ".zshrc restored. tmux starts automatically again." Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements: 1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer') 2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts') Call log: - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms - waiting for locator('.ui-toast-message') 3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)." 55 | await shot("switched"); 56 | await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click(); > 57 | await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again."); | ^ 58 | await expect.poll(() => screen(page)).toContain("3: exec tmux new-session -s main"); 59 | 60 | // ? opens the docs page and leaves the question up; ✗ closes it for good. at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 ``` ### phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Error: expect(locator).toHaveText(expected) failed Locator: locator('.ui-toast-message') Expected: ".zshrc restored. tmux starts automatically again." Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements: 1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer') 2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts') Call log: - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms - waiting for locator('.ui-toast-message') 3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)." 55 | await shot("switched"); 56 | await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click(); > 57 | await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again."); | ^ 58 | await expect.poll(() => screen(page)).toContain("3: exec tmux new-session -s main"); 59 | 60 | // ? opens the docs page and leaves the question up; ✗ closes it for good. at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 ``` ### small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Error: expect(locator).toHaveText(expected) failed Locator: locator('.ui-toast-message') Expected: ".zshrc restored. tmux starts automatically again." Error: strict mode violation: locator('.ui-toast-message') resolved to 2 elements: 1) <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> aka getByText('Switched. tmux no longer') 2) <span role="status" aria-live="polite" class="ui-toast-message">.zshrc restored. tmux starts automatically again.</span> aka getByText('.zshrc restored. tmux starts') Call log: - Expect "toHaveText" locator('.ui-toast-message') with timeout 5000ms - waiting for locator('.ui-toast-message') 3 × locator resolved to <span role="status" aria-live="polite" class="ui-toast-message">Switched. tmux no longer starts in Infraternal te…</span> - unexpected value "Switched. tmux no longer starts in Infraternal terminals (changed .zshrc)." 55 | await shot("switched"); 56 | await page.getByRole("button", { name: "Restore .zshrc", exact: true }).click(); > 57 | await expect(page.locator(".ui-toast-message")).toHaveText(".zshrc restored. tmux starts automatically again."); | ^ 58 | await expect.poll(() => screen(page)).toContain("3: exec tmux new-session -s main"); 59 | 60 | // ? opens the docs page and leaves the question up; ✗ closes it for good. at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 ``` (and 1 more failing tests) Log tail for this spec: ``` ✘ 1068 test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s) ✘ 1069 test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page (12.1s) ✘ 1070 test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s) ✘ 1071 test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page (12.0s) ✘ 1072 test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page (11.9s) ✘ 1073 test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page (11.8s) 42) test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 43) test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 44) test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 45) test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 46) test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 47) test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page at /home/claude/worktrees/j406/apps/tracer/test/startup-demo.spec.ts:57:55 test/startup-demo.spec.ts:23:3 › desktop ink: ✓ confirms and restores, ✗ keeps, ? opens the page test/startup-demo.spec.ts:23:3 › desktop paper: ✓ confirms and restores, ✗ keeps, ? opens the page test/startup-demo.spec.ts:23:3 › phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page ─ test/startup-demo.spec.ts:23:3 › phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page test/startup-demo.spec.ts:23:3 › small-phone ink: ✓ confirms and restores, ✗ keeps, ? opens the page test/startup-demo.spec.ts:23:3 › small-phone paper: ✓ confirms and restores, ✗ keeps, ? opens the page ``` Rerun with `cd apps/tracer && bun x playwright test test/startup-demo.spec.ts`. <!-- infraternal-browser-spec: startup-demo.spec.ts --> <!-- infraternal-browser-state: failing -->
Sign in to join this conversation.
No labels
launch-qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/infraternal#468
No description provided.