Summary
Split from #2013 after the fs validation reconciliation. The broad #2013 tracker named http as a historical stdlib argument-validation cluster. Existing open HTTP issues cover missing helper/export surface (#2519, #3712) and other HTTP behavior, but there was no focused child that owns Node-shaped validation errors for the claimed HTTP surface.
This issue tracks the HTTP validation remainder so #2013 can link to a precise module child instead of carrying an unsplit http backlog.
Related but separate
Local scope signals
Current curated HTTP fixtures live under:
test-parity/node-suite/http/server/
test-parity/node-suite/http/agent/
Generated inventory also has test-files/test_parity_http.ts, which probes module-level helper and property surface that should validate arguments like Node once claimed.
Scope
Validate and, where needed, fix Node-compatible validation for deterministic node:http entry points in the supported surface, including:
http.validateHeaderName(name[, label]) and http.validateHeaderValue(name, value) once exposed;
http.request() / http.get() option and callback argument shapes for covered cases;
http.createServer() listener/options validation for covered cases;
Agent constructor/options and request creation validation where the curated suite exercises them;
- parser/proxy helper argument validation if those helpers are claimed in the manifest.
Match Node's thrown error class and .code where covered, such as ERR_INVALID_ARG_TYPE, ERR_INVALID_ARG_VALUE, and HTTP header validation codes.
Acceptance
Summary
Split from #2013 after the fs validation reconciliation. The broad #2013 tracker named
httpas a historical stdlib argument-validation cluster. Existing open HTTP issues cover missing helper/export surface (#2519, #3712) and other HTTP behavior, but there was no focused child that owns Node-shaped validation errors for the claimed HTTP surface.This issue tracks the HTTP validation remainder so #2013 can link to a precise module child instead of carrying an unsplit
httpbacklog.Related but separate
validateHeaderName,validateHeaderValue,globalAgent, andmaxHeaderSize.Local scope signals
Current curated HTTP fixtures live under:
test-parity/node-suite/http/server/test-parity/node-suite/http/agent/Generated inventory also has
test-files/test_parity_http.ts, which probes module-level helper and property surface that should validate arguments like Node once claimed.Scope
Validate and, where needed, fix Node-compatible validation for deterministic
node:httpentry points in the supported surface, including:http.validateHeaderName(name[, label])andhttp.validateHeaderValue(name, value)once exposed;http.request()/http.get()option and callback argument shapes for covered cases;http.createServer()listener/options validation for covered cases;Agentconstructor/options and request creation validation where the curated suite exercises them;Match Node's thrown error class and
.codewhere covered, such asERR_INVALID_ARG_TYPE,ERR_INVALID_ARG_VALUE, and HTTP header validation codes.Acceptance
./run_parity_tests.sh --suite node-suite --module httphas no validation output mismatches, or any remaining validation failures are split by exact fixture/API.node:httpvalidation child.