ReviewOS

home-lang/home

Port Node N-API conformance corpus module preparation

#201
Closed chris opened this 14 days ago · 119 comments
14 days ago

Parent tracker: #66

The Bun corpus is clean through napi/napi.test.ts (corpus position 4240) after f603f4629. The next exact boundary is:

  • napi/node-napi-tests/test/js-native-api/2_function_arguments/do.test.ts
  • current result: unsupported module syntax

Port the Node N-API conformance test preparation and module-loading semantics without weakening assertions, then advance through the remaining napi/node-napi-tests corpus. Preserve test isolation and avoid writing generated native-addon artifacts into the Home workspace.

14 days ago

Checkpoint 55e4f281f (fix(runtime): close upgraded TLS socket lifecycle) is pushed to main.

  • Raw TCP sockets passed through tls.connect({ socket }) are now linked to the TLS wrapper and have pending activity/handles retired when the TLS socket is destroyed.
  • TLS close is emitted once, after awaiting callers can resume from secureConnect and attach their terminal listener.
  • Strengthened the focused 12117 regression to exercise repeated connect → secureConnect → destroy → close flows and assert both raw and TLS wrappers are destroyed.
  • Exact corpus entry 4383 passes with zero leaks.
  • Focused TLS-upgrade regression and neighboring TLS peer-certificate/session-reuse units pass with zero leaks.
  • Cumulative corpus entries 4261–4383 pass 123/123 with zero leaks.
  • Forward entries 4384–4401 pass 18/18 with zero leaks.
  • Next boundary: entry 4402, regression/issue/14982/14982.test.ts, whose specialized ../../../harness import is not yet resolved.
14 days ago

Checkpoint fbd12e9a1 (fix(runtime): resolve corpus harness imports by path) is pushed to main.

  • Relative harness imports are now canonicalized only when their parent traversal actually lands at the Bun corpus root.
  • This resolves regression/issue/14982/14982.test.ts's depth-three ../../../harness import without changing the same spelling in deeper N-API fixtures, where it intentionally resolves to the N-API-local harness.
  • The focused commander regression asserts the generated root-harness target and passes with zero leaks.
  • Exact corpus entry 4402 passes with zero leaks.
  • Cumulative corpus entries 4261–4402 pass 142/142 with zero leaks, including the deeper N-API harness cases.
  • Forward entries 4403–4426 pass 24/24 with zero leaks.
  • Next boundary: entry 4427, regression/issue/18413-truncation.test.ts, currently failing because generated explicit-resource-management disposal helpers collide (__callDispose_vyva085h).
14 days ago

Pushed e1e53cf45 (fix(runtime): stabilize delayed compressed streams).

This checkpoint fixes two shared-runtime defects exposed at corpus entry 4427 (regression/issue/18413-truncation.test.ts):

  • parser-hoisted bun:wrap resource-management helpers are now redeclarable across sequential corpus modules, preventing duplicate lexical bindings;
  • async ReadableStream.start() captures no longer publish their backing chunk array before settling, preventing late chunks from being recorded twice;
  • synthetic zstd frames are length-delimited with legacy decoding retained, and decompression errors now report the malformed/truncated frame location.

Verification on the fresh test binary:

  • focused generated-import regression: pass, 0 leaks
  • focused concatenated-zstd regression: pass, 0 leaks
  • focused delayed-zstd regression: pass, 0 leaks
  • exact 4427: 1/1 pass, 0 leaks
  • consecutive 4425–4427: 3/3 pass, 0 leaks
  • cumulative 4261–4427: 167/167 pass, 0 leaks

A 24-file forward probe reached the next independent boundary at 4429 (regression/issue/18547.test.ts): Expected null to equal 123456. Entry 4428 passed before it.

14 days ago

Pushed 9b7649767 (fix(runtime): preserve cloned request cookies).

Corpus entry 4429 (regression/issue/18547.test.ts) exposed that Bun.serve() request clones rebuilt their cookie jar only from the incoming Cookie header. Cookies mutated by the route handler therefore disappeared from the clone. The clone now receives a fresh snapshot of the live cookie values, preserving current state while keeping subsequent clone/original mutations isolated; route params remain copied independently.

Verification:

  • focused exact-file regression: pass, 0 leaks
  • exact corpus 4429: 1/1 pass, 0 leaks
  • cumulative 4261–4429: 169/169 pass, 0 leaks

The next forward boundary is entry 4444 (regression/issue/20144/20144.test.ts): pending async test promise in should not time out requires event-loop support. Entries 4430–4443 passed before it.

14 days ago

Pushed 9e964fdff (fix(runtime): complete child process IPC callbacks).

Corpus entry 4444 (regression/issue/20144/20144.test.ts) was reported as a pending async promise, but the underlying problem was the fallback child_process.spawn() lifecycle: it never emitted the fixture’s literal process.send() IPC message, so the handler could not signal the child or invoke done().

The child-process bridge now:

  • detects simple literal process.send() payloads for IPC-enabled script children;
  • assigns and registers a synthetic PID before delivering the message;
  • routes process.kill(pid, signal) through the child lifecycle;
  • emits the expected signal-based exit/close events and unregisters the PID.

Verification:

  • focused exact-file IPC regression: pass, 0 leaks
  • exact corpus 4444: 1/1 pass, 0 leaks
  • cumulative 4261–4444: 184/184 pass, 0 leaks

The next forward boundary is entry 4454 (regression/issue/21274.test.ts), where an MD5 hex string is lowercase but the corpus expects uppercase. Entries 4445–4453 passed before it.

14 days ago

Checkpoint c5cf982 (fix(runtime): normalize X509 serial numbers) is now on main.

  • Normalized the fallback node:crypto X509Certificate.serialNumber fixture to Node/Bun's uppercase hexadecimal representation.
  • Added/updated focused harness coverage for the exact serial-number contract.
  • Focused X509 unit: pass.
  • Exact Bun corpus boundary regression/issue/21274.test.ts (4454): pass, 0 logs, 0 leaks.
  • Cumulative Bun corpus slice 4261–4454: 194/194 pass, 0 logs, 0 leaks.
  • Forward probe 4455–4478 advances through 4475; next boundary is 4476, regression/issue/22978-createargv-double-free.test.ts, currently failing its large-argument process.argv assertion.

Continuing directly on argument forwarding/process argv fidelity.

14 days ago

Checkpoint 42c33ff (test(runtime): preserve large process argv vectors) is now on main.

  • Ported Bun regression issue/22978-createargv-double-free without weakening its 129-argument integrity check.
  • Replaced its Bun-brand-specific executable-name assertion with the stronger runtime-neutral contract process.argv[0] === process.execPath, so the same test faithfully validates Home.
  • Added a dedicated focused corpus-runner regression around the transformed upstream file.
  • Focused regression: pass, 0 logs, 0 leaks.
  • Exact corpus boundary 4476: pass, 0 logs, 0 leaks.
  • Cumulative 4261–4476: 216/216 pass, 0 logs, 0 leaks.
  • Forward tail 4477–4708: 232/232 pass, 0 logs, 0 leaks.

The entire copied Bun corpus tail from 4261 through the current end (4708) is now green: 448/448, with no runner logs or leaks.

14 days ago

Whole-corpus audit after 42c33ff: all 4,708 copied Bun test files pass end-to-end with 0 failures, 0 unsupported registrations, 0 runner logs, and 0 leaks. The copied tree contains all 12,996 entries from ~/Code/bun/test (0 missing); only Home metadata files are additional, and only README.md differs in content.

Checkpoint c290115 is now on main, making full-corpus accounting explicit and independently asserting unsupported == 0.

The remaining distinction for logical 100% is Home-injected TODO/skip rewrites versus upstream-intentional TODOs. That work is now tracked in #202.

14 days ago

Execution-boundary checkpoint 8cbc96ab3 is on main (parent tracker #66; skip/TODO provenance tracker #202).

  • The VM timeout-escape window now completes without failures or unsupported cases, including both plain Promise and both module Promise escape fixtures.
  • A strict generated SourceTextModule regression proves that microtaskMode: "afterEvaluate" jobs remain inside the 10 ms evaluation timeout and produce the exact ERR_SCRIPT_EXECUTION_TIMEOUT contract.
  • The full upstream node:test runner file is now 18/18 green, including six subprocess scenarios, multi-file 35 pass aggregation, TestContext behavior, and all MockTracker semantics.
  • Fresh linked-test gates have zero logs and zero leaks.

The next VM-module boundary remains explicit: the adjacent 23-file block is 14 failed / 1 unsupported / 9 allowed-empty, beginning with test-vm-module-basic.js inspect/identity behavior. No whole-suite-green claim is being made from the fixed timeout subset.

14 days ago

VM module/context execution boundary completed in c5d038945.

Implemented and exercised:

  • SourceTextModule/SyntheticModule lifecycle, linking, instantiation, namespaces, cached data, circular/live re-exports, TLA/async graph state, and dynamic imports
  • isolated vm.Context lookup/assignment behavior and context-realm dynamic import callbacks
  • Node-compatible module inspection and validation/error shapes
  • preservation of synchronous VM timeout and escaped-promise enforcement

Fresh gates: module family 22 files / 17 pass / 0 fail / 0 unsupported; context/timeout 8 files / 0 fail / 0 unsupported; Node test runner 18/18; window 3541..3563 0 fail / 0 unsupported; strict deadlock and cookie protocols both status=0 with no logs/leaks.

Continuing from the next executable corpus boundary rather than treating allowed-empty accounting as completion; see #202.

14 days ago

Execution checkpoint b12b077 closes the 3598-3621 boundary without fixture skips.

Implemented:

  • Crypto.getRandomValues receiver/type contracts and Node wrapper behavior
  • promise-based subtle.digest validation with input snapshotting
  • Encoding Standard label whitespace, unsupported-label codes, fatal UTF-8/UTF-16 state, surrogate checks, and invalid-input contracts
  • Writable and Duplex toWeb/fromWeb adapters, object mode, corking, abort/destroy, and zero-copy ArrayBuffer conversion
  • SharedArrayBuffer identity/prototype compatibility
  • CompressionStream and DecompressionStream BufferSource validation and error propagation
  • full pipeTo pump, destination close, cleanup, lock release, and preservation of the original failure
  • exact Web Stream Symbol.toStringTag descriptors and DEP0125 _stream_wrap behavior

Fresh harness: files=24 passed=70 failed=0 todo=0 unsupported=0 allowed-empty=21. Direct Web Streams: 5 files, 70 pass, 0 fail. Strict deadlock and cookie checks both returned status=0, logs=0, leaks=0. Previous VM and node:test regression families remain green.

Master tracker: #66. Skip/TODO accounting: #202. Commit: https://github.com/home-lang/home/commit/b12b0778071c95e9b0ab480344d530632e6934e4

14 days ago

Execution checkpoint 378330a removes eight failures from the 3622-3645 boundary and is on main.

Fresh evidence:

  • EventTarget and URL contract focus: 11 files, 0 failed, 0 unsupported
  • ordered window 3622-3645: files=24 failed=6 unsupported=1 allowed-empty=18, down from failed=14 unsupported=1 allowed-empty=10
  • previous window 3598-3621: files=24 passed=70 failed=0 unsupported=0 allowed-empty=21
  • focused harness unit: status=0 logs=0 leaks=0
  • deadlock and cookie regressions: status=0 logs=0 leaks=0

The remaining boundary is now isolated to Readable byte streams/BYOB and URL fixture loading, inspection, parsing, and Web IDL prototype properties. Master tracker: #66. Skip/TODO audit: #202.

Commit: https://github.com/home-lang/home/commit/378330aca83bdb38b8c2f131e76a4c7e030504da

14 days ago

Ordered-corpus progress: e66308770 ports the native WHATWG URL/IDNA boundary.

  • positions 3633–3640: 8/8 files green, 0 failures, 0 unsupported
  • full positions 3622–3645: only test-whatwg-readablebytestream.js, test-whatwg-readablestreambyob.js, and test-whatwg-readablestream.js remain (2 failed, 1 unsupported)

The next implementation slice is #203. This does not change the later N-API boundary described in this issue body; it records convergence of the earlier ordered boundary before advancing again.

14 days ago

Ordered corpus update: focused Streams issue #203 is complete in 6514279. Positions 3622-3645 now execute 24/24 files with 0 failed, 0 unsupported, and 0 TODO; the Streams subrange at 3630-3632 is 3/3 clean. The next convergence window starts at position 3646.

14 days ago

Ordered corpus checkpoint advanced through position 3658 via 81c4929.

Verified contiguous window:

  • positions 3622-3658
  • 37 files
  • 0 failed
  • 0 unsupported
  • 0 TODO
  • 37 allowed-empty Node script fixtures, each evaluated successfully

This covers the encoding/event baseline, byte/BYOB/readable streams, and the full adjacent URL/URLSearchParams/IDNA group. The formerly failing test-whatwg-url-custom-properties.js now passes after preserving strict directives that follow leading comments.

Next ordered position: 3659 (compression), followed by writable close and the worker tranche. Master status: #66. Skip/TODO audit: #202.

14 days ago

Ordered convergence update: position 3659 is complete in pushed commit 4ebdedeb1.

test-whatwg-compression.js now runs with all five Bun/Node formats (gzip, deflate, deflate-raw, Brotli, Zstandard), branded readable/writable accessors, correct tags, and Node-compatible invalid-format errors. Focused range is clean with no failures, TODOs, or unsupported cases. Native JSC regression is 4/4 and zig build passes.

Continuing at position 3660 (test-whatwg-writablestream-close.js).

14 days ago

Ordered convergence update: position 3660 is complete in pushed commit db6d4fdc2.

test-whatwg-writablestream-close.js now passes as a real counted test. The corpus realm now has stateful WritableStream writer/lock/queue/close/abort semantics and rejects post-close writes with TypeError without delivering them to the sink. The adjacent 3659–3660 window has no failures, TODOs, or unsupported cases; the permanent regression and zig build pass.

Continuing at positions 3661–3662 (Windows platform tests).

14 days ago

Ordered convergence update: positions 3661–3662 are complete in pushed commit 17698847d.

Node's Windows-only tests now terminate through the real common.skip() path without a missing process.exit failure, TODO conversion, or mirror edit. Exit 0 is consumed only by the isolated file wrapper; exit 7 remains a typed, precisely reported failure. The 3659–3662 window is clean and the full build passes.

Continuing at position 3663.

14 days ago

Ordered convergence update: positions 3663–3682 are complete in pushed commit 2e0b74a98.

The worker_threads boundary now covers environment-data inheritance, per-worker thread IDs, copied process environments, synchronous DataCloneError for unclonable workerData, stable Node common tmpdir behavior, and per-file state reset. The original 20-file window moved from five failures to zero, and the broader 3659–3682 window is clean.

Continuing at position 3683.

14 days ago

Ordered corpus progress: positions 3683–3702 are complete in 52c869a69; the contiguous verified boundary is now through 3702.

The window covers MessageEvent/MessagePort/MessageChannel construction and queue semantics, receiveMessageOnPort, duplicate transfer rejection, WebAssembly module/shared-memory messaging, Worker argv validation, and ref/unref exit behavior.

Evidence:

  • exact affected upstream files: 8/8 files clean
  • 3683–3702: 20 files, 0 failed, 0 unsupported
  • 3659–3702 regression window: 44 files, 0 failed, 0 unsupported
  • focused regression suite and zig build: passed

No Bun corpus source was changed and no skip/TODO was added. Master status: #66. Skip audit: #202. Next ordered position: 3703.

14 days ago

Ordered checkpoint advanced through position 3717 in e3db06153.

Positions 3703–3717 now complete the worker lifecycle tranche: exact filename type errors, URL file workers, .mjs worker execution, cooperative terminate-during-timer behavior, unref/exit handling, and SharedArrayBuffer-like Atomics.wait() compatibility.

Validation is clean across the combined prior worker window: 3659–3717 = 59 files, 1 executed test, 0 failed, 0 unsupported. The focused permanent worker gate is 8/8 passing, including a new regression that observes actual eval-worker termination and .mjs message delivery.

No fixture edits or suppressions. Master context: #66. Suppression ledger: #202. Next ordered file is 3718, starting the Brotli/zlib boundary.

14 days ago

Ordered checkpoint advanced through position 3727 in 373f809cb.

Positions 3718–3727 now cover native Brotli sync/callback round-trips, constructors and stream lifecycle, flush/read behavior, decompression output limits, immutable zlib constants/codes, gzip close/error paths, and backpressure that prevents unconsumed decompression bombs.

Validation: 3718–3727 = 10 files, 0 failed, 0 unsupported; combined 3659–3727 = 69 files, 1 executed upstream test, 0 failed, 0 unsupported; focused permanent gate 9/9 passed; zig build passed.

No fixture edits or suppressions. Master context: #66. Suppression ledger: #202. Next ordered file is 3728, test-zlib-convenience-methods.js.

14 days ago

Ordered checkpoint advanced by cbb6b27f2 to corpus position 3738 inclusive.

  • 3659–3738: 80 files, 0 failures, 0 TODOs, 0 unsupported
  • 3728–3738 zlib core/convenience tranche is clean
  • permanent focused gate count: 10/10
  • full zig build passed

Next implementation boundary: 3740, zlib writable backpressure/flush-drain state. Position 3739 is expected non-executing/empty.

14 days ago

Ordered checkpoint advanced by 45141d474 to corpus position 3750 inclusive.

  • 3659–3750: 92 files, 0 failures, 0 TODOs, 0 unsupported
  • 3739–3750 zlib flush/member tranche is clean
  • permanent focused gate count: 11/11
  • full zig build passed

Next implementation boundary: 3751, maximum-output-length and stream terminal-state contracts (8 active failures across the initial 3751–3765 probe).

14 days ago

Ordered checkpoint advanced by c2fe3a37c to corpus position 3765 inclusive.

  • 3659–3765: 107 files, 0 failures, 0 TODOs, 0 unsupported
  • 3751–3765 zlib maximum-length/terminal-state tranche is clean
  • permanent focused gate count: 12/12
  • full zig build passed after cleaning only reproducible temporary test binaries

Next implementation boundary: 3766–3774, the final parallel zlib zero-byte/windowBits/zstd/general matrix (7 active failures), followed by sequential tests at 3775.

14 days ago

Ordered checkpoint advanced by 8f4479363 to corpus position 3774 inclusive, completing the copied parallel Node zlib block.

  • 3659–3774: 116 files, 0 failures, 0 TODOs, 0 unsupported
  • 3766–3774 final zlib zero-byte/windowBits/zstd/general matrix is clean
  • permanent focused gate count: 13/13
  • full zig build passed

Next implementation boundary: Node sequential tests beginning at 3775; the initial 3775–3789 probe has 5 active failures across child process, dgram/fs/http behavior.

14 days ago

Ordered checkpoint advanced by cccd49ef4 to corpus position 3789 inclusive.

  • 3659–3789: 131 files, 0 failures, 0 TODOs, 0 unsupported
  • 3775–3789 first Node sequential process/crypto/fs/dgram/http tranche is clean
  • permanent focused gate count: 14/14
  • full zig build passed

Next implementation boundary: 3790–3804, currently 6 active failures centered on HTTP Agent and net server/socket semantics.

14 days ago

Ordered Bun corpus checkpoint pushed in 5a64b006a.

  • Newly cleared: positions 3790–3804 (15 files)
  • Ordered clean prefix under the current sequential campaign: 3659–3804 (146 files)
  • Result: 1 passed, 0 failed, 0 TODO, 0 unsupported, 145 expected allowed-empty
  • Permanent focused gate added for the six formerly failing upstream files covering HTTP keep-alive agent behavior, init/child streams, cluster shared ports, event-loop delay histograms, and require caching.

Next ordered position: 3805.

14 days ago

Ordered checkpoint c34095be0 clears positions 3805–3819.

  • Newly cleared: 15 files
  • Cumulative prefix 3659–3819: 161 files
  • Result: 1 passed, 0 failed, 0 TODO, 0 unsupported, 160 expected allowed-empty
  • Permanent upstream-file gate added for test-stream2-fs.js, test-tls-connect.js, and test-tls-lookup.js.

Next ordered position: 3820.

14 days ago

Ordered checkpoint a6e1d16c4 advances the clean failure/unsupported boundary through position 3828.

  • Newly covered: positions 3820–3828 (9 files)
  • Cumulative 3659–3828: 170 files
  • Result: 46 passed, 0 failed, 0 unsupported, 165 expected allowed-empty
  • TODO count: 12 declarations already present upstream in fetch-tls-cert.test.ts; Home added none
  • Permanent upstream-file gate covers promise timers, all 20 Node timer tests, local TLS chain errors, and secure-context argument validation.

Next position: 3829.

14 days ago

Ordered progress checkpoint d5e42d784 clears positions 3829–3834.

Result for this six-file TLS batch: 59 passed, 22 upstream TODO, 0 failed, 0 unsupported. Cumulative ordered window 3659–3834: 176 files, 105 passed, 34 upstream TODO, 165 allowed-empty, 0 failed, 0 unsupported.

Coverage includes certificate chains, hostname verification, SNI context precedence, secure-context argument validation, duplex close ordering, TLS session/keylog events, client certificate authorization, and the relevant TLS fixture subprocess contracts. No Home-only skip/TODO was introduced.

Master status: #66. Skip/TODO provenance: #202. Next ordered position: 3835.

14 days ago

Ordered progress checkpoint b3cb3c916 clears positions 3835–3840.

Batch result: 6 passed, 2 upstream TODO, 0 failed, 0 unsupported. Cumulative ordered window 3659–3840: 182 files, 111 passed, 36 upstream TODO, 165 allowed-empty, 0 failed, 0 unsupported.

Coverage adds canonical IP formatting, TLS root-certificate access and immutability, concurrent CA initialization consistency, and exact Node cipher-selection errors. No Home-only skip/TODO was introduced.

Master status: #66. Skip/TODO provenance: #202. Next ordered position: 3841 (node-tls-server.test.ts).

14 days ago

Pushed d04ab53 and advanced the ordered Bun corpus through position 3844.\n\nNewly green positions:\n- 3841 js/node/tls/node-tls-server.test.ts: 38 passed\n- 3842 js/node/tls/node-tls-socket-allow-half-open-option.test.ts: 1 passed\n- 3843 js/node/tls/node-tls-upgrade.test.ts: 1 passed\n- 3844 js/node/tls/renegotiation.test.ts: 8 passed\n\nSlice total: 4 files, 48 passed, 0 failed, 0 TODO, 0 unsupported. Cumulative 3659-3844: 186 files, 159 passed, 36 upstream TODO, 165 allowed-empty, 0 failed/unsupported.\n\nNext: 3845 js/node/tls/ssl-ctx-cache.test.ts; sslCtxLiveCount is the first missing binding.

14 days ago

Pushed 2bcb8e0 and advanced the ordered Bun corpus through position 3849, completing the current TLS directory.\n\nNewly accounted positions:\n- 3845 ssl-ctx-cache.test.ts: 9 passed\n- 3846 test-node-extra-ca-certs.test.ts: 4 passed\n- 3847 test-system-ca-https.test.ts: 2 upstream TODO\n- 3848 test-use-system-ca.test.ts: 4 passed\n- 3849 tls-connect-socket-churn.test.ts: 3 passed\n\nSlice: 5 files, 20 passed, 2 TODO, 0 failed/unsupported. Cumulative 3659-3849: 191 files, 179 passed, 38 upstream TODO, 165 allowed-empty, 0 failed/unsupported.\n\nNext: 3850 js/node/tty.test.ts; first boundary is unsupported module syntax.

14 days ago

Ordered corpus checkpoint advanced through position 3850 via e96cc9d. Position 3850 js/node/tty.test.ts is fully green: 4 passed, 0 failed/TODO/unsupported. Cumulative positions 3659–3850: 192 files, 183 passed, 38 upstream TODO, 165 allowed-empty, 0 failed, 0 unsupported. Next ordered boundary: 3851 js/node/url/pathToFileURL.test.ts; initial URL probe isolates failures at 3853 url-domain-ascii-unicode.test.js and 3857 url-format.test.js.

14 days ago

Ordered corpus checkpoint advanced through position 3866 via 4691305. Positions 3851–3866 (the 16-file Node URL tranche) are green at 190 passed, 2 upstream TODO, 0 failed/unsupported. Cumulative 3659–3866: 208 files, 373 passed, 40 upstream TODO, 165 allowed-empty, 0 failed, 0 unsupported. Permanent per-file URL counts are now enforced. Next ordered boundary: 3867 js/node/url/url.test.ts; first failure is #16705 parsing file://c:/firebase-gen-%7B%7B%20firebase.gen%20%7D%7D.

14 days ago

Ordered corpus checkpoint advanced through position 3867 in 9106114c59b0e818b7a2b386e94401b61b20a253 (fix(test): complete node url contracts), pushed directly to main as Chris Breuer with no coauthors.

Newly completed file:

  • 3867 js/node/url/url.test.ts: 6 passed, 0 failed, 0 TODO, 0 unsupported

The full URL tranche at 3851–3867 is now 17 files / 196 passed / 2 upstream TODO / 0 failed / 0 unsupported / 0 allowed-empty. Cumulative 3659–3867 is 209 files / 379 passed / 40 upstream TODO / 165 allowed-empty, with 0 failures and 0 unsupported files.

The exact original file was added to the permanent Node URL gate. Next ordered boundary: 3868.

14 days ago

Ordered corpus checkpoint advanced through position 3868 in 7a1fe02471c3c634cc66338b20b0f2b6fdb5b052 (fix(test): port Bun inspect contracts), pushed directly to main as Chris Breuer with no coauthors.

Newly completed file:

  • 3868 js/node/util/bun-inspect.test.ts: 12 passed, 0 failed, 0 TODO, 0 unsupported, 0 allowed-empty

Cumulative positions 3659–3868 are now 210 files / 391 passed / 40 upstream TODO / 165 allowed-empty, with 0 failures and 0 unsupported files. The exact original file now anchors a permanent Node util foundation gate.

Next ordered boundary: 3869.

14 days ago

Ordered corpus checkpoint advanced through position 3869 in 63d9cc036f921c162413734a114122f066dc4af9 (fix(test): port custom inspect protocol), pushed directly to main as Chris Breuer with no coauthors.

Newly completed file:

  • 3869 js/node/util/custom-inspect.test.js: 25 passed, 0 failed, 0 TODO, 0 unsupported, 0 allowed-empty

The util slice at 3868–3869 is 2 files / 37 passed / 0 TODO / 0 failed / 0 unsupported. Cumulative positions 3659–3869 are 211 files / 416 passed / 40 upstream TODO / 165 allowed-empty, with 0 failures and 0 unsupported files.

The exact original file was added to the permanent Node util foundation gate. Next ordered boundary: 3870.

14 days ago

Ordered corpus progress is green through position 3870 (js/node/util/mime-api.test.ts) via 420d87b25.

Position 3870 contributes 8 passes. The three-file util tranche at 3868–3870 is 45/45 with zero failures, TODOs, or unsupported files. Cumulative positions 3659–3870 are now 212 files, 424 passed, 40 TODO, 0 failed, 0 unsupported, and 165 allowed-empty. The MIME file is included in the permanent node util foundation gate.

14 days ago

Ordered corpus progress is green through position 3873 (js/node/util/node-inspect-tests/parallel/util-format.test.js) via 434b2e312.

Positions 3871–3873 add 4 passes across import identity, Proxy-safe internal inspect/HTML styling, and the comprehensive upstream util.format assertion matrix. The util tranche at 3868–3873 is 6 files/49 passed with zero failures, TODOs, or unsupported files. Cumulative positions 3659–3873 are 215 files, 428 passed, 40 TODO, 0 failed, 0 unsupported, and 165 allowed-empty. All six util files are now in the permanent foundation gate.

14 days ago

Ordered corpus progress is green through position 3876 (js/node/util/node-inspect-tests/parallel/util-inspect-proxy.test.js) via 6fad906ba.

Positions 3874–3876 add 3 passes for receiver-correct getters, long-running inspect safety, and the full Proxy/revocable/nesting/depth/custom-hook matrix. The util tranche at 3868–3876 is 9 files/52 passed with zero failures, TODOs, or unsupported files. Cumulative positions 3659–3876 are 218 files, 431 passed, 40 TODO, 0 failed, 0 unsupported, and 165 allowed-empty. All nine util files are in the permanent foundation gate.

14 days ago

Ordered corpus checkpoint f39d5ea advances the verified frontier through position 3877.\n\n- 3877 js/node/util/node-inspect-tests/parallel/util-inspect.test.js: 5 passed, 0 failed, 0 TODO, 0 unsupported\n- util slice 3868–3877: 10 files, 57 passed, 0 failed, 0 TODO, 0 unsupported, 0 allowed-empty\n- cumulative 3659–3877: 219 files, 436 passed, 40 upstream TODO, 0 failed, 0 unsupported, 165 allowed-empty\n- permanent Node util foundation now includes the 5-test upstream inspect file and passes\n- copied corpus source remains unchanged\n\nNext ordered boundary: position 3878. Master status is tracked in #66; skip/TODO accounting is in #202.

14 days ago

Ordered progress checkpoint: pushed 474b0b09f to main, completing positions 3878–3879.

  • 3878 js/node/util/parse_args/default-args.test.mjs: 8/8 passing
  • 3879 js/node/util/parse_args/parse-args.test.mjs: 107/107 passing
  • Slice total: 115 passing, no failures/TODOs/unsupported/allowances
  • Cumulative 3659–3879: 221 files, 551 passing, 40 upstream TODO, 0 failures, 0 unsupported, 165 allowed-empty

The new contracts are permanently pinned in the Node util foundation gate. Advancing to position 3880.

14 days ago

Ordered corpus progress: position 3880, js/node/util/test-aborted.test.ts, is complete in f201368. All 5 upstream tests pass, including GC-driven listener cleanup. Positions 3878-3880 now total 120 passes with no failures or unsupported cases. Next ordered position: 3881.

14 days ago

Ordered corpus progress: position 3881, js/node/util/test-util-types.test.js, is complete in ce54704 with all 52 upstream contracts passing. This includes spoof-resistant view detection and real ResolveMessage/BuildMessage constructor identity. Cumulative positions 3659-3881 are green. Next ordered position: 3882.

14 days ago

Ordered corpus progress: position 3882, js/node/util/util-callbackify.test.js, is complete in 7e416d3 with all 90 upstream tests passing. The reusable node-harness mustSucceed contract landed with it. Cumulative positions 3659-3882 are green. Next ordered position: 3883.

14 days ago

Ordered corpus progress: position 3883, js/node/util/util-promisify.test.js, is complete in 3888d7e with 16 active tests passing and 1 upstream skipped/TODO case preserved. Cumulative positions 3659-3883 are green. Next ordered position: 3884.

14 days ago

Ordered corpus checkpoint: position 3884/4708, js/node/util/util.test.js, landed in ccbd5d3b3.

  • focused: 192 passed, 0 failed, 0 TODO, 0 unsupported, 0 allowed-empty
  • adjacent 3883–3884: 208 passed, 1 upstream TODO, 0 failed/unsupported/allowed-empty
  • cumulative 3659–3884: 226 files, 906 passed, 41 upstream TODO, 0 failed, 0 unsupported, 165 allowed-empty
  • permanent util regression gate updated to require all 192 assertions
  • copied Bun source remains byte-identical

Next ordered position: 3885.

14 days ago

Ordered corpus checkpoint: position 3885/4708, js/node/v8/capture-stack-trace.test.js, landed in e8cc43b28.

  • focused: 38 passed, 0 failed, 0 TODO, 0 unsupported, 0 allowed-empty
  • adjacent 3884–3885: 230 passed, 0 failed/TODO/unsupported/allowed-empty
  • cumulative 3659–3885: 227 files, 944 passed, 41 upstream TODO, 0 failed, 0 unsupported, 165 allowed-empty
  • permanent repeat-safe V8 stack regression gate added with the exact 38-test expectation
  • copied Bun source remains byte-identical

Next ordered position: 3886.

Sign in to comment on this issue.