Resource timing option checkpoint (2026-10-12): source and verified evidence. Node perf_hooks delegates setResourceTimingBufferSize to the owned native global API, preserving WebIDL unsigned-long conversion for fractional/string sizes and the shared buffer limit. Named clearResourceTimings uses ordinary string conversion before exact-name filtering; numeric and toString object names clear the matching entry.
54/54 Debug steps; 26 native groups; 40 unchanged pinned originals: 168 passed cases plus twenty-five process checks, zero failures/skips/filters and two upstream TODOs. Fourteen ABI controls (452 assertions) and 32 report-validator controls pass. All 573 artifacts and 83 replayed reports validate, retaining eleven negative outcomes. Node reference controls, Home pre-fix numeric-clear failure, both builds and three tested source hashes remain retained. Source bytes are unchanged across build-test/CI-only main integration. Pickier explicitly scans three JS sources, matching baseline three errors and 61 warnings, zero new findings.
Remaining: The unchanged zero-argument markResourceTiming assertion remains contradicted by actual valid resource creation (#874); it was not weakened or credited. Native performance/fetch parity #869/#873/#872, HTTPS #875/#532, general Promise/native producers #877, directory #878, corpus #876 and context #871/#856 remain open. The native transfer prototype is preserved but unverified; its crash control was not rerun and receives no credit. Full Bun-suite, Release/ASAN and all-platform proof remain open. Two TODOs receive no pass credit.
Binary ALPN/static SNI checkpoint (2026-10-10, corpus retains failure): source c3dd1b308 and verified evidence. TLS config owns explicit-length ALPN bytes through clone/free/transfer/equality/hash and socket consumers. HTTP selectors reference each retained context's config, including registered SNI contexts. Valid binary IDs, caller-buffer mutation, preference/context-content discrimination and trusted SNI controls pass. 21 native groups; ten ABI tests/684 assertions; five Zig tests; 54/54 Debug steps. Seven unchanged files retain 60 passes plus three process checks and one registered failure/failed file (#874), no skips/TODOs. All 76 committed archives and seven restored reports validate, including the failure. Initial string-conversion compile failure remains. #875/#532 remain open for dynamic callbacks/SNI handoff, reload, malformed-list validation and wider lifetime/platform coverage. Excluded regression files remain unverified; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open.
HTTPS static ALPN checkpoint (2026-10-10, corpus retains failure): selector 264bf4d93, forwarding d21ce2d58 and verified evidence. HTTPS options now preserve ALPNProtocols and normalize array/buffer forms; the HTTP SSL_CTX selector reads server-owned config. Valid list preference, encoded buffer and reused-connection controls negotiate real HTTP/1.1 with certificate verification enabled. 20 native groups; ten ABI tests/684 assertions; five Zig tests; 54/54 Debug steps. Seven unchanged files retain 60 passes plus three process checks and one registered failure/failed file (#874), no skips/TODOs. All 75 committed archives and seven restored reports validate, including the failure. The initial namespace compile error remains. #875/#532 remain open for dynamic callbacks, SNI handoff, reload, encoding/length edges and wider lifetime/platform coverage. Excluded regression files remain unverified; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open.
Fetch DNS/negotiated protocol checkpoint (2026-10-10, corpus retains failure): source 2dd946c6a and verified evidence. Resolver requests record monotonic lookup timestamps; the owned connector notifies typed HTTP owners at resolution, and TLS snapshots copy actual negotiated ALPN bytes. Usockets context.c uses exact qualified source selection, avoiding unrelated vendor basenames. Valid local lookup and trusted TLS-listener ALPN controls pass. 20 native groups; ten ABI tests/684 assertions; five Zig tests; 54/54 Debug steps. Seven unchanged files retain 60 passes plus three process checks and one registered failure/failed file (#874), no skips/TODOs. All 79 committed archives and seven restored reports validate, including the failure. #875 tracks HTTPS server ALPN option forwarding; absence of negotiation remains unset. DNS cache/coalescing/cross-thread and synchronous-cache edges, proxy/unix/other protocols remain in #873/#869. Excluded regression files remain unverified; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open.
Fresh TCP/TLS fetch phase checkpoint (2026-10-10, corpus retains failure): source 7f0eb8a88 and verified evidence. Direct connect creation/open and TLS handshake callbacks publish measured connect-start/end and secure-start fields. Pooled requests leave new handshake fields unset; proxy/unix paths are not mislabeled. Valid fresh/pooled TCP and trusted local TLS controls pass. 20 native groups; ten ABI tests/684 assertions; four Zig tests; 52/52 Debug steps. Seven unchanged files retain 60 passes plus three process checks and one registered failure/failed file (#874), no skips/TODOs. All 76 committed archives and seven restored reports validate, including the failure. Initial wrong-CA/unnormalized-URL control failures remain; final verification uses the issuing CA without bypass. DNS, proxy/unix, protocol/ALPN, HTTP/2/3, complete redirect/cross-origin, failure/data/file and partial-consumption coverage remain open in #873/#869. Excluded regression files remain unverified; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open.
Fetch response-phase/cork checkpoint (2026-10-10, corpus retains failure): source 4652005a4 and verified evidence. HTTP/1 snapshots distinguish first interim response from final headers, preserve redirect interval/final-hop start and keep one original-URL entry. A valid reuse control traced suppressed early hints to unmatched request corking; the Node adapter now uncorks its own request cork on the next tick. The ineffective ended-bit attempt is removed. 19 native groups; ten ABI tests/684 assertions; four Zig tests; 52/52 Debug steps. Seven unchanged files retain 60 passes plus three process checks and one registered failure/failed file (#874), no skips/TODOs. All 99 committed archives and seven restored reports validate, including the failure. Initial failed controls and disk refusal remain. Complete cross-origin/redirect/protocol exposure, DNS/TLS/connection phases, HTTP/2/3, failure/data/file cases and partial-consumption accounting remain open in #873/#869. Previously excluded regression files remain unverified and were not rerun; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open.
Automatic HTTP/1 fetch resource checkpoint (2026-10-10, corpus retains failure): source 42ef6e765 and verified evidence. HTTP-thread snapshots measure request preparation, first response header data, transport completion and encoded bytes; tasklets accumulate decoded delivered bytes and publish once into the shared global/Node timeline. Valid local plain/stream/gzip/canceled-body controls pass with observer identity and sizes. 19 native groups; ten ABI tests/684 assertions; four Zig tests; 52/52 Debug steps. Final seven unchanged files retain 60 passes plus three process checks and one registered failure/one failed file (#874), no skips/TODOs. All 143 committed archives and seven restored reports validate, including the failure. HTTP/2/3, DNS/TLS/connection phases, complete redirect/informational timings, failed requests, data/file schemes and partial-consumption accounting remain open in #873/#869; missing timestamps are not fabricated. Previously excluded regression files remain unverified and were not rerun. Initial compile diagnostics/disk refusals remain; full Bun suite, #872 and Release/ASAN/all-platform coverage remain open under #66.
Shared global/Node resource checkpoint (2026-10-10, scope retains failure): source cc2d9c356 and verified evidence. Global/Node creation, constructors, queries, clearing/resizing and observers share entry identity and timeline state. The full pinned global-object implementation and JSPerformance now compile from Home, excluding external objects; constructor modules initialize at bootstrap/test-realm setup. A boolean weak sweep and noinline sample frame repair conservative retention without relaxing the lifetime assertion. Final seven unchanged files: 60 passes plus three process checks, one registered failure/one failed file, no skips/TODOs; 18 ordinary native groups; ten ABI tests/684 assertions; four Zig tests; 52/52 Debug steps. All 373 committed archives and seven restored reports validate, including the failure. #874 tracks the legacy zero-argument no-op assertion. A prior Deno SIGTRAP and a historical web constructor regression remain unverified/excluded after static corrections; no passing credit is assigned to those files. Initial compile/stale-binary/constructor/lifetime failures and disk refusal remain visible. Automatic fetch and remaining interoperability stay open in #873/#869; #872, full Bun suite and Release/ASAN/all-platform verification remain open.
Home now creates Node resource entries with timing/body/cache metadata, owns a resource buffer and overflow lifecycle, routes buffered resource observers, and compiles ResourceTiming/PerformanceResourceTiming/NetworkLoadMetrics from Home. Source: https://github.com/home-lang/home/commit/456552ef6f35471e956bbe1f7c520622c2dd8250.
Global manual creation/queries/clear/resize/observer paths now share the owned Node resource state and constructor identity. Automatic HTTP/1 fetch now publishes measured request/response/completion and body-size snapshots. HTTP/2/3, DNS/TLS/connection phases, full redirect/informational timelines, failure/data/file schemes, partial-consumption and native base-class/platform semantics remain open. The manual API checkpoint does not prove automatic fetch or complete resource integration.
Acceptance:
- Implement global resource creation and automatic fetch timing from actual request milestones.
- Unify resource identity, query results, clear/resize behavior, overflow recovery and observer delivery across Node and global APIs.
- Preserve class/receiver semantics and teardown ownership through both paths.
- Expand unchanged upstream coverage and ordinary valid fetch/resource conformance; retain failures and avoid assertion edits or filename-specific behavior.
- Complete remaining resource argument/coercion, selective clearing and native base-class interactions.
Parents: #869 and #66. Darwin arm64 manual Node API conformance is a checkpoint, not full resource or Bun-suite parity.