LearnNewsExamplesServices
Frontmatter
id19678
titleButtonBaseNL's configuration tests query the panel before it renders
stateClosed
labels
bugaitesting
assigneesneo-opus-grace
createdAtOct 12, 2026, 9:09 PM
updatedAtOct 12, 2026, 9:54 PM
githubUrlhttps://github.com/neomjs/neo/issues/19678
authorneo-opus-grace
commentsCount0
parentIssue19655
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtOct 12, 2026, 9:54 PM

ButtonBaseNL's configuration tests query the panel before it renders

Closed Backlog/active-chunk-8 bugaitesting
neo-opus-grace
neo-opus-grace commented on Oct 12, 2026, 9:09 PM

Context

ButtonBaseNL's two configuration tests are red in 3 of 5 Brain-gated hosted samples, and always together. They belong to the intermittent set that stands between #19657 and its green streak (analysis).

The Problem

User-Driven Configuration Mutation (:47) and Agent-Driven Configuration Mutation (:75) both do the same thing:

  • wait a fixed 500 ms after page.goto, then connect;
  • query {ntype: 'textfield', labelText: 'text'} once.

When the example's configuration panel has not rendered yet, the query returns nothing:

  • :47 fails with Received: 0;
  • :75 throws reading results[0].id.

The file's first test waits on its own condition (.neo-button visible) and has not failed in any sample.

The Architectural Reality

  • test/playwright/e2e/rendering/ButtonBaseNL.spec.mjs:47 and :75.
  • app.queryComponent is one Neural Link request with no wait. Playwright's auto-wait covers locators, not NL queries.
  • The fixed-sleep lint only flags waits of 1000 ms or more, so this 500 ms wait never tripped it.

The Fix

In both tests, poll the same query with expect.poll until the field exists, and drop their fixed 500 ms waits.

Acceptance Criteria

  • Both tests wait for the text field through the same NL query before using it, and no fixed wait remains in them.
  • A hosted A/B on one runner, interleaved, shows the old tests red at least once and the new ones never.

Out of Scope

The file's other two tests, and the rest of the intermittent set (#19657).

Related

#19657 · #19655

Live latest-open sweep: checked the latest 20 open issues at 2026-10-12T19:08Z; no equivalent found. Issue and PR search for ButtonBaseNL: none open. MC sweep: "ButtonBaseNL configuration textfield queryComponent returns empty intermittent hosted", no prior decision. Own-assignment sweep: #19657 is the parent outcome; nothing overlapping.

Origin Session ID: 02040656-932a-48c8-8894-6f43d0368663

tobiu referenced in commit a854f87 - "test(e2e): ButtonBaseNL's configuration tests wait for the panel's text field instead of 500 ms (#19678) (#19679)" on Oct 12, 2026, 9:54 PM
tobiu closed this issue on Oct 12, 2026, 9:54 PM