Deflake early-hints integration deployment on Windows - #2227
Merged
Conversation
Co-Authored-By: GPT-5 Codex <noreply@openai.com>
Contributor
There was a problem hiding this comment.
Code Review
This pull request introduces a fetchWithTimeout helper function in the early-hints integration tests to replace standard fetch calls, preventing tests from hanging indefinitely. It also refactors the component deployment step to use this helper with a custom timeout and payload. The feedback suggests improving error diagnostics during deployment by reading the response as text before parsing it as JSON, which prevents a SyntaxError from masking the actual HTTP status code if the deployment fails with a non-JSON response.
Contributor
|
Reviewed; no blockers found. The prior non-blocking suggestion (JSON parse ordering on deploy response diagnostics) has been addressed in e113c4c. |
Co-Authored-By: GPT-5 Codex <noreply@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Windows early-hints failure never reached
/hints: the archived server log showsdeploy_componententerednpm installat 07:18:51 and produced no further output before undici's 300-second headers timeout. The Operations API holds response headers until deployment completes, so the accepted connection was waiting on the stalled child process, not an HTTP startup/readiness race; I could not reproduce or recover the deeper npm-internal cause from the one failed run.This keeps the behavior fixture hermetic by replacing its unused source-toolchain install with
node --version, then bounds every suite request with diagnostics that name the request and URL. Refs Windows Integration Testing #525; this is not the readiness/loopback race tracked by Integration test harness: startup-deadline and teardown/loopback-recycle races #1139.For the human reviewer
@harperfast/integration-testingpackage cannot abortsendOperation, so this test posts deployment directly through a local helper. Extending the shared package would improve consistency but widen this deflake into a separate repository/API change.Verification
Component: early-hintsintegration suite; Linux passed all 12 tests three times against freshly builtdist(7.6s, 7.7s, and 7.8s).npm run build— passed.npm run lint:required— passed.Complexity: easy
🤖 Generated by GPT-5 Codex.
Review-Coverage: authored=codex; ran=gemini; adjudicated=domain; declined=claude,cursor-grok,cursor-composer; rounds=2 @ e113c4c
Human-Review-Need: 3 (decisions: local-timeout-wrapper, bypass-fixture-install, per-request-timeout) @ e113c4c