Skip to content

ci(e2e): parse the quick-run listing past pnpm's engine warning - #195

Merged
krazymir merged 2 commits into
mainfrom
claude/shared-worker-tests-7ad3df
Oct 19, 2026
Merged

krazymir merged 2 commits into
mainfrom
claude/shared-worker-tests-7ad3df

Conversation

@krazymir

Copy link
Copy Markdown
Contributor

What broke

A QUICK e2e build on Jenkins failed in its first seconds:

node ci/e2e-quick-list.mjs packages/web/e2e/results/quick-test-list.txt
{"node":">=22"} (current: {"node":"v20.19.2","pnpm":"9.15.9"})
SyntaxError: Unexpected non-whitespace character after JSON at position 16

The script took the Playwright JSON report to start at the first { on stdout. The agent runs Node 20.19.2 (.tool-versions) while the root package.json wants >=22, so pnpm prints WARN Unsupported engine: wanted: {"node":">=22"} ... to stdout before the report, and the parse hit that line. Because Verify is failFast, Jenkins then SIGTERMed the sibling branches, which is why the unit-test branch showed content-risk.test.js dying with signal: 'SIGTERM' after 15 s. That test was collateral, not the cause.

Fix

The report is now the first { from which the rest of stdout parses as one JSON document. A listing with no report fails with a message that shows the output instead of a bare SyntaxError.

Verified

  • node ci/e2e-quick-list.mjs <out> on the real suite: lists 211 tests and writes a 10% sample.
  • The parser on sample output: warning-prefixed report, plain report, and no report at all.

CI-only change: no APP_VERSION bump, no changelog entry.

🤖 Generated with Claude Code

krazymirk and others added 2 commits October 19, 2026 11:43
ci/e2e-quick-list.mjs took the Playwright JSON report to start at the first `{` on
stdout. On an agent running Node 20 (the repo wants >=22) pnpm prints
`WARN Unsupported engine: wanted: {"node":">=22"} (current: ...)` to stdout first, so
the parse hit that line, the quick-list step crashed, and failFast aborted the other
Verify branches (the unit-test branch died mid content-risk.test.js with SIGTERM).

The report is now the first `{` from which the rest of stdout parses as one JSON
document; a listing with no report fails with a message that shows the output.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@krazymir
krazymir merged commit 1809fed into main Oct 19, 2026
9 checks passed
@krazymir
krazymir deleted the claude/shared-worker-tests-7ad3df branch October 19, 2026 08:57
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