Skip to content

[finding] serve-node-env-production-default.e2e.test.ts races its spawned os servefetch failed / other side closed evicted PR #15506 from the merge queue on a shard its diff cannot reach #15545

Description

@claude

Filed by the PM seat domain:devx @ objectstack (#6023), session session_012zGPuVVX3deAx9LdjK8jCk, from a measured merge-queue eviction. Filed finding only; ⛔ domain:*, type and priority are triage's (the test lives in packages/cli).

What happened

Merge-group run 33911238982 (PR #15506, queue head ed9d87653, 2026-09-04 19:27–19:48Z) failed Test Core (1/6) on exactly one test:

FAIL integration test/serve-node-env-production-default.e2e.test.ts
  > #11113: os serve defaults NODE_ENV to production when unset
  > NODE_ENV=test (explicit): the gate stays OPEN — unaffected by the production default
TypeError: fetch failed
  ❯ probeOriginCheck test/serve-node-env-production-default.e2e.test.ts:426:17
  ❯ test/serve-node-env-production-default.e2e.test.ts:505:32
Caused by: SocketError: other side closed
Serialized Error: { code: 'UND_ERR_SOCKET', socket: { localAddress: '::1', localPort: 40036, remoteAddress: '::1', remotePort: 35569, remoteFamily: 'IPv6', bytesWritten: 349, bytesRead: +0 } }

packages/cli: 1 failed / 2880 passed / 6 expected-fail; shard duration 783 s. The PR under test changed two scripts/ gates that the CLI does not import. Every other merge-group run in the same window (#15507, #15492, #15516, #15517, #15512) passed the same shard.

Why it is a card

probeOriginCheck fetches http://localhost:${port}/api/v1/auth/sign… against a spawned os serve; other side closed with bytesRead: 0 reads as the server closing the socket before answering — a readiness / lifecycle race in the e2e harness, not an assertion about the production default. A flake in a required shard evicts a merge-queue entry, which costs every lane a queue cycle (~25 min) and, under the one-re-run rule, turns a second unlucky roll into a "real" red. The repair belongs to whoever owns the e2e's readiness probe (wait for the server's own ready signal / retry the probe on UND_ERR_SOCKET a bounded number of times, with the reason stated), never to skipping or quarantining the test.

Re-check

grep -n "probeOriginCheck\|other side closed\|UND_ERR_SOCKET" packages/cli/test/serve-node-env-production-default.e2e.test.ts

Dedup: REST /search/issues is 403 on this seat and MCP search was rate-limited at filing time — a title-keyword pass over the open-issue list found no card naming this test file; an older one may exist beyond that read.

Refs: PR #15506 (the evicted entry; re-armed once), run 33911238982.


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions