Skip to content

test(browser): re-type a dropped page name in the search palette - #1635

Merged
wesbillman merged 1 commit into
mainfrom
carl/palette-query-flake
Oct 26, 2026
Merged

wesbillman merged 1 commit into
mainfrom
carl/palette-query-flake

Conversation

@wesbillman

@wesbillman wesbillman commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Why

main CI went red twice today with the same WebKit browser-journey failure, in two different specs that share the selectPage helper:

Both fail at navigation.mjs:52, where the Messages option under Pages never becomes visible. The traces show fill("Messages") completing while the Search Buzz field stays focused and empty, so the palette keeps showing Recent activity. The text never reached the composer or anywhere else in the DOM snapshots, and no relay reconnect or palette remount happened in that window.

Change

selectPage now re-types the page name until the field holds it (1s per attempt, 10s overall), and only then waits for the option. Typing the query is idempotent. Keyboard selection and every assertion after it are not retried. This follows the existing "reacquire only for this idempotent action" pattern in message-delivery-polish.spec.mjs.

Root cause: not confirmed

I could not reproduce the drop locally on macOS WebKit: 0 failures in 235 runs, including 16-worker stress and randomly delayed relay responses. CI runs Linux WebKit in the Playwright container. Out of the last ~100 failed CI runs, the only ones with this signature are these two main runs, both from today, so something recent may have made it more likely. If that's a real dropped keystroke in the product during startup, this helper change would stop CI from catching it. That's the tradeoff to review.

Validation (local, macOS, 9614f01)

  • Fail-then-pass: a throwaway spec that cancels the first beforeinput of Messages into the palette reproduces the CI failure exactly with the old helper (toBeVisible → element(s) not found). It passes with this change in WebKit and Chromium.
  • owned-agent-message-deletion, channel-archive-delete-pane and global-search passed in WebKit and Chromium: 28 passed.
  • Hooks: biome, icons, literal-names and sadscan passed.

Browser cases added/removed: none. Deferred: full hosted CI on Linux WebKit.

Opened by Carl, an automated agent, via Wes's GitHub account.

🤖 Generated with Claude Code

Two main runs today (b7bcb1d, c40dfdf) failed in Linux WebKit at
navigation.mjs selectPage: fill("Messages") completed, but the focused
Search Buzz field stayed empty, so the Pages option never appeared.
Re-type until the field holds the name; selection is not retried.

Co-authored-by: Carl <32a2e2c9d428ee08902cab75d956da2c1d235a22d4766b0dd4138bf6e2e5db1d@buzz.block.builderlab.xyz>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Signed-off-by: Wes <[email protected]>
@wesbillman
wesbillman marked this pull request as ready for review October 26, 2026 15:53
@wesbillman
wesbillman requested a review from a team as a code owner October 26, 2026 15:53
@wesbillman
wesbillman merged commit 4a50152 into main Oct 26, 2026
36 checks passed
@wesbillman
wesbillman deleted the carl/palette-query-flake branch October 26, 2026 15:57
johnmatthewtennant added a commit that referenced this pull request Oct 26, 2026
…r-emoji-size

* origin/main: (26 commits)
  perf(profiles): notify once per batch of owner attestations (#1650)
  feat(pi): load Pi durable extensions and providers from Pi packages (#1610)
  Teach agents memory links and source metadata; frame memory as information (#1562)
  Make avatar choices visible in agent creation (#1631)
  fix(pi): take plugin wakes instead of ignoring them (#1612)
  perf(agents): parse activity records once per snapshot (#1449)
  perf(terminal): parse hidden terminal output in slices (#1459)
  perf(composer): reuse the document projection for editor reads (#1463)
  perf(read-state): load peer journals without a strict writeback (#1448)
  perf(channels): keep openLink stable across tab changes (#1525)
  fix: name the Cargo package Buzz so the dev build shows "Buzz" (#789)
  test(browser): re-type a dropped page name in the search palette (#1635)
  test(browser): fix two main CI timing failures (#1567)
  feat(agents): deliver Attention watches and timers to conversations (#1578)
  fix(inbox): stop listing tag-only composer state as drafts (#1531)
  Choose Builderlab agent models at creation and in Settings (#1533)
  feat(communities): sync known communities through Builderlab accounts (#644)
  Tag the last-tagged agent when a Solo chat composer is shown empty (#1615)
  perf(usage): read Claude usage once, then only what changed (#1586)
  feat(chats): ask to share access when sending a chat link into a DM (#1614)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants