Files
a5768549 81a037939b fix(wait): explain whitespace-sensitive text matching (#3350)
## Summary

Related to #2947. Preserve the existing Puppeteer matching behavior and
improve its documentation and timeout diagnostics. This does **not**
implement whitespace normalization or regex matching.

- Describe exact accessible-name matching and case-sensitive DOM
substring matching, including preserved spaces/newlines.
- Add a timeout-only hint suggesting a distinctive substring; throw a
combined TimeoutError with the original error as its cause and leave
non-timeout errors unchanged.
- Cover timeout advice, the formatted MCP error response, unchanged
whitespace forwarding, and non-timeout errors.
- Regenerate the tool reference.

## Review revision verification

Commit: b05d62307c. Both updated
regressions failed before the fix; all 9 snapshot tests pass after it.
Build, typecheck, format and check-format pass on Windows / Node
24.19.0. Full-suite attempts hit local execution time limits; no
complete full-suite pass is claimed for this revision.

## Previous revision verification

Tested commit: `e9339e252e225fcb48d58ed806b7735034235f49`, based on
`ada7963246c0c91eae185125a57aecd13cbe0376`.

[Isolated fork validation
job](https://github.com/a5768549/chrome-devtools-mcp/actions/runs/40338560835/job/121626630818)
on Ubuntu, Node **22.23.3**:

- `npm ci` and `npm run bundle`: passed.
- `npm run test -- --test-concurrency=1`: **1766 passed, 0 failed, 0
cancelled, 2 skipped**. The two skips are existing Windows-only cases.
- `npm run test:notices:no-build`: **1 passed**.
- `npm run typecheck`, `npm run check-format`: passed.
- `npm run gen` followed by `git diff --exit-code`: passed.

The unchanged baseline was run with the same setup (1762 passed, 2
skipped). Final test names were compared with the baseline: no existing
tests were missing.

Additional Windows focused validation: `npm run test --
tests/tools/snapshot.test.ts --test-concurrency=1`: 9 passed.

Windows full-suite success is not claimed: the unchanged baseline and
candidates fail the same ConfigWatcher symlink test with `EPERM` on this
workstation. Earlier parallel Node 24 runs returned success but
inconsistent completed-test counts, so those were not used as the
full-suite acceptance evidence. The upstream CI matrix remains separate
from this fork validation.

Prepared and verified with AI assistance (Hermes Agent).
2026-11-03 15:26:50 +00:00
..