- workspace-linked untyped dists register before the tsc gate and take the node_modules-JS island treatment (errors suppressed, out of userFiles)
- bare '.' and '..' specifiers resolve as relative directory imports (corpus 2386, coverage fixture dot-parent, SEMANTICS 362)
- TS default imports of supported builtins pass under the project's adopted interop knobs (corpus 2387)
- benign-cycle admission accepts d.ts-rooted callable arguments — promisify(fs.readFile) at a cycle member's top level (SEMANTICS 363)
- --npm-static auto probes runtime JS from the importing file's realm, not the entry's (nested-realm fixture)
- ECMA StringNumericLiteral exactly; 1M-string fuzz bit-exact against Node
- Unary + on strings and %d over strings ride the same libCall on both backends
- 50k-case oracle file under ASan; size canaries re-based one page
- StringToNumber (~1.3KB in the always-linked string TU) tipped the Mach-O static class one 16KB page: hello-world measured 336,328 before and 353,000 after, so both canary arms move to 361,000 with the under-a-page cushion kept
- order-parity baselines record the three new tonumber corpus fixtures
- num.fromString rides both backends: the C emitter case and the LLVM declare table entry (declare double @scr_string_to_number(ptr), the C prototype exactly)
- Number(string) retires its fence; the union hint now points at narrowing (numbers, booleans, and strings lower)
- unary + on string operands and util.format %d string arguments take the same libCall
- corpus 2387 (argv-style CLI parsing), 2388 (the grammar zoo edge by edge), 2389 (+str idioms and %d) — differential-verified on both backends
- scr_string_to_number: ECMA-262 StringNumericLiteral exactly — StrWhiteSpace trim (empty → +0), signed decimals through strtod over the validated span, unsigned 0x/0o/0b through the exact bignum rounding, trailing garbage → NaN
- oracle suite mirrors the formatting precedent: gen-tonumber-cases.mjs (Node is the oracle), 50k committed cases asserting bit-equal doubles under ASan + RC audit
- fuzzed once against Node on 1,000,000 mixed-shape strings: 1000000/1000000 bit-exact
- Unique per-lane binary basenames end the shared-scratch race behind the CI failures
- Two latent emitter declare mismatches fixed; a header-parsed ABI guard test pins the class
- One interned helper walks the UTF-16 cursor; astral characters stay whole
- Both spellings share the lowering; corpus 2386 pins both backends against Node
- fs corpus programs derive scratch paths from tail(process.argv[1]); both native lanes were named "program" and run concurrently, so they raced on the same scratch tree
- reproduced locally by racing the two same-named binaries (6-9 of 10 runs diverge); distinct basenames run clean
- explains the seven fs/path failures of CI run 29965245855, including a C-lane empty stdout no LLVM codegen bug could produce
- the basename also carries the flavor so a plain and sanitized full run cannot collide either
- fsp.readFile now passes only the path: the C prototype has no encoding parameter, so the generic path declared an argument the runtime never had
- net.serverAddress: family is a +1 ScrStr* ("IPv4"/"IPv6"), not a double — the declare, call, and field store all read it through the wrong register class
- new llvm-runtime-abi test parses scr_runtime.h and cross-checks every literal backend declare plus every declare emitted for an fs/path corpus slice
- A type-error stop prints the same code frames a build prints
- The import-site stop renders its diagnostics below the blocker table
- Coverage is the first command reached for; the verdict line alone swallowed the fix