{ "schemaVersion": 1, "compilerVersion": "0.1.7", "coverage": [ "Entries are projected mechanically from the compiler's own decision tables: the diagnostics registry, the unsupported-syntax dispatch tables, the stdlib and node-builtin lowering tables, and the supported-builtin-module list. Nothing is hand-maintained; the manifest regenerates byte-identically from the source tree at this version.", "Absence from this manifest means 'not projected', never 'unsupported'. Surfaces lowered through dedicated code paths rather than tables are not yet projected: console, JSON, Promise/async and the timer surface, the net/http/tls/https/dgram/dns/assert/test/stream/readline module member surfaces, template literals, the regex slice, global functions (parseInt, parseFloat, isNaN, isFinite), and the process surface outside its ambient slice.", "The ambient-nondeterminism and ambient-authority surfaces the library sidecar's determinism attestation scans ARE projected even where they lower through dedicated code paths — the Date compositions (stdlib.date.*), perf_hooks' performance.now, and the process global's ambient reads and authority calls (node-builtin.process.*) — so a determinism fence can name every surface the attestation demotes on.", "stdlib and node-builtin member entries name surface whose LOWERED call forms are constrained (arity, argument shapes); declared call forms outside the lowered set are refused per site, with code SC2020 for standard-library and node-builtin surface.", "Entries with status 'unsupported' or 'dynamic-only' describe where the named code is raised: forms of the construct outside the supported subset are refused with that code — not that every form of the named feature is refused. Supported forms appear as their own static entries where a table projects them.", "Entries with status 'dynamic-only' compile when the build embeds the dynamic engine (--dynamic); without the flag each use site is refused with the entry's code.", "The engine-free fetch projection targets Node 24.15.0 with bundled Undici 7.24.4. Each projected row names the differential evidence that guards it; changing the pinned Node or Undici version is an explicit profile update.", "The fetch profile also contains a runtime-reflected census of the selected fetch, abort, Headers, and readable-stream interfaces plus RequestInit/ResponseInit dictionary reads. Static, dynamic-only, and unsupported census rows are projected here; its explicitly out-of-scope metadata rows and adjacent-interface exclusions remain in the profile so absence is deliberate rather than ambiguous.", "Process-level diagnostic codes are not surface entries: SC0001-SC0004 are preflight gates, SC1110 is a comptime evaluation failure, SC3001/SC3002 are backend/target tier refusals, SC9001/SC9002 are internal errors.", "Entry statuses are projected for the desktop targets. The mobile targets (aarch64-apple-ios, aarch64-apple-ios-simulator, aarch64-linux-android) compile library-mode archives only: the library-admissible surface (what SC4005's async_free requirement and the library link set admit) is supported there, the executable lane refuses those triples with SC3002, and no entry outside the library-admissible surface carries a mobile support claim. iOS archives build for iOS 15.0 on darwin hosts; Android archives build against NDK API level 26.", "No scheduling metadata is published; entry ids are the stable diff keys across releases." ], "entries": [ { "id": "diagnostic.sc1010", "kind": "diagnostic-fence", "name": "package imports", "status": "unsupported", "code": "SC1010", "note": "relative imports (./file, ../dir/file), package.json-mediated project imports (#alias via the imports field, self-name references via exports), installed npm packages (their code runs under --dynamic), and the built-in fs, fs/promises, path, os, url, crypto, zlib, child_process, net, http, tls, https, http2, dgram, dns, util, util/types, string_decoder, querystring, readline, events, stream, stream/promises, stream/consumers, buffer, assert, assert/strict, worker_threads, cluster, tty, async_hooks, timers, timers/promises, diagnostics_channel, perf_hooks, module, and console modules (bare or node:-prefixed) and node:test (node:-prefixed only, like in Node) are supported" }, { "id": "diagnostic.sc1012", "kind": "diagnostic-fence", "name": "default exports/imports", "status": "unsupported", "code": "SC1012", "note": "use named exports: export function f() {} / import { f } from \"./m\"" }, { "id": "diagnostic.sc1013", "kind": "diagnostic-fence", "name": "namespace imports (* as ns)", "status": "unsupported", "code": "SC1013" }, { "id": "diagnostic.sc1014", "kind": "diagnostic-fence", "name": "re-exports and export lists", "status": "unsupported", "code": "SC1014", "note": "export declarations directly: export function f() {}" }, { "id": "diagnostic.sc1015", "kind": "diagnostic-fence", "name": "dynamic import()", "status": "unsupported", "code": "SC1015" }, { "id": "diagnostic.sc1016", "kind": "diagnostic-fence", "name": "circular imports", "status": "unsupported", "code": "SC1016", "note": "cycles of ES modules with declaration-only top levels whose cycle-crossing bindings are only used inside function bodies compile as-is; move the named top-level read or call into a function body (or break the named edge) so nothing runs during the cycle's init window" }, { "id": "diagnostic.sc1020", "kind": "diagnostic-fence", "name": "class expressions", "status": "unsupported", "code": "SC1020" }, { "id": "diagnostic.sc1030", "kind": "diagnostic-fence", "name": "var declarations", "status": "unsupported", "code": "SC1030" }, { "id": "diagnostic.sc1031", "kind": "diagnostic-fence", "name": "destructuring", "status": "unsupported", "code": "SC1031" }, { "id": "diagnostic.sc1040", "kind": "diagnostic-fence", "name": "loose equality (== and !=)", "status": "unsupported", "code": "SC1040", "note": "primitive and primitive-union coercions plus the x == null / x != null idiom compile statically; object-to-primitive comparisons can execute valueOf/toString — convert the object explicitly first" }, { "id": "diagnostic.sc1042", "kind": "diagnostic-fence", "name": "logical operators on mixed operand types", "status": "unsupported", "code": "SC1042", "note": "give both operands the same type (number, string, or boolean)" }, { "id": "diagnostic.sc1043", "kind": "diagnostic-fence", "name": "comparing non-number, non-string values", "status": "unsupported", "code": "SC1043" }, { "id": "diagnostic.sc1045", "kind": "diagnostic-fence", "name": "increment/decrement in expression position", "status": "unsupported", "code": "SC1045", "note": "use ++/-- as a standalone statement, or write x = x + 1" }, { "id": "diagnostic.sc1050", "kind": "diagnostic-fence", "name": "labeled break/continue", "status": "unsupported", "code": "SC1050" }, { "id": "diagnostic.sc1052", "kind": "diagnostic-fence", "name": "for-in loops", "status": "unsupported", "code": "SC1052" }, { "id": "diagnostic.sc1062", "kind": "diagnostic-fence", "name": "destructuring catch clause bindings", "status": "unsupported", "code": "SC1062", "note": "bind an identifier (catch (e)) and narrow it — 'e instanceof Error' exposes .name/.message, typeof tests expose primitives" }, { "id": "diagnostic.sc1063", "kind": "diagnostic-fence", "name": "this use of a catch binding", "status": "unsupported", "code": "SC1063", "note": "a catch binding is typed by what was thrown — narrow before reading: 'if (e instanceof Error)' (then .name/.message), 'typeof e === \"string\"/\"number\"/\"boolean\"', or rethrow with 'throw e'; String(e) and `${e}` also compile ('Error: msg' for Error payloads — Node's String(), which has no stack), so 'e instanceof Error ? e.message : String(e)' works as-is" }, { "id": "diagnostic.sc1070", "kind": "diagnostic-fence", "name": "async/await", "status": "unsupported", "code": "SC1070" }, { "id": "diagnostic.sc1071", "kind": "diagnostic-fence", "name": "generators", "status": "unsupported", "code": "SC1071" }, { "id": "diagnostic.sc1080", "kind": "diagnostic-fence", "name": "'this' outside a class method", "status": "unsupported", "code": "SC1080" }, { "id": "diagnostic.sc1090", "kind": "diagnostic-fence", "name": "this syntax", "status": "unsupported", "code": "SC1090" }, { "id": "diagnostic.sc1100", "kind": "diagnostic-fence", "name": "operations on 'unknown' values", "status": "unsupported", "code": "SC1100", "note": "validate with 'as ' first — the cast checks the dynamic value at runtime and throws on mismatch" }, { "id": "diagnostic.sc1101", "kind": "diagnostic-fence", "name": "converting typed values to 'unknown'", "status": "unsupported", "code": "SC1101", "note": "numbers, strings, booleans, JSON-safe records/arrays/unions (a deep copy), functions, program class instances, and supported native handles convert into 'unknown' slots; functions, exact-class round trips, and handles preserve identity, while this value's type has no dynamic representation yet" }, { "id": "diagnostic.sc1120", "kind": "diagnostic-fence", "name": "this regex feature", "status": "unsupported", "code": "SC1120", "note": "supported: literal regexes with the g/i/m/s/u/y flags — .test(), .exec()/.match()/.matchAll(), named capture groups (.groups, $ templates, \\k), .source/.flags, and string replace/replaceAll/split with string replacement templates" }, { "id": "diagnostic.sc1121", "kind": "diagnostic-fence", "name": "'.test()' on a regex with the 'g' or 'y' flag", "status": "unsupported", "code": "SC1121", "note": "g/y regexes carry mutable lastIndex state between calls, which is not modeled; drop the flag for a plain match test, or use replace/replaceAll/split (their iteration is internal)" }, { "id": "diagnostic.sc2001", "kind": "diagnostic-fence", "name": "values of types outside the compilable set (constructor objects and library-derived or unresolved generic shapes)", "status": "unsupported", "code": "SC2001" }, { "id": "diagnostic.sc2002", "kind": "diagnostic-fence", "name": "record shape flows outside the width-copy rules (shapes must match exactly or width-coerce)", "status": "unsupported", "code": "SC2002" }, { "id": "diagnostic.sc2003", "kind": "diagnostic-fence", "name": "union-to-union conversions outside the re-tagging rule", "status": "unsupported", "code": "SC2003" }, { "id": "diagnostic.sc2004", "kind": "diagnostic-fence", "name": "uses of a binding whose declaration did not compile (cascade marker)", "status": "unsupported", "code": "SC2004" }, { "id": "diagnostic.sc2005", "kind": "diagnostic-fence", "name": "values whose type keeps a generic call signature (a compiled function is one concrete signature)", "status": "unsupported", "code": "SC2005" }, { "id": "diagnostic.sc2006", "kind": "diagnostic-fence", "name": "index-signature object types outside the supported shape", "status": "unsupported", "code": "SC2006" }, { "id": "diagnostic.sc2007", "kind": "diagnostic-fence", "name": "values of overloaded function type (a compiled function value is one signature)", "status": "unsupported", "code": "SC2007" }, { "id": "diagnostic.sc2008", "kind": "diagnostic-fence", "name": "intersection types with no resolved lowering", "status": "unsupported", "code": "SC2008" }, { "id": "diagnostic.sc2009", "kind": "diagnostic-fence", "name": "supported container and function shapes over a component type outside its slot", "status": "unsupported", "code": "SC2009" }, { "id": "diagnostic.sc2010", "kind": "diagnostic-fence", "name": "constructs that exist only in the embedded dynamic engine", "status": "dynamic-only", "code": "SC2010" }, { "id": "diagnostic.sc2011", "kind": "diagnostic-fence", "name": "'any'-typed values and the operations on them", "status": "dynamic-only", "code": "SC2011" }, { "id": "diagnostic.sc2012", "kind": "diagnostic-fence", "name": "standard-library surface that runs in the embedded dynamic engine", "status": "dynamic-only", "code": "SC2012" }, { "id": "diagnostic.sc2013", "kind": "diagnostic-fence", "name": "npm package imports and values (the package's implementation runs in the embedded engine)", "status": "dynamic-only", "code": "SC2013" }, { "id": "diagnostic.sc2020", "kind": "diagnostic-fence", "name": "standard-library or @types/node surface with no lowering", "status": "unsupported", "code": "SC2020" }, { "id": "diagnostic.sc2030", "kind": "diagnostic-fence", "name": "npm package code that cannot be embedded for the dynamic engine", "status": "unsupported", "code": "SC2030" }, { "id": "node-builtin.assert", "kind": "node-builtin", "name": "assert", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.assert.AssertionError", "kind": "node-builtin", "name": "assert.AssertionError", "status": "unsupported", "code": "SC2020", "note": "the class itself has no lowering — catch and test err.name === \"AssertionError\" or err.code === \"ERR_ASSERTION\"" }, { "id": "node-builtin.assert.deepEqual", "kind": "node-builtin", "name": "assert.deepEqual", "status": "unsupported", "code": "SC2020", "note": "legacy deep equality has no lowering yet — deepStrictEqual and notDeepStrictEqual compare structures with Node's modern semantics" }, { "id": "node-builtin.assert.doesNotReject", "kind": "node-builtin", "name": "assert.doesNotReject", "status": "unsupported", "code": "SC2020", "note": "await the promise directly — an unexpected rejection already fails the test" }, { "id": "node-builtin.assert.doesNotThrow", "kind": "node-builtin", "name": "assert.doesNotThrow", "status": "unsupported", "code": "SC2020", "note": "call the function directly — an unexpected throw already fails the test" }, { "id": "node-builtin.assert.ifError", "kind": "node-builtin", "name": "assert.ifError", "status": "unsupported", "code": "SC2020", "note": "test explicitly instead: assert.strictEqual(err, null) / assert.strictEqual(err, undefined)" }, { "id": "node-builtin.assert.notDeepEqual", "kind": "node-builtin", "name": "assert.notDeepEqual", "status": "unsupported", "code": "SC2020", "note": "legacy deep equality has no lowering yet — deepStrictEqual and notDeepStrictEqual compare structures with Node's modern semantics" }, { "id": "node-builtin.assert.rejects", "kind": "node-builtin", "name": "assert.rejects", "status": "unsupported", "code": "SC2020", "note": "await the promise inside assert.throws's callback story instead: try { await p; assert.fail(\"expected rejection\") } catch { ... }" }, { "id": "node-builtin.assert.strict", "kind": "node-builtin", "name": "assert/strict", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.assert.strict.AssertionError", "kind": "node-builtin", "name": "assert/strict.AssertionError", "status": "unsupported", "code": "SC2020", "note": "the class itself has no lowering — catch and test err.name === \"AssertionError\" or err.code === \"ERR_ASSERTION\"" }, { "id": "node-builtin.assert.strict.doesNotReject", "kind": "node-builtin", "name": "assert/strict.doesNotReject", "status": "unsupported", "code": "SC2020", "note": "await the promise directly — an unexpected rejection already fails the test" }, { "id": "node-builtin.assert.strict.doesNotThrow", "kind": "node-builtin", "name": "assert/strict.doesNotThrow", "status": "unsupported", "code": "SC2020", "note": "call the function directly — an unexpected throw already fails the test" }, { "id": "node-builtin.assert.strict.ifError", "kind": "node-builtin", "name": "assert/strict.ifError", "status": "unsupported", "code": "SC2020", "note": "test explicitly instead: assert.strictEqual(err, null) / assert.strictEqual(err, undefined)" }, { "id": "node-builtin.assert.strict.rejects", "kind": "node-builtin", "name": "assert/strict.rejects", "status": "unsupported", "code": "SC2020", "note": "await the promise inside assert.throws's callback story instead: try { await p; assert.fail(\"expected rejection\") } catch { ... }" }, { "id": "node-builtin.async_hooks", "kind": "node-builtin", "name": "async_hooks", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.buffer", "kind": "node-builtin", "name": "buffer", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.child_process", "kind": "node-builtin", "name": "child_process", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.child_process.execFile", "kind": "node-builtin", "name": "child_process.execFile", "status": "unsupported", "code": "SC2020", "note": "the callback forms execFile(file, callback), execFile(file, args, callback), and execFile(file, args, { encoding: 'utf8', maxBuffer: N }, callback) lower; maxBuffer is not enforced by the growing native capture; other options and reached no-callback calls remain fenced, while util.promisify(execFile) retains its wider options slice" }, { "id": "node-builtin.child_process.execFileSync", "kind": "node-builtin", "name": "child_process.execFileSync", "status": "static" }, { "id": "node-builtin.child_process.execSync", "kind": "node-builtin", "name": "child_process.execSync", "status": "static" }, { "id": "node-builtin.child_process.fork", "kind": "node-builtin", "name": "child_process.fork", "status": "static" }, { "id": "node-builtin.child_process.spawn", "kind": "node-builtin", "name": "child_process.spawn", "status": "static" }, { "id": "node-builtin.child_process.spawnSync", "kind": "node-builtin", "name": "child_process.spawnSync", "status": "static" }, { "id": "node-builtin.cluster", "kind": "node-builtin", "name": "cluster", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.cluster.isMaster", "kind": "node-builtin", "name": "cluster.isMaster", "status": "static", "note": "constant value read" }, { "id": "node-builtin.cluster.isPrimary", "kind": "node-builtin", "name": "cluster.isPrimary", "status": "static", "note": "constant value read" }, { "id": "node-builtin.cluster.isWorker", "kind": "node-builtin", "name": "cluster.isWorker", "status": "static", "note": "constant value read" }, { "id": "node-builtin.console", "kind": "node-builtin", "name": "console", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.console.Console", "kind": "node-builtin", "name": "console.Console", "status": "unsupported", "code": "SC2020", "note": "custom Console instances are not supported yet; direct node:console log/info/debug/error/warn calls use the process output streams" }, { "id": "node-builtin.crypto", "kind": "node-builtin", "name": "crypto", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.crypto.createCipheriv", "kind": "node-builtin", "name": "crypto.createCipheriv", "status": "unsupported", "code": "SC2020", "note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createDecipheriv", "kind": "node-builtin", "name": "crypto.createDecipheriv", "status": "unsupported", "code": "SC2020", "note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createDiffieHellman", "kind": "node-builtin", "name": "crypto.createDiffieHellman", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createDiffieHellmanGroup", "kind": "node-builtin", "name": "crypto.createDiffieHellmanGroup", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createECDH", "kind": "node-builtin", "name": "crypto.createECDH", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createHash", "kind": "node-builtin", "name": "crypto.createHash", "status": "static" }, { "id": "node-builtin.crypto.createHmac", "kind": "node-builtin", "name": "crypto.createHmac", "status": "static" }, { "id": "node-builtin.crypto.createPrivateKey", "kind": "node-builtin", "name": "crypto.createPrivateKey", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createPublicKey", "kind": "node-builtin", "name": "crypto.createPublicKey", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createSecretKey", "kind": "node-builtin", "name": "crypto.createSecretKey", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createSign", "kind": "node-builtin", "name": "crypto.createSign", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.createVerify", "kind": "node-builtin", "name": "crypto.createVerify", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.diffieHellman", "kind": "node-builtin", "name": "crypto.diffieHellman", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.generateKey", "kind": "node-builtin", "name": "crypto.generateKey", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.generateKeyPair", "kind": "node-builtin", "name": "crypto.generateKeyPair", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.generateKeyPairSync", "kind": "node-builtin", "name": "crypto.generateKeyPairSync", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.generateKeySync", "kind": "node-builtin", "name": "crypto.generateKeySync", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.getCipherInfo", "kind": "node-builtin", "name": "crypto.getCipherInfo", "status": "unsupported", "code": "SC2020", "note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.getDiffieHellman", "kind": "node-builtin", "name": "crypto.getDiffieHellman", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.hash", "kind": "node-builtin", "name": "crypto.hash", "status": "static" }, { "id": "node-builtin.crypto.hkdf", "kind": "node-builtin", "name": "crypto.hkdf", "status": "unsupported", "code": "SC2020", "note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.hkdfSync", "kind": "node-builtin", "name": "crypto.hkdfSync", "status": "unsupported", "code": "SC2020", "note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.pbkdf2", "kind": "node-builtin", "name": "crypto.pbkdf2", "status": "static" }, { "id": "node-builtin.crypto.pbkdf2Sync", "kind": "node-builtin", "name": "crypto.pbkdf2Sync", "status": "static" }, { "id": "node-builtin.crypto.privateDecrypt", "kind": "node-builtin", "name": "crypto.privateDecrypt", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.privateEncrypt", "kind": "node-builtin", "name": "crypto.privateEncrypt", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.publicDecrypt", "kind": "node-builtin", "name": "crypto.publicDecrypt", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.publicEncrypt", "kind": "node-builtin", "name": "crypto.publicEncrypt", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.randomBytes", "kind": "node-builtin", "name": "crypto.randomBytes", "status": "static" }, { "id": "node-builtin.crypto.randomFillSync", "kind": "node-builtin", "name": "crypto.randomFillSync", "status": "static" }, { "id": "node-builtin.crypto.randomInt", "kind": "node-builtin", "name": "crypto.randomInt", "status": "static" }, { "id": "node-builtin.crypto.randomUUID", "kind": "node-builtin", "name": "crypto.randomUUID", "status": "static" }, { "id": "node-builtin.crypto.scrypt", "kind": "node-builtin", "name": "crypto.scrypt", "status": "unsupported", "code": "SC2020", "note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.scryptSync", "kind": "node-builtin", "name": "crypto.scryptSync", "status": "unsupported", "code": "SC2020", "note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.setFips", "kind": "node-builtin", "name": "crypto.setFips", "status": "unsupported", "code": "SC2020", "note": "a compiled binary has no FIPS provider to enable, and Node itself throws on setFips(true) in a non-FIPS build — getFips() answers 0 here" }, { "id": "node-builtin.crypto.sign", "kind": "node-builtin", "name": "crypto.sign", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.timingSafeEqual", "kind": "node-builtin", "name": "crypto.timingSafeEqual", "status": "static" }, { "id": "node-builtin.crypto.verify", "kind": "node-builtin", "name": "crypto.verify", "status": "unsupported", "code": "SC2020", "note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics" }, { "id": "node-builtin.crypto.webcrypto", "kind": "node-builtin", "name": "crypto.webcrypto", "status": "unsupported", "code": "SC2020", "note": "the WebCrypto object has no lowering — the lowered crypto surface is randomUUID, randomBytes, and the createHash chain" }, { "id": "node-builtin.dgram", "kind": "node-builtin", "name": "dgram", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.diagnostics_channel", "kind": "node-builtin", "name": "diagnostics_channel", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.diagnostics_channel.channel", "kind": "node-builtin", "name": "diagnostics_channel.channel", "status": "static" }, { "id": "node-builtin.diagnostics_channel.hasSubscribers", "kind": "node-builtin", "name": "diagnostics_channel.hasSubscribers", "status": "static" }, { "id": "node-builtin.diagnostics_channel.subscribe", "kind": "node-builtin", "name": "diagnostics_channel.subscribe", "status": "static" }, { "id": "node-builtin.diagnostics_channel.tracingChannel", "kind": "node-builtin", "name": "diagnostics_channel.tracingChannel", "status": "static" }, { "id": "node-builtin.diagnostics_channel.unsubscribe", "kind": "node-builtin", "name": "diagnostics_channel.unsubscribe", "status": "static" }, { "id": "node-builtin.dns", "kind": "node-builtin", "name": "dns", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.events", "kind": "node-builtin", "name": "events", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.fs", "kind": "node-builtin", "name": "fs", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.fs.accessSync", "kind": "node-builtin", "name": "fs.accessSync", "status": "static" }, { "id": "node-builtin.fs.appendFileSync", "kind": "node-builtin", "name": "fs.appendFileSync", "status": "static" }, { "id": "node-builtin.fs.chmodSync", "kind": "node-builtin", "name": "fs.chmodSync", "status": "static" }, { "id": "node-builtin.fs.chownSync", "kind": "node-builtin", "name": "fs.chownSync", "status": "static" }, { "id": "node-builtin.fs.closeSync", "kind": "node-builtin", "name": "fs.closeSync", "status": "static" }, { "id": "node-builtin.fs.copyFileSync", "kind": "node-builtin", "name": "fs.copyFileSync", "status": "static" }, { "id": "node-builtin.fs.existsSync", "kind": "node-builtin", "name": "fs.existsSync", "status": "static" }, { "id": "node-builtin.fs.fchmodSync", "kind": "node-builtin", "name": "fs.fchmodSync", "status": "static" }, { "id": "node-builtin.fs.fstatSync", "kind": "node-builtin", "name": "fs.fstatSync", "status": "static" }, { "id": "node-builtin.fs.fsyncSync", "kind": "node-builtin", "name": "fs.fsyncSync", "status": "static" }, { "id": "node-builtin.fs.linkSync", "kind": "node-builtin", "name": "fs.linkSync", "status": "static" }, { "id": "node-builtin.fs.lstatSync", "kind": "node-builtin", "name": "fs.lstatSync", "status": "static" }, { "id": "node-builtin.fs.mkdirSync", "kind": "node-builtin", "name": "fs.mkdirSync", "status": "static" }, { "id": "node-builtin.fs.mkdtempSync", "kind": "node-builtin", "name": "fs.mkdtempSync", "status": "static" }, { "id": "node-builtin.fs.openSync", "kind": "node-builtin", "name": "fs.openSync", "status": "static" }, { "id": "node-builtin.fs.promises", "kind": "node-builtin", "name": "fs/promises", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.fs.promises.chmod", "kind": "node-builtin", "name": "fs/promises.chmod", "status": "static" }, { "id": "node-builtin.fs.promises.lstat", "kind": "node-builtin", "name": "fs/promises.lstat", "status": "static" }, { "id": "node-builtin.fs.promises.mkdir", "kind": "node-builtin", "name": "fs/promises.mkdir", "status": "static" }, { "id": "node-builtin.fs.promises.open", "kind": "node-builtin", "name": "fs/promises.open", "status": "static" }, { "id": "node-builtin.fs.promises.readFile", "kind": "node-builtin", "name": "fs/promises.readFile", "status": "static" }, { "id": "node-builtin.fs.promises.readdir", "kind": "node-builtin", "name": "fs/promises.readdir", "status": "static" }, { "id": "node-builtin.fs.promises.realpath", "kind": "node-builtin", "name": "fs/promises.realpath", "status": "static" }, { "id": "node-builtin.fs.promises.rename", "kind": "node-builtin", "name": "fs/promises.rename", "status": "static" }, { "id": "node-builtin.fs.promises.rm", "kind": "node-builtin", "name": "fs/promises.rm", "status": "static" }, { "id": "node-builtin.fs.promises.stat", "kind": "node-builtin", "name": "fs/promises.stat", "status": "static" }, { "id": "node-builtin.fs.promises.unlink", "kind": "node-builtin", "name": "fs/promises.unlink", "status": "static" }, { "id": "node-builtin.fs.promises.writeFile", "kind": "node-builtin", "name": "fs/promises.writeFile", "status": "static" }, { "id": "node-builtin.fs.readFileSync", "kind": "node-builtin", "name": "fs.readFileSync", "status": "static" }, { "id": "node-builtin.fs.readSync", "kind": "node-builtin", "name": "fs.readSync", "status": "static" }, { "id": "node-builtin.fs.readdirSync", "kind": "node-builtin", "name": "fs.readdirSync", "status": "static" }, { "id": "node-builtin.fs.realpathSync", "kind": "node-builtin", "name": "fs.realpathSync", "status": "static" }, { "id": "node-builtin.fs.realpathSync.native", "kind": "node-builtin", "name": "fs.realpathSync.native", "status": "static" }, { "id": "node-builtin.fs.rename", "kind": "node-builtin", "name": "fs.rename", "status": "static" }, { "id": "node-builtin.fs.renameSync", "kind": "node-builtin", "name": "fs.renameSync", "status": "static" }, { "id": "node-builtin.fs.rmSync", "kind": "node-builtin", "name": "fs.rmSync", "status": "static" }, { "id": "node-builtin.fs.rmdirSync", "kind": "node-builtin", "name": "fs.rmdirSync", "status": "static" }, { "id": "node-builtin.fs.statSync", "kind": "node-builtin", "name": "fs.statSync", "status": "static" }, { "id": "node-builtin.fs.unlinkSync", "kind": "node-builtin", "name": "fs.unlinkSync", "status": "static" }, { "id": "node-builtin.fs.watch", "kind": "node-builtin", "name": "fs.watch", "status": "static" }, { "id": "node-builtin.fs.writeFileSync", "kind": "node-builtin", "name": "fs.writeFileSync", "status": "static" }, { "id": "node-builtin.fs.writeSync", "kind": "node-builtin", "name": "fs.writeSync", "status": "static" }, { "id": "node-builtin.http", "kind": "node-builtin", "name": "http", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.http.maxHeaderSize", "kind": "node-builtin", "name": "http.maxHeaderSize", "status": "static", "note": "constant value read" }, { "id": "node-builtin.http2", "kind": "node-builtin", "name": "http2", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.http2.connect", "kind": "node-builtin", "name": "http2.connect", "status": "unsupported", "code": "SC2020", "note": "HTTP/2 client sessions have no lowering — the lowered http2 surface is the SERVER side: createSecureServer({ allowHTTP1: true, cert, key }), which serves HTTP/1.1 only (ALPN never offers h2 — h2-capable clients negotiate down); an HTTP/1.1 client is https.request" }, { "id": "node-builtin.http2.createServer", "kind": "node-builtin", "name": "http2.createServer", "status": "unsupported", "code": "SC2020", "note": "cleartext (h2c) servers have no lowering — the lowered http2 surface is createSecureServer({ allowHTTP1: true, cert, key }), which serves HTTP/1.1 over TLS (plain HTTP/1.1 is http.createServer)" }, { "id": "node-builtin.https", "kind": "node-builtin", "name": "https", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.module", "kind": "node-builtin", "name": "module", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.module.createRequire", "kind": "node-builtin", "name": "module.createRequire", "status": "unsupported", "code": "SC2020", "note": "the lowered shape is a const binding (or a proven stable top-level let/var) over createRequire(import.meta.url) (or __filename) whose require calls take STATIC string literals — builtins, project modules (including #imports), relative .json documents, --npm-static packages, and installed npm packages under --dynamic resolve at build time; dynamic specifiers cannot exist in a compiled binary's fixed module graph" }, { "id": "node-builtin.module.isBuiltin", "kind": "node-builtin", "name": "module.isBuiltin", "status": "unsupported", "code": "SC2020", "note": "the lowered call checks a string against the baked Node v24 list, including bare/node: aliases and prefix-only builtins" }, { "id": "node-builtin.module.syncBuiltinESMExports", "kind": "node-builtin", "name": "module.syncBuiltinESMExports", "status": "unsupported", "code": "SC2020", "note": "the direct zero-argument call is a no-op because compiled builtin exports are immutable and cannot become stale" }, { "id": "node-builtin.net", "kind": "node-builtin", "name": "net", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.net.getDefaultAutoSelectFamilyAttemptTimeout", "kind": "node-builtin", "name": "net.getDefaultAutoSelectFamilyAttemptTimeout", "status": "static" }, { "id": "node-builtin.net.setDefaultAutoSelectFamilyAttemptTimeout", "kind": "node-builtin", "name": "net.setDefaultAutoSelectFamilyAttemptTimeout", "status": "static" }, { "id": "node-builtin.os", "kind": "node-builtin", "name": "os", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.os.EOL", "kind": "node-builtin", "name": "os.EOL", "status": "static", "note": "constant value read" }, { "id": "node-builtin.os.homedir", "kind": "node-builtin", "name": "os.homedir", "status": "static" }, { "id": "node-builtin.os.networkInterfaces", "kind": "node-builtin", "name": "os.networkInterfaces", "status": "static" }, { "id": "node-builtin.os.platform", "kind": "node-builtin", "name": "os.platform", "status": "static" }, { "id": "node-builtin.os.release", "kind": "node-builtin", "name": "os.release", "status": "static" }, { "id": "node-builtin.os.tmpdir", "kind": "node-builtin", "name": "os.tmpdir", "status": "static" }, { "id": "node-builtin.os.totalmem", "kind": "node-builtin", "name": "os.totalmem", "status": "static" }, { "id": "node-builtin.os.type", "kind": "node-builtin", "name": "os.type", "status": "static" }, { "id": "node-builtin.os.userInfo", "kind": "node-builtin", "name": "os.userInfo", "status": "static" }, { "id": "node-builtin.path", "kind": "node-builtin", "name": "path", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.path.basename", "kind": "node-builtin", "name": "path.basename", "status": "static" }, { "id": "node-builtin.path.delimiter", "kind": "node-builtin", "name": "path.delimiter", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.dirname", "kind": "node-builtin", "name": "path.dirname", "status": "static" }, { "id": "node-builtin.path.extname", "kind": "node-builtin", "name": "path.extname", "status": "static" }, { "id": "node-builtin.path.isAbsolute", "kind": "node-builtin", "name": "path.isAbsolute", "status": "static" }, { "id": "node-builtin.path.join", "kind": "node-builtin", "name": "path.join", "status": "static" }, { "id": "node-builtin.path.normalize", "kind": "node-builtin", "name": "path.normalize", "status": "static" }, { "id": "node-builtin.path.posix", "kind": "node-builtin", "name": "path/posix", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.path.posix.basename", "kind": "node-builtin", "name": "path/posix.basename", "status": "static" }, { "id": "node-builtin.path.posix.delimiter", "kind": "node-builtin", "name": "path/posix.delimiter", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.posix.dirname", "kind": "node-builtin", "name": "path/posix.dirname", "status": "static" }, { "id": "node-builtin.path.posix.extname", "kind": "node-builtin", "name": "path/posix.extname", "status": "static" }, { "id": "node-builtin.path.posix.isAbsolute", "kind": "node-builtin", "name": "path/posix.isAbsolute", "status": "static" }, { "id": "node-builtin.path.posix.join", "kind": "node-builtin", "name": "path/posix.join", "status": "static" }, { "id": "node-builtin.path.posix.normalize", "kind": "node-builtin", "name": "path/posix.normalize", "status": "static" }, { "id": "node-builtin.path.posix.relative", "kind": "node-builtin", "name": "path/posix.relative", "status": "static" }, { "id": "node-builtin.path.posix.resolve", "kind": "node-builtin", "name": "path/posix.resolve", "status": "static" }, { "id": "node-builtin.path.posix.sep", "kind": "node-builtin", "name": "path/posix.sep", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.posix.toNamespacedPath", "kind": "node-builtin", "name": "path/posix.toNamespacedPath", "status": "static" }, { "id": "node-builtin.path.relative", "kind": "node-builtin", "name": "path.relative", "status": "static" }, { "id": "node-builtin.path.resolve", "kind": "node-builtin", "name": "path.resolve", "status": "static" }, { "id": "node-builtin.path.sep", "kind": "node-builtin", "name": "path.sep", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.toNamespacedPath", "kind": "node-builtin", "name": "path.toNamespacedPath", "status": "static" }, { "id": "node-builtin.path.win32", "kind": "node-builtin", "name": "path/win32", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.path.win32.basename", "kind": "node-builtin", "name": "path/win32.basename", "status": "static" }, { "id": "node-builtin.path.win32.delimiter", "kind": "node-builtin", "name": "path/win32.delimiter", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.win32.dirname", "kind": "node-builtin", "name": "path/win32.dirname", "status": "static" }, { "id": "node-builtin.path.win32.extname", "kind": "node-builtin", "name": "path/win32.extname", "status": "static" }, { "id": "node-builtin.path.win32.isAbsolute", "kind": "node-builtin", "name": "path/win32.isAbsolute", "status": "static" }, { "id": "node-builtin.path.win32.join", "kind": "node-builtin", "name": "path/win32.join", "status": "static" }, { "id": "node-builtin.path.win32.normalize", "kind": "node-builtin", "name": "path/win32.normalize", "status": "static" }, { "id": "node-builtin.path.win32.relative", "kind": "node-builtin", "name": "path/win32.relative", "status": "static" }, { "id": "node-builtin.path.win32.resolve", "kind": "node-builtin", "name": "path/win32.resolve", "status": "static" }, { "id": "node-builtin.path.win32.sep", "kind": "node-builtin", "name": "path/win32.sep", "status": "static", "note": "constant value read" }, { "id": "node-builtin.path.win32.toNamespacedPath", "kind": "node-builtin", "name": "path/win32.toNamespacedPath", "status": "static" }, { "id": "node-builtin.perf_hooks", "kind": "node-builtin", "name": "perf_hooks", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.perf_hooks.performance.now", "kind": "node-builtin", "name": "perf_hooks.performance.now", "status": "static", "note": "the global performance object and the performance.now.bind(performance) function value reach the same clock" }, { "id": "node-builtin.process.argv", "kind": "node-builtin", "name": "process.argv", "status": "static" }, { "id": "node-builtin.process.availableMemory", "kind": "node-builtin", "name": "process.availableMemory", "status": "static" }, { "id": "node-builtin.process.chdir", "kind": "node-builtin", "name": "process.chdir", "status": "static" }, { "id": "node-builtin.process.columns", "kind": "node-builtin", "name": "process.columns", "status": "static", "note": "the columns read on the process stdio streams (terminal geometry)" }, { "id": "node-builtin.process.constrainedMemory", "kind": "node-builtin", "name": "process.constrainedMemory", "status": "static" }, { "id": "node-builtin.process.cpuUsage", "kind": "node-builtin", "name": "process.cpuUsage", "status": "static", "note": "the plain-sample and previous-value diff forms are one surface" }, { "id": "node-builtin.process.cwd", "kind": "node-builtin", "name": "process.cwd", "status": "static" }, { "id": "node-builtin.process.env", "kind": "node-builtin", "name": "process.env", "status": "static", "note": "reads, writes, deletes, and enumeration of the process environment (the process global)" }, { "id": "node-builtin.process.execPath", "kind": "node-builtin", "name": "process.execPath", "status": "static" }, { "id": "node-builtin.process.exit", "kind": "node-builtin", "name": "process.exit", "status": "static", "note": "process.exit and the process._exiting flag read are one surface" }, { "id": "node-builtin.process.exitCode", "kind": "node-builtin", "name": "process.exitCode", "status": "static", "note": "numeric writes in statement position set the implicit exit status; process.exit() reads it" }, { "id": "node-builtin.process.getBuiltinModule", "kind": "node-builtin", "name": "process.getBuiltinModule", "status": "static", "note": "native path and os export subsets plus main-thread worker_threads metadata; other modules and exports throw SC2020" }, { "id": "node-builtin.process.getgid", "kind": "node-builtin", "name": "process.getgid", "status": "static" }, { "id": "node-builtin.process.getuid", "kind": "node-builtin", "name": "process.getuid", "status": "static" }, { "id": "node-builtin.process.isTTY", "kind": "node-builtin", "name": "process.isTTY", "status": "static", "note": "the isTTY read on process.stdin/stdout/stderr — one surface across the three streams" }, { "id": "node-builtin.process.kill", "kind": "node-builtin", "name": "process.kill", "status": "static", "note": "the signal-name and signal-number forms are one surface" }, { "id": "node-builtin.process.pid", "kind": "node-builtin", "name": "process.pid", "status": "static" }, { "id": "node-builtin.process.resourceUsage", "kind": "node-builtin", "name": "process.resourceUsage", "status": "static", "note": "getrusage's 16 fields — every field read samples live machine state" }, { "id": "node-builtin.process.rows", "kind": "node-builtin", "name": "process.rows", "status": "static", "note": "the rows read on process.stdout/stderr (terminal geometry)" }, { "id": "node-builtin.process.threadCpuUsage", "kind": "node-builtin", "name": "process.threadCpuUsage", "status": "static", "note": "the plain-sample and previous-value diff forms are one surface" }, { "id": "node-builtin.process.umask", "kind": "node-builtin", "name": "process.umask", "status": "static" }, { "id": "node-builtin.process.uptime", "kind": "node-builtin", "name": "process.uptime", "status": "static" }, { "id": "node-builtin.process.versions", "kind": "node-builtin", "name": "process.versions", "status": "static", "note": "shared version dictionary containing node and openssl; other components are absent unless defined by the program" }, { "id": "node-builtin.querystring", "kind": "node-builtin", "name": "querystring", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.querystring.decode", "kind": "node-builtin", "name": "querystring.decode", "status": "static" }, { "id": "node-builtin.querystring.encode", "kind": "node-builtin", "name": "querystring.encode", "status": "static" }, { "id": "node-builtin.querystring.escape", "kind": "node-builtin", "name": "querystring.escape", "status": "static" }, { "id": "node-builtin.querystring.parse", "kind": "node-builtin", "name": "querystring.parse", "status": "static" }, { "id": "node-builtin.querystring.stringify", "kind": "node-builtin", "name": "querystring.stringify", "status": "static" }, { "id": "node-builtin.querystring.unescape", "kind": "node-builtin", "name": "querystring.unescape", "status": "static" }, { "id": "node-builtin.readline", "kind": "node-builtin", "name": "readline", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.readline.createInterface", "kind": "node-builtin", "name": "readline.createInterface", "status": "static" }, { "id": "node-builtin.stream", "kind": "node-builtin", "name": "stream", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.stream.consumers", "kind": "node-builtin", "name": "stream/consumers", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.stream.consumers.arrayBuffer", "kind": "node-builtin", "name": "stream/consumers.arrayBuffer", "status": "unsupported", "code": "SC2020", "note": "collecting a stream directly into an ArrayBuffer has no native lowering yet; buffer(stream) collects the same bytes as a Buffer" }, { "id": "node-builtin.stream.consumers.blob", "kind": "node-builtin", "name": "stream/consumers.blob", "status": "unsupported", "code": "SC2020", "note": "Blob values have no representation in a compiled binary — buffer(stream) collects the same bytes as a Buffer, text(stream) the decoded text" }, { "id": "node-builtin.stream.promises", "kind": "node-builtin", "name": "stream/promises", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.string_decoder", "kind": "node-builtin", "name": "string_decoder", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.test", "kind": "node-builtin", "name": "node:test", "status": "static", "note": "recognized module (node:-prefixed specifier only, matching Node)" }, { "id": "node-builtin.timers", "kind": "node-builtin", "name": "timers", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.timers.promises", "kind": "node-builtin", "name": "timers/promises", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.timers.promises.setImmediate", "kind": "node-builtin", "name": "timers/promises.setImmediate", "status": "static" }, { "id": "node-builtin.timers.promises.setTimeout", "kind": "node-builtin", "name": "timers/promises.setTimeout", "status": "static" }, { "id": "node-builtin.tls", "kind": "node-builtin", "name": "tls", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.tls.connect", "kind": "node-builtin", "name": "tls.connect", "status": "unsupported", "code": "SC2020", "note": "the lowered TLS client is https.request({ hostname, port, path, method, ca?, rejectUnauthorized? }); raw tls.connect sockets have no lowering yet" }, { "id": "node-builtin.tls.createSecureContext", "kind": "node-builtin", "name": "tls.createSecureContext", "status": "unsupported", "code": "SC2020", "note": "the lowered form is createSecureContext({ cert, key }) — an opaque SecureContext handle for SNI callbacks (http2.createSecureServer accepts SNICallback); other options fence by name" }, { "id": "node-builtin.tls.getCACertificates", "kind": "node-builtin", "name": "tls.getCACertificates", "status": "static", "note": "the per-type cached PEM bundle: 'default' and 'extra' additionally read NODE_EXTRA_CA_CERTS, 'system' the platform store" }, { "id": "node-builtin.tls.rootCertificates", "kind": "node-builtin", "name": "tls.rootCertificates", "status": "static", "note": "the value read; answers the same bundled array as getCACertificates('bundled'), but fenced under its own id — the spelling an author writes" }, { "id": "node-builtin.tls.setDefaultCACertificates", "kind": "node-builtin", "name": "tls.setDefaultCACertificates", "status": "static", "note": "replaces the default set and the client trust anchors for the rest of the process" }, { "id": "node-builtin.tty", "kind": "node-builtin", "name": "tty", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.url", "kind": "node-builtin", "name": "url", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.url.fileURLToPath", "kind": "node-builtin", "name": "url.fileURLToPath", "status": "static" }, { "id": "node-builtin.url.pathToFileURL", "kind": "node-builtin", "name": "url.pathToFileURL", "status": "static" }, { "id": "node-builtin.util", "kind": "node-builtin", "name": "util", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.util.parseArgs", "kind": "node-builtin", "name": "util.parseArgs", "status": "static" }, { "id": "node-builtin.util.promisify", "kind": "node-builtin", "name": "util.promisify", "status": "unsupported", "code": "SC2020", "note": "the lowered shapes are const bindings over child_process.execFile and fs.readFile; call the bound function directly" }, { "id": "node-builtin.util.types", "kind": "node-builtin", "name": "util/types", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.worker_threads", "kind": "node-builtin", "name": "worker_threads", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.worker_threads.isMainThread", "kind": "node-builtin", "name": "worker_threads.isMainThread", "status": "static", "note": "constant value read" }, { "id": "node-builtin.worker_threads.threadId", "kind": "node-builtin", "name": "worker_threads.threadId", "status": "static", "note": "constant value read" }, { "id": "node-builtin.zlib", "kind": "node-builtin", "name": "zlib", "status": "static", "note": "recognized module (bare and node:-prefixed specifiers)" }, { "id": "node-builtin.zlib.brotliCompressSync", "kind": "node-builtin", "name": "zlib.brotliCompressSync", "status": "unsupported", "code": "SC2020", "note": "the default-options deflate/inflate, raw, gzip/gunzip, and unzip sync/callback forms plus crc32 are the lowered zlib surface" }, { "id": "node-builtin.zlib.brotliDecompressSync", "kind": "node-builtin", "name": "zlib.brotliDecompressSync", "status": "unsupported", "code": "SC2020", "note": "the default-options deflate/inflate, raw, gzip/gunzip, and unzip sync/callback forms plus crc32 are the lowered zlib surface" }, { "id": "node-builtin.zlib.crc32", "kind": "node-builtin", "name": "zlib.crc32", "status": "static" }, { "id": "node-builtin.zlib.deflate", "kind": "node-builtin", "name": "zlib.deflate", "status": "static" }, { "id": "node-builtin.zlib.deflateRaw", "kind": "node-builtin", "name": "zlib.deflateRaw", "status": "static" }, { "id": "node-builtin.zlib.deflateRawSync", "kind": "node-builtin", "name": "zlib.deflateRawSync", "status": "static" }, { "id": "node-builtin.zlib.deflateSync", "kind": "node-builtin", "name": "zlib.deflateSync", "status": "static" }, { "id": "node-builtin.zlib.gunzip", "kind": "node-builtin", "name": "zlib.gunzip", "status": "static" }, { "id": "node-builtin.zlib.gunzipSync", "kind": "node-builtin", "name": "zlib.gunzipSync", "status": "static" }, { "id": "node-builtin.zlib.gzip", "kind": "node-builtin", "name": "zlib.gzip", "status": "static" }, { "id": "node-builtin.zlib.gzipSync", "kind": "node-builtin", "name": "zlib.gzipSync", "status": "static" }, { "id": "node-builtin.zlib.inflate", "kind": "node-builtin", "name": "zlib.inflate", "status": "static" }, { "id": "node-builtin.zlib.inflateRaw", "kind": "node-builtin", "name": "zlib.inflateRaw", "status": "static" }, { "id": "node-builtin.zlib.inflateRawSync", "kind": "node-builtin", "name": "zlib.inflateRawSync", "status": "static" }, { "id": "node-builtin.zlib.inflateSync", "kind": "node-builtin", "name": "zlib.inflateSync", "status": "static" }, { "id": "node-builtin.zlib.unzip", "kind": "node-builtin", "name": "zlib.unzip", "status": "static" }, { "id": "node-builtin.zlib.unzipSync", "kind": "node-builtin", "name": "zlib.unzipSync", "status": "static" }, { "id": "stdlib.abort-controller.abort", "kind": "stdlib", "name": "AbortController.abort", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: callback-order, identity, liveness, state-machine, surplus-arguments; differential evidence: fixture:static-controller" }, { "id": "stdlib.abort-controller.constructor", "kind": "stdlib", "name": "AbortController constructor", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: argument-evaluation, identity, state-machine, surplus-arguments; differential evidence: fixture:static-controller" }, { "id": "stdlib.abort-controller.signal", "kind": "stdlib", "name": "AbortController.signal", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, property-read, state-machine; differential evidence: fixture:static-controller" }, { "id": "stdlib.abort-signal.abort", "kind": "stdlib", "name": "AbortSignal.abort", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, liveness, surplus-arguments, property-read; differential evidence: generated:webidl-operations, fixture:static-stream-this" }, { "id": "stdlib.abort-signal.aborted", "kind": "stdlib", "name": "AbortSignal.aborted", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: generated:webidl-operations" }, { "id": "stdlib.abort-signal.add-event-listener", "kind": "stdlib", "name": "AbortSignal.addEventListener", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, identity, callback-order, callback-this; differential evidence: generated:abort-events, fixture:static-listener-this, fixture:static-listener-noncallable" }, { "id": "stdlib.abort-signal.any", "kind": "stdlib", "name": "AbortSignal.any", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, missing-arguments, surplus-arguments, property-read; differential evidence: generated:webidl-operations, fixture:static-stream-this" }, { "id": "stdlib.abort-signal.constructor", "kind": "stdlib", "name": "AbortSignal constructor", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; Node exposes the interface object but constructing it throws; neither compiler tier currently preserves that constructor behavior" }, { "id": "stdlib.abort-signal.dispatch-event", "kind": "stdlib", "name": "AbortSignal.dispatchEvent", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: callback-order, callback-this, error-shape; differential evidence: fixture:static-dispatch-throw" }, { "id": "stdlib.abort-signal.onabort", "kind": "stdlib", "name": "AbortSignal.onabort", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: callback-order, callback-this, mutation, property-read; differential evidence: generated:abort-events, fixture:static-listener-this" }, { "id": "stdlib.abort-signal.reason", "kind": "stdlib", "name": "AbortSignal.reason", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, liveness, property-read; differential evidence: generated:webidl-operations, fixture:static-stream-this" }, { "id": "stdlib.abort-signal.remove-event-listener", "kind": "stdlib", "name": "AbortSignal.removeEventListener", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, identity, callback-order; differential evidence: generated:abort-events, fixture:static-stream-this" }, { "id": "stdlib.abort-signal.throw-if-aborted", "kind": "stdlib", "name": "AbortSignal.throwIfAborted", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, error-shape; differential evidence: generated:webidl-operations, fixture:static-abort-throw" }, { "id": "stdlib.abort-signal.timeout", "kind": "stdlib", "name": "AbortSignal.timeout", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, missing-arguments, surplus-arguments, error-shape; differential evidence: generated:webidl-operations, fixture:static-stream-this" }, { "id": "stdlib.array.at", "kind": "stdlib", "name": "Array.prototype.at", "status": "static" }, { "id": "stdlib.array.concat", "kind": "stdlib", "name": "Array.prototype.concat", "status": "static" }, { "id": "stdlib.array.copyWithin", "kind": "stdlib", "name": "Array.prototype.copyWithin", "status": "static" }, { "id": "stdlib.array.every", "kind": "stdlib", "name": "Array.prototype.every", "status": "static" }, { "id": "stdlib.array.fill", "kind": "stdlib", "name": "Array.prototype.fill", "status": "static" }, { "id": "stdlib.array.filter", "kind": "stdlib", "name": "Array.prototype.filter", "status": "static" }, { "id": "stdlib.array.find", "kind": "stdlib", "name": "Array.prototype.find", "status": "static" }, { "id": "stdlib.array.findIndex", "kind": "stdlib", "name": "Array.prototype.findIndex", "status": "static" }, { "id": "stdlib.array.findLast", "kind": "stdlib", "name": "Array.prototype.findLast", "status": "static" }, { "id": "stdlib.array.findLastIndex", "kind": "stdlib", "name": "Array.prototype.findLastIndex", "status": "static" }, { "id": "stdlib.array.flat", "kind": "stdlib", "name": "Array.prototype.flat", "status": "static" }, { "id": "stdlib.array.flatMap", "kind": "stdlib", "name": "Array.prototype.flatMap", "status": "static" }, { "id": "stdlib.array.forEach", "kind": "stdlib", "name": "Array.prototype.forEach", "status": "static" }, { "id": "stdlib.array.includes", "kind": "stdlib", "name": "Array.prototype.includes", "status": "static" }, { "id": "stdlib.array.indexOf", "kind": "stdlib", "name": "Array.prototype.indexOf", "status": "static" }, { "id": "stdlib.array.join", "kind": "stdlib", "name": "Array.prototype.join", "status": "static" }, { "id": "stdlib.array.lastIndexOf", "kind": "stdlib", "name": "Array.prototype.lastIndexOf", "status": "static" }, { "id": "stdlib.array.map", "kind": "stdlib", "name": "Array.prototype.map", "status": "static" }, { "id": "stdlib.array.pop", "kind": "stdlib", "name": "Array.prototype.pop", "status": "static" }, { "id": "stdlib.array.push", "kind": "stdlib", "name": "Array.prototype.push", "status": "static" }, { "id": "stdlib.array.reduce", "kind": "stdlib", "name": "Array.prototype.reduce", "status": "static" }, { "id": "stdlib.array.reduceRight", "kind": "stdlib", "name": "Array.prototype.reduceRight", "status": "static" }, { "id": "stdlib.array.reverse", "kind": "stdlib", "name": "Array.prototype.reverse", "status": "static" }, { "id": "stdlib.array.slice", "kind": "stdlib", "name": "Array.prototype.slice", "status": "static" }, { "id": "stdlib.array.some", "kind": "stdlib", "name": "Array.prototype.some", "status": "static" }, { "id": "stdlib.array.toReversed", "kind": "stdlib", "name": "Array.prototype.toReversed", "status": "static" }, { "id": "stdlib.array.toSorted", "kind": "stdlib", "name": "Array.prototype.toSorted", "status": "static" }, { "id": "stdlib.array.toSpliced", "kind": "stdlib", "name": "Array.prototype.toSpliced", "status": "static" }, { "id": "stdlib.array.unshift", "kind": "stdlib", "name": "Array.prototype.unshift", "status": "static" }, { "id": "stdlib.array.with", "kind": "stdlib", "name": "Array.prototype.with", "status": "static" }, { "id": "stdlib.date.UTC", "kind": "stdlib", "name": "Date.UTC", "status": "static", "note": "the lowered call form takes 1 to 7 number arguments" }, { "id": "stdlib.date.constructor", "kind": "stdlib", "name": "Date constructor", "status": "static", "note": "zero arguments, or one milliseconds/date-string argument; values are the read-only TimeClip scalar slice" }, { "id": "stdlib.date.getDate", "kind": "stdlib", "name": "Date.prototype.getDate", "status": "static" }, { "id": "stdlib.date.getDay", "kind": "stdlib", "name": "Date.prototype.getDay", "status": "static" }, { "id": "stdlib.date.getFullYear", "kind": "stdlib", "name": "Date.prototype.getFullYear", "status": "static" }, { "id": "stdlib.date.getHours", "kind": "stdlib", "name": "Date.prototype.getHours", "status": "static" }, { "id": "stdlib.date.getMilliseconds", "kind": "stdlib", "name": "Date.prototype.getMilliseconds", "status": "static" }, { "id": "stdlib.date.getMinutes", "kind": "stdlib", "name": "Date.prototype.getMinutes", "status": "static" }, { "id": "stdlib.date.getMonth", "kind": "stdlib", "name": "Date.prototype.getMonth", "status": "static" }, { "id": "stdlib.date.getSeconds", "kind": "stdlib", "name": "Date.prototype.getSeconds", "status": "static" }, { "id": "stdlib.date.getTime", "kind": "stdlib", "name": "Date.prototype.getTime", "status": "static", "note": "the millisecond value of a stored Date" }, { "id": "stdlib.date.getTimezoneOffset", "kind": "stdlib", "name": "Date.prototype.getTimezoneOffset", "status": "static" }, { "id": "stdlib.date.getUTCDate", "kind": "stdlib", "name": "Date.prototype.getUTCDate", "status": "static" }, { "id": "stdlib.date.getUTCDay", "kind": "stdlib", "name": "Date.prototype.getUTCDay", "status": "static" }, { "id": "stdlib.date.getUTCFullYear", "kind": "stdlib", "name": "Date.prototype.getUTCFullYear", "status": "static" }, { "id": "stdlib.date.getUTCHours", "kind": "stdlib", "name": "Date.prototype.getUTCHours", "status": "static" }, { "id": "stdlib.date.getUTCMilliseconds", "kind": "stdlib", "name": "Date.prototype.getUTCMilliseconds", "status": "static" }, { "id": "stdlib.date.getUTCMinutes", "kind": "stdlib", "name": "Date.prototype.getUTCMinutes", "status": "static" }, { "id": "stdlib.date.getUTCMonth", "kind": "stdlib", "name": "Date.prototype.getUTCMonth", "status": "static" }, { "id": "stdlib.date.getUTCSeconds", "kind": "stdlib", "name": "Date.prototype.getUTCSeconds", "status": "static" }, { "id": "stdlib.date.now", "kind": "stdlib", "name": "Date.now", "status": "static", "note": "the live clock" }, { "id": "stdlib.date.parse", "kind": "stdlib", "name": "Date.parse", "status": "static", "note": "one date string, using the bounded parser shared with new Date(dateString).getTime()" }, { "id": "stdlib.date.toISOString", "kind": "stdlib", "name": "Date.prototype.toISOString", "status": "static", "note": "UTC ISO formatting over constructed and stored Date values" }, { "id": "stdlib.date.valueOf", "kind": "stdlib", "name": "Date.prototype.valueOf", "status": "static", "note": "the same millisecond read as getTime()" }, { "id": "stdlib.fetch", "kind": "stdlib", "name": "fetch", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: argument-evaluation, webidl-conversion, surplus-arguments, promise-settlement, transport, error-shape; differential evidence: fixture:static, fixture:static-coercion, fixture:static-network-error" }, { "id": "stdlib.fetch.request-init.body", "kind": "stdlib", "name": "RequestInit.body", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: string, Uint8Array, ReadableStream, or null; differential evidence: fixture:static, fixture:static-stream, fixture:static-coercion" }, { "id": "stdlib.fetch.request-init.cache", "kind": "stdlib", "name": "RequestInit.cache", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.credentials", "kind": "stdlib", "name": "RequestInit.credentials", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.dispatcher", "kind": "stdlib", "name": "RequestInit.dispatcher", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic tier recognizes Vercel CLI's EnvProxyDispatcher and applies equivalent native environment-proxy routing" }, { "id": "stdlib.fetch.request-init.duplex", "kind": "stdlib", "name": "RequestInit.duplex", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: WebIDL enum; 'half' required for streaming bodies; differential evidence: fixture:static-stream, fixture:static-coercion" }, { "id": "stdlib.fetch.request-init.headers", "kind": "stdlib", "name": "RequestInit.headers", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: Headers, record, or sequence-of-pairs snapshot; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.fetch.request-init.integrity", "kind": "stdlib", "name": "RequestInit.integrity", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.keepalive", "kind": "stdlib", "name": "RequestInit.keepalive", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.method", "kind": "stdlib", "name": "RequestInit.method", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: WebIDL ByteString after all call arguments evaluate; differential evidence: fixture:static-coercion" }, { "id": "stdlib.fetch.request-init.mode", "kind": "stdlib", "name": "RequestInit.mode", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.priority", "kind": "stdlib", "name": "RequestInit.priority", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.redirect", "kind": "stdlib", "name": "RequestInit.redirect", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: WebIDL enum: follow, error, or manual; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.fetch.request-init.referrer", "kind": "stdlib", "name": "RequestInit.referrer", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.referrerPolicy", "kind": "stdlib", "name": "RequestInit.referrerPolicy", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.fetch.request-init.signal", "kind": "stdlib", "name": "RequestInit.signal", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: native AbortSignal handle or absent; differential evidence: fixture:static, fixture:static-abort-throw" }, { "id": "stdlib.fetch.request-init.window", "kind": "stdlib", "name": "RequestInit.window", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; neither compiler tier preserves this RequestInit member's conversion or transport behavior" }, { "id": "stdlib.headers.append", "kind": "stdlib", "name": "Headers.append", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, mutation, error-shape; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.constructor", "kind": "stdlib", "name": "Headers constructor", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the interface constructor has no compiler bridge in either tier" }, { "id": "stdlib.headers.delete", "kind": "stdlib", "name": "Headers.delete", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, mutation, error-shape; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.entries", "kind": "stdlib", "name": "Headers.entries", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; native Headers iteration does not yet expose a static iterator handle" }, { "id": "stdlib.headers.forEach", "kind": "stdlib", "name": "Headers.forEach", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: callback-order, callback-this, mutation; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.get", "kind": "stdlib", "name": "Headers.get", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, missing-arguments, property-read; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.getSetCookie", "kind": "stdlib", "name": "Headers.getSetCookie", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, mutation, error-shape; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.has", "kind": "stdlib", "name": "Headers.has", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, missing-arguments, property-read; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.keys", "kind": "stdlib", "name": "Headers.keys", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; native Headers iteration does not yet expose a static iterator handle" }, { "id": "stdlib.headers.set", "kind": "stdlib", "name": "Headers.set", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, mutation, error-shape; differential evidence: fixture:static, fixture:static-coercion" }, { "id": "stdlib.headers.symbol.iterator", "kind": "stdlib", "name": "Headers.[Symbol.iterator]", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; native Headers iteration does not expose an engine-free iterator handle" }, { "id": "stdlib.headers.values", "kind": "stdlib", "name": "Headers.values", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; native Headers iteration does not yet expose a static iterator handle" }, { "id": "stdlib.map.clear", "kind": "stdlib", "name": "Map.prototype.clear", "status": "static" }, { "id": "stdlib.map.delete", "kind": "stdlib", "name": "Map.prototype.delete", "status": "static" }, { "id": "stdlib.map.forEach", "kind": "stdlib", "name": "Map.prototype.forEach", "status": "static" }, { "id": "stdlib.map.get", "kind": "stdlib", "name": "Map.prototype.get", "status": "static" }, { "id": "stdlib.map.has", "kind": "stdlib", "name": "Map.prototype.has", "status": "static" }, { "id": "stdlib.map.set", "kind": "stdlib", "name": "Map.prototype.set", "status": "static" }, { "id": "stdlib.math.E", "kind": "stdlib", "name": "Math.E", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.LN10", "kind": "stdlib", "name": "Math.LN10", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.LN2", "kind": "stdlib", "name": "Math.LN2", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.LOG10E", "kind": "stdlib", "name": "Math.LOG10E", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.LOG2E", "kind": "stdlib", "name": "Math.LOG2E", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.PI", "kind": "stdlib", "name": "Math.PI", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.SQRT1_2", "kind": "stdlib", "name": "Math.SQRT1_2", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.SQRT2", "kind": "stdlib", "name": "Math.SQRT2", "status": "static", "note": "the constant read compiles to a numeric literal; no runtime Math read is performed" }, { "id": "stdlib.math.abs", "kind": "stdlib", "name": "Math.abs", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.acos", "kind": "stdlib", "name": "Math.acos", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.acosh", "kind": "stdlib", "name": "Math.acosh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.asin", "kind": "stdlib", "name": "Math.asin", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.asinh", "kind": "stdlib", "name": "Math.asinh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.atan", "kind": "stdlib", "name": "Math.atan", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.atan2", "kind": "stdlib", "name": "Math.atan2", "status": "static", "note": "compiles statically at arity 2; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.atanh", "kind": "stdlib", "name": "Math.atanh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.cbrt", "kind": "stdlib", "name": "Math.cbrt", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.ceil", "kind": "stdlib", "name": "Math.ceil", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.clz32", "kind": "stdlib", "name": "Math.clz32", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.cos", "kind": "stdlib", "name": "Math.cos", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.cosh", "kind": "stdlib", "name": "Math.cosh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.exp", "kind": "stdlib", "name": "Math.exp", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.expm1", "kind": "stdlib", "name": "Math.expm1", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.floor", "kind": "stdlib", "name": "Math.floor", "status": "static", "note": "compiles statically at arity 1" }, { "id": "stdlib.math.fround", "kind": "stdlib", "name": "Math.fround", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.hypot", "kind": "stdlib", "name": "Math.hypot", "status": "static", "note": "compiles statically at any arity, including number[] spreads" }, { "id": "stdlib.math.imul", "kind": "stdlib", "name": "Math.imul", "status": "static", "note": "compiles statically at arity 2; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.log", "kind": "stdlib", "name": "Math.log", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.log10", "kind": "stdlib", "name": "Math.log10", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.log1p", "kind": "stdlib", "name": "Math.log1p", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.log2", "kind": "stdlib", "name": "Math.log2", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.max", "kind": "stdlib", "name": "Math.max", "status": "static", "note": "compiles statically at arity 2" }, { "id": "stdlib.math.min", "kind": "stdlib", "name": "Math.min", "status": "static", "note": "compiles statically at arity 2" }, { "id": "stdlib.math.pow", "kind": "stdlib", "name": "Math.pow", "status": "static", "note": "compiles statically at arity 2; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.random", "kind": "stdlib", "name": "Math.random", "status": "static", "note": "compiles statically at arity 0" }, { "id": "stdlib.math.round", "kind": "stdlib", "name": "Math.round", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.sign", "kind": "stdlib", "name": "Math.sign", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.sin", "kind": "stdlib", "name": "Math.sin", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.sinh", "kind": "stdlib", "name": "Math.sinh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.sqrt", "kind": "stdlib", "name": "Math.sqrt", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.tan", "kind": "stdlib", "name": "Math.tan", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.tanh", "kind": "stdlib", "name": "Math.tanh", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.math.trunc", "kind": "stdlib", "name": "Math.trunc", "status": "static", "note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)" }, { "id": "stdlib.number.toFixed", "kind": "stdlib", "name": "number.prototype.toFixed", "status": "static", "note": "the lowered call form takes 0 to 1 arguments" }, { "id": "stdlib.number.toPrecision", "kind": "stdlib", "name": "number.prototype.toPrecision", "status": "dynamic-only", "code": "SC2012" }, { "id": "stdlib.number.toString", "kind": "stdlib", "name": "number.prototype.toString", "status": "dynamic-only", "code": "SC2012" }, { "id": "stdlib.readable-stream-default-controller.close", "kind": "stdlib", "name": "ReadableStreamDefaultController.close", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: state-machine, error-shape; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-controller.constructor", "kind": "stdlib", "name": "ReadableStreamDefaultController constructor", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the constructor object is unavailable in the dynamic engine; static controller handles come from underlying-source callbacks" }, { "id": "stdlib.readable-stream-default-controller.desired-size", "kind": "stdlib", "name": "ReadableStreamDefaultController.desiredSize", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read, state-machine; differential evidence: generated:stream-traces" }, { "id": "stdlib.readable-stream-default-controller.enqueue", "kind": "stdlib", "name": "ReadableStreamDefaultController.enqueue", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, liveness, state-machine, error-shape; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-controller.error", "kind": "stdlib", "name": "ReadableStreamDefaultController.error", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, promise-settlement, state-machine; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-reader.cancel", "kind": "stdlib", "name": "ReadableStreamDefaultReader.cancel", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, promise-settlement, state-machine; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-reader.closed", "kind": "stdlib", "name": "ReadableStreamDefaultReader.closed", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: promise-settlement, property-read, state-machine; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-reader.constructor", "kind": "stdlib", "name": "ReadableStreamDefaultReader constructor", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the constructor object is unavailable in the dynamic engine; static reader handles come from ReadableStream.getReader()" }, { "id": "stdlib.readable-stream-default-reader.read", "kind": "stdlib", "name": "ReadableStreamDefaultReader.read", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, promise-settlement, state-machine; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream-default-reader.release-lock", "kind": "stdlib", "name": "ReadableStreamDefaultReader.releaseLock", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: promise-settlement, state-machine, error-shape; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream.cancel", "kind": "stdlib", "name": "ReadableStream.cancel", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: identity, promise-settlement, state-machine; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream.constructor", "kind": "stdlib", "name": "ReadableStream constructor", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, callback-this, callback-order, state-machine; differential evidence: generated:stream-traces, fixture:static-stream-this" }, { "id": "stdlib.readable-stream.from", "kind": "stdlib", "name": "ReadableStream.from", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, missing-arguments, surplus-arguments, liveness; differential evidence: generated:webidl-operations, generated:stream-traces" }, { "id": "stdlib.readable-stream.get-reader", "kind": "stdlib", "name": "ReadableStream.getReader", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, identity, state-machine, error-shape; differential evidence: generated:stream-traces, fixture:static-stream" }, { "id": "stdlib.readable-stream.locked", "kind": "stdlib", "name": "ReadableStream.locked", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read, state-machine; differential evidence: generated:stream-traces" }, { "id": "stdlib.readable-stream.pipeThrough", "kind": "stdlib", "name": "ReadableStream.pipeThrough", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the wider Web Streams graph is outside the native readable-stream slice" }, { "id": "stdlib.readable-stream.pipeTo", "kind": "stdlib", "name": "ReadableStream.pipeTo", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic Web Streams bridge exposes only an explicit unsupported stub for this operation" }, { "id": "stdlib.readable-stream.symbol.asyncIterator", "kind": "stdlib", "name": "ReadableStream.[Symbol.asyncIterator]", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; direct for-await consumption compiles statically; explicit symbol access and stored iterator handles have no compiler lowering in either tier" }, { "id": "stdlib.readable-stream.tee", "kind": "stdlib", "name": "ReadableStream.tee", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic Web Streams bridge exposes only an explicit unsupported stub for this operation" }, { "id": "stdlib.readable-stream.values", "kind": "stdlib", "name": "ReadableStream.values", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; direct for-await consumption compiles statically; storing or driving the first-class iterator handle requires --dynamic" }, { "id": "stdlib.request.arrayBuffer", "kind": "stdlib", "name": "Request.arrayBuffer", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.attribute", "kind": "stdlib", "name": "Request.attribute", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.blob", "kind": "stdlib", "name": "Request.blob", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.body", "kind": "stdlib", "name": "Request.body", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.bodyUsed", "kind": "stdlib", "name": "Request.bodyUsed", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.bytes", "kind": "stdlib", "name": "Request.bytes", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.cache", "kind": "stdlib", "name": "Request.cache", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.clone", "kind": "stdlib", "name": "Request.clone", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.constructor", "kind": "stdlib", "name": "Request constructor", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.credentials", "kind": "stdlib", "name": "Request.credentials", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.destination", "kind": "stdlib", "name": "Request.destination", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.duplex", "kind": "stdlib", "name": "Request.duplex", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.formData", "kind": "stdlib", "name": "Request.formData", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.headers", "kind": "stdlib", "name": "Request.headers", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.integrity", "kind": "stdlib", "name": "Request.integrity", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.isHistoryNavigation", "kind": "stdlib", "name": "Request.isHistoryNavigation", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.isReloadNavigation", "kind": "stdlib", "name": "Request.isReloadNavigation", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.json", "kind": "stdlib", "name": "Request.json", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.keepalive", "kind": "stdlib", "name": "Request.keepalive", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.method", "kind": "stdlib", "name": "Request.method", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.mode", "kind": "stdlib", "name": "Request.mode", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.redirect", "kind": "stdlib", "name": "Request.redirect", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.referrer", "kind": "stdlib", "name": "Request.referrer", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.referrerPolicy", "kind": "stdlib", "name": "Request.referrerPolicy", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.signal", "kind": "stdlib", "name": "Request.signal", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.text", "kind": "stdlib", "name": "Request.text", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.request.url", "kind": "stdlib", "name": "Request.url", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; typed source has no compiler bridge for this interface in either tier" }, { "id": "stdlib.response-init.headers", "kind": "stdlib", "name": "ResponseInit.headers", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: Headers, record, or sequence-of-pairs snapshot; differential evidence: fixture:static" }, { "id": "stdlib.response-init.status", "kind": "stdlib", "name": "ResponseInit.status", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: WebIDL unsigned-short conversion followed by the 200–599 range check; differential evidence: fixture:static" }, { "id": "stdlib.response-init.statusText", "kind": "stdlib", "name": "ResponseInit.statusText", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; conversion: WebIDL ByteString with HTTP reason-phrase validation; differential evidence: fixture:static" }, { "id": "stdlib.response.arrayBuffer", "kind": "stdlib", "name": "Response.arrayBuffer", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: body-consumption, promise-settlement, state-machine, error-shape; differential evidence: fixture:static" }, { "id": "stdlib.response.blob", "kind": "stdlib", "name": "Response.blob", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic fetch bridge does not implement this Response operation" }, { "id": "stdlib.response.body", "kind": "stdlib", "name": "Response.body", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.bodyUsed", "kind": "stdlib", "name": "Response.bodyUsed", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.bytes", "kind": "stdlib", "name": "Response.bytes", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: body-consumption, promise-settlement, state-machine, error-shape; differential evidence: fixture:static, fixture:static-stream" }, { "id": "stdlib.response.clone", "kind": "stdlib", "name": "Response.clone", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic fetch bridge does not implement this Response operation" }, { "id": "stdlib.response.constructor", "kind": "stdlib", "name": "Response constructor", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: webidl-conversion, body-consumption, state-machine, error-shape; supported scope: BodyInit is string, Uint8Array/Buffer, ReadableStream, null/undefined, or a checked-dynamic value that follows the supported WebIDL string conversion; ResponseInit is headers/status/statusText; differential evidence: fixture:static" }, { "id": "stdlib.response.formData", "kind": "stdlib", "name": "Response.formData", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the dynamic fetch bridge does not implement this Response operation" }, { "id": "stdlib.response.headers", "kind": "stdlib", "name": "Response.headers", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.json", "kind": "stdlib", "name": "Response.json", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: body-consumption, promise-settlement, state-machine, error-shape; differential evidence: fixture:static, fixture:static-stream" }, { "id": "stdlib.response.ok", "kind": "stdlib", "name": "Response.ok", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.redirected", "kind": "stdlib", "name": "Response.redirected", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.static.error", "kind": "stdlib", "name": "Response.error", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; Response static constructor-object operations have no compiler lowering in either tier" }, { "id": "stdlib.response.static.json", "kind": "stdlib", "name": "Response.json", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; Response static constructor-object operations have no compiler lowering in either tier" }, { "id": "stdlib.response.static.redirect", "kind": "stdlib", "name": "Response.redirect", "status": "unsupported", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; Response static constructor-object operations have no compiler lowering in either tier" }, { "id": "stdlib.response.status", "kind": "stdlib", "name": "Response.status", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.statusText", "kind": "stdlib", "name": "Response.statusText", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.response.text", "kind": "stdlib", "name": "Response.text", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: body-consumption, promise-settlement, state-machine, error-shape; differential evidence: fixture:static, fixture:static-stream" }, { "id": "stdlib.response.type", "kind": "stdlib", "name": "Response.type", "status": "dynamic-only", "code": "SC2020", "note": "Node 24.15.0 / Undici 7.24.4; the member is outside the native static handle projection" }, { "id": "stdlib.response.url", "kind": "stdlib", "name": "Response.url", "status": "static", "note": "Node 24.15.0 / Undici 7.24.4; facets: property-read; differential evidence: fixture:static" }, { "id": "stdlib.set.add", "kind": "stdlib", "name": "Set.prototype.add", "status": "static" }, { "id": "stdlib.set.clear", "kind": "stdlib", "name": "Set.prototype.clear", "status": "static" }, { "id": "stdlib.set.delete", "kind": "stdlib", "name": "Set.prototype.delete", "status": "static" }, { "id": "stdlib.set.difference", "kind": "stdlib", "name": "Set.prototype.difference", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.forEach", "kind": "stdlib", "name": "Set.prototype.forEach", "status": "static" }, { "id": "stdlib.set.has", "kind": "stdlib", "name": "Set.prototype.has", "status": "static" }, { "id": "stdlib.set.intersection", "kind": "stdlib", "name": "Set.prototype.intersection", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.isDisjointFrom", "kind": "stdlib", "name": "Set.prototype.isDisjointFrom", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.isSubsetOf", "kind": "stdlib", "name": "Set.prototype.isSubsetOf", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.isSupersetOf", "kind": "stdlib", "name": "Set.prototype.isSupersetOf", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.symmetricDifference", "kind": "stdlib", "name": "Set.prototype.symmetricDifference", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.set.union", "kind": "stdlib", "name": "Set.prototype.union", "status": "static", "note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)" }, { "id": "stdlib.string.at", "kind": "stdlib", "name": "string.prototype.at", "status": "static", "note": "the lowered call form takes 0 to 1 arguments" }, { "id": "stdlib.string.charAt", "kind": "stdlib", "name": "string.prototype.charAt", "status": "static", "note": "the lowered call form takes 0 to 1 arguments" }, { "id": "stdlib.string.charCodeAt", "kind": "stdlib", "name": "string.prototype.charCodeAt", "status": "static", "note": "the lowered call form takes 0 to 1 arguments" }, { "id": "stdlib.string.codePointAt", "kind": "stdlib", "name": "string.prototype.codePointAt", "status": "static", "note": "the lowered call form takes 0 to 1 arguments" }, { "id": "stdlib.string.endsWith", "kind": "stdlib", "name": "string.prototype.endsWith", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.includes", "kind": "stdlib", "name": "string.prototype.includes", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.indexOf", "kind": "stdlib", "name": "string.prototype.indexOf", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.isWellFormed", "kind": "stdlib", "name": "string.prototype.isWellFormed", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.padEnd", "kind": "stdlib", "name": "string.prototype.padEnd", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.padStart", "kind": "stdlib", "name": "string.prototype.padStart", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.repeat", "kind": "stdlib", "name": "string.prototype.repeat", "status": "static", "note": "the lowered call form takes exactly 1 argument" }, { "id": "stdlib.string.replace", "kind": "stdlib", "name": "string.prototype.replace", "status": "static", "note": "string patterns with primitive replacements or typed callbacks; regex forms have separate lowering" }, { "id": "stdlib.string.replaceAll", "kind": "stdlib", "name": "string.prototype.replaceAll", "status": "static", "note": "string patterns with primitive replacements or typed callbacks; regex forms have separate lowering" }, { "id": "stdlib.string.slice", "kind": "stdlib", "name": "string.prototype.slice", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.split", "kind": "stdlib", "name": "string.prototype.split", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.startsWith", "kind": "stdlib", "name": "string.prototype.startsWith", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.substring", "kind": "stdlib", "name": "string.prototype.substring", "status": "static", "note": "the lowered call form takes 0 to 2 arguments" }, { "id": "stdlib.string.toLowerCase", "kind": "stdlib", "name": "string.prototype.toLowerCase", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.toUpperCase", "kind": "stdlib", "name": "string.prototype.toUpperCase", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.toWellFormed", "kind": "stdlib", "name": "string.prototype.toWellFormed", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.trim", "kind": "stdlib", "name": "string.prototype.trim", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.trimEnd", "kind": "stdlib", "name": "string.prototype.trimEnd", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.trimLeft", "kind": "stdlib", "name": "string.prototype.trimLeft", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.trimRight", "kind": "stdlib", "name": "string.prototype.trimRight", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "stdlib.string.trimStart", "kind": "stdlib", "name": "string.prototype.trimStart", "status": "static", "note": "the lowered call form takes no arguments" }, { "id": "syntax.async-generators", "kind": "syntax", "name": "typed async generator functions and methods", "status": "static", "note": "lazy bodies with queued next/return/throw requests, await, direct yield, and Node-compatible completion promises" }, { "id": "syntax.await-using-declarations", "kind": "syntax", "name": "block- and function-scoped await using declarations", "status": "static", "note": "LIFO asynchronous disposal through [Symbol.asyncDispose], with synchronous fallback" }, { "id": "syntax.bigint-literals", "kind": "syntax", "name": "bigint literals", "status": "static", "note": "arbitrary-precision values in decimal, binary, octal, and hexadecimal spelling" }, { "id": "syntax.class-declarations-inside-functions", "kind": "syntax", "name": "class declarations inside functions", "status": "unsupported", "code": "SC1090" }, { "id": "syntax.class-expressions", "kind": "syntax", "name": "class expressions", "status": "unsupported", "code": "SC1020" }, { "id": "syntax.compound-assignment.bitwise-and", "kind": "syntax", "name": "compound assignment operator '&='", "status": "static", "note": "compiles over the operand types the '&' operator supports" }, { "id": "syntax.compound-assignment.bitwise-or", "kind": "syntax", "name": "compound assignment operator '|='", "status": "static", "note": "compiles over the operand types the '|' operator supports" }, { "id": "syntax.compound-assignment.bitwise-xor", "kind": "syntax", "name": "compound assignment operator '^='", "status": "static", "note": "compiles over the operand types the '^' operator supports" }, { "id": "syntax.compound-assignment.divide", "kind": "syntax", "name": "compound assignment operator '/='", "status": "static", "note": "compiles over the operand types the '/' operator supports" }, { "id": "syntax.compound-assignment.exponent", "kind": "syntax", "name": "compound assignment operator '**='", "status": "static", "note": "compiles over the operand types the '**' operator supports" }, { "id": "syntax.compound-assignment.minus", "kind": "syntax", "name": "compound assignment operator '-='", "status": "static", "note": "compiles over the operand types the '-' operator supports" }, { "id": "syntax.compound-assignment.plus", "kind": "syntax", "name": "compound assignment operator '+='", "status": "static", "note": "compiles over the operand types the '+' operator supports" }, { "id": "syntax.compound-assignment.remainder", "kind": "syntax", "name": "compound assignment operator '%='", "status": "static", "note": "compiles over the operand types the '%' operator supports" }, { "id": "syntax.compound-assignment.shift-left", "kind": "syntax", "name": "compound assignment operator '<<='", "status": "static", "note": "compiles over the operand types the '<<' operator supports" }, { "id": "syntax.compound-assignment.shift-right", "kind": "syntax", "name": "compound assignment operator '>>='", "status": "static", "note": "compiles over the operand types the '>>' operator supports" }, { "id": "syntax.compound-assignment.shift-right-unsigned", "kind": "syntax", "name": "compound assignment operator '>>>='", "status": "static", "note": "compiles over the operand types the '>>>' operator supports" }, { "id": "syntax.compound-assignment.times", "kind": "syntax", "name": "compound assignment operator '*='", "status": "static", "note": "compiles over the operand types the '*' operator supports" }, { "id": "syntax.debugger-statements", "kind": "syntax", "name": "debugger statements", "status": "unsupported", "code": "SC1090" }, { "id": "syntax.delete-expressions", "kind": "syntax", "name": "delete expressions", "status": "unsupported", "code": "SC1090" }, { "id": "syntax.finally-abrupt-completions", "kind": "syntax", "name": "abrupt completions through finally", "status": "static", "note": "return, throw, break, continue, and labeled jumps run crossed finally blocks; a finally completion replaces the pending one" }, { "id": "syntax.for-await-async-generators", "kind": "syntax", "name": "for await over typed async generators", "status": "static", "note": "awaits each IteratorResult and closes the generator on early break" }, { "id": "syntax.for-await-class-async-iterators", "kind": "syntax", "name": "for await over statically represented class async iterators", "status": "static", "note": "drives zero-parameter next methods returning Promise<{ value, done? }> and awaits an optional zero-parameter return method on abrupt completion" }, { "id": "syntax.for-await-readable-streams", "kind": "syntax", "name": "for await over Node Readable and Web ReadableStream values", "status": "static", "note": "closes on every abrupt completion, with destroyOnReturn and preventCancel literal options" }, { "id": "syntax.for-using-of", "kind": "syntax", "name": "for (using ... of ...) over arrays", "status": "static", "note": "each array element is disposed at the end of its iteration, including break and continue paths" }, { "id": "syntax.namespaces", "kind": "syntax", "name": "namespaces", "status": "unsupported", "code": "SC1090" }, { "id": "syntax.spread-arguments", "kind": "syntax", "name": "spread arguments", "status": "static", "note": "non-empty fixed tuples flatten into fixed signatures with evaluate-once ordering; arrays, Sets, and statically represented class iterables spread into typed rest parameters" }, { "id": "syntax.typeof-expressions", "kind": "syntax", "name": "typeof expressions", "status": "unsupported", "code": "SC1090" }, { "id": "syntax.using-declarations", "kind": "syntax", "name": "block- and function-scoped using declarations", "status": "static", "note": "LIFO disposal on normal and abrupt scope exit through [Symbol.dispose]" }, { "id": "syntax.with-statements", "kind": "syntax", "name": "'with' statements (runtime scope injection has no static resolution — bind the object to a variable and read members through it)", "status": "unsupported", "code": "SC1090" } ] }