324 lines · 32.1 KB · Markdown
RawDownload

Node.js Compatibility Status

This document is the source of truth for AgentOS Node.js compatibility test coverage, known failures, deferred limitations, and validation history. Update it whenever a fixture, runtime behavior, package-manager workflow, or relevant nightly gate changes.

Status vocabulary

Status Meaning
passing The latest isolated rerun matches host Node behavior.
open Deterministic incompatibility or harness defect that should be fixed.
environmental Failure was caused by missing prerequisites or runner load; the test remains required.
upstream The published package is defective on host Node too, so runtime compatibility cannot be evaluated.
blocked-native The package requires an unsupported native/N-API addon and has no usable JavaScript/WASM fallback.
deferred Valid compatibility work, explicitly postponed with a recorded reason.
fixed-awaiting-rerun A fix exists but has not completed the full validation sequence.

blocked-native is not a generic escape hatch. Record the exact addon, prove that the exercised path loads it, and check for a maintained pure JavaScript or WASM alternative before using this status.

Latest baseline

Baseline date: 2026-07-19
Revision: change ymrvvnlu on bookmark node-ecosystem
Base: main / 9d24346f
Runtime: Node.js 24.17.0, pnpm 10.13.1; pinned Yarn CLIs are fixture dependencies, while Bun and global Yarn remain unavailable on this host
Browser runtimes: intentionally excluded

Surface Result Status Notes
Workspace build 54/54 tasks passing The full non-browser root build, including OpenCode and agent software packaging, passed.
Workspace typecheck 76 tasks passed before shared-workspace cleanup environmental The full check was invalidated when another session removed root/package node_modules and target/debug during execution. Focused runtime-core and core typechecks pass after restoring dependencies; browser packages remain excluded.
Default runtime-core Vitest 292 passed, 1 failed, 1 skipped environmental The sole complete-run failure was the WASM abstract Unix-socket test reaching its 30-second outer timeout under shared-runner load. The exact case passed in 4.02s in isolation; all 25 child-process tests and the remaining networking/runtime cases passed in the complete run.
Full ecosystem catalog 87 passed, 6 skipped passing Final clean rerun completed in 773.69s across 92 fixtures plus discovery. All 86 executable fixture contracts are green, including Vitest/Mocha, Vite/Rollup, npm/pnpm/Yarn, TypeScript and developer CLIs, WebSockets, Vercel and agent SDKs, Prisma, Supabase, Browse CLI, Astro, Next.js, and explicit native-failure contracts.
npm workflows 27/27 passed passing Final clean rerun completed in 395.41s. npm install/list/init/scripts/lifecycle, npx package execution, pipes, concurrently, and a clean Next production build all pass.
Secure WebSocket regression 1/1 passed passing A guest ws client exchanges a message with a host wss:// endpoint. Empty SNI on an IP target now uses the connection host as the rustls identity without emitting SNI.
Non-browser Rust workspace check pass passing cargo check --workspace passes with both browser sidecars excluded.
Runtime accounting soak 1/1 passing No accounting or scheduler drift.
Native multi-VM fault soak 0/1 open Node import-cache materialization exceeded 30 seconds.
Fixed product versions pass passing All 20 checked package/Cargo manifests remain pinned to 0.0.1.
Nightly workflow YAML parse pass passing The nightly workflow parses and includes both opt-in Node matrices.
Post-rebase focused validation all focused checks passing On current main, real Vitest and ws parity, four npm workflow cases, npm-bin realpath behavior, runtime-core typechecking, targeted Cargo checking, Rust formatting, fixed versions, mirror generation, JSON, and nightly YAML all pass.

Ecosystem catalog

The full catalog runs every fixture through host Node and AgentOS, then compares exit code, stdout, and stderr. A green installation alone is not compatibility.

Passing fixtures

Fixture Coverage
astro-pass Real Astro build using the catalog's JavaScript/WASM-compatible toolchain path
async-exit-code-pass Exit status retained after asynchronous work drains
axios-pass HTTP client and response handling
bcryptjs-pass Pure-JavaScript password hashing
browserbase-browse-cli-pass Installed Browserbase Browse CLI execution and command/help discovery without launching a browser runtime
chalk-pass CommonJS package and terminal formatting
child-process-ipc-pass fork() startup buffering, IPC liveness, reply, disconnect, and termination
cli-toolkit-pass Commander, Yargs, bounded Execa sync execution, Ora, Glob, and Fast Glob behavior
crypto-random-pass Node crypto random APIs
dotenv-pass Environment-file parsing
drizzle-pass Drizzle ORM package loading/query construction
esm-import-pass Basic ESM loading
express-pass HTTP server lifecycle
fastify-pass HTTP server lifecycle
fs-metadata-rename-pass Metadata and rename behavior
hono-node-server-pass Hono Node server adapter
ioredis-pass Redis client package loading and offline behavior
jsonwebtoken-pass JWT signing and verification
lodash-es-pass ESM-only utility package
mocha-pass Real Mocha CLI discovery, hooks, synchronous tests, and asynchronous tests
module-access-pass Projected module access and transitive loading
mysql2-pass MySQL client package loading and protocol helpers
net-create-server-pass Node TCP listener behavior
node-fetch-pass Fetch client behavior
npm-layout-pass npm dependency layout
nextjs-pass Real Next.js production build and emitted manifest/page artifacts
optional-deps-pass Optional dependency resolution
pg-pass Pure-JavaScript PostgreSQL client path (pg, not pg-native)
pino-pass Structured logging
pnpm-layout-pass pnpm symlink/store layout
pnpm-cli-pass pnpm 10.13.1 CLI startup and exact version output
prisma-pass Prisma 7 generated client, Decimal/SQL utilities, and pure-JavaScript PostgreSQL driver adapter path
require-main-pass CommonJS entrypoint require.main and module.id === "." semantics
rollup-wasm-cli-pass Real Rollup CLI bundling and tree shaking through the official WASM build
semver-pass Version parsing and ranges
ssh2-pass SSH protocol package loading
ssh2-sftp-client-pass SFTP client package loading
supabase-pass Supabase query construction and an authenticated REST exchange against a local server
uuid-pass UUID generation
vite-pass Core Vite/Rollup JavaScript production bundle
vitest-pass Real Vitest CLI with Vite 7 and WASM Rollup: two files, hooks, async tests, and inline snapshots
ws-pass ws client/server behavior plus Node's global WHATWG WebSocket, including text and binary echo
yaml-pass YAML parsing and serialization
yarn-classic-cli-pass Yarn Classic 1.22.22 CLI startup and exact version output
yarn-modern-cli-pass Yarn Modern 4.17.1 CLI startup and exact version output
zod-pass Schema parsing and validation

The grouped agent-use fixtures add meaningful behavioral coverage for these packages:

Fixture Packages exercised
agent-frameworks-pass e2b, @e2b/code-interpreter, @mastra/core, effect, @slack/web-api, @slack/bolt
agent-sdks-pass openai, @anthropic-ai/sdk, @modelcontextprotocol/sdk, langchain, googleapis, octokit
archives-agent-pass jszip, archiver, fflate
crypto-agent-pass jose, openpgp, libsodium-wrappers, tweetnacl
databases-agent-pass postgres, mongodb, redis, @libsql/client remote/web path, @aws-sdk/client-s3
developer-clis-pass Prettier, ESLint, webpack/webpack-cli, Babel, Terser, rimraf, cross-env, json, manypkg, and Madge with real formatting, fixing, bundling, transforming, minifying, removal, child-env, JSON editing, monorepo checking, and graph-generation behavior
documents-agent-pass pdf-lib, mammoth, exceljs
http-clients-agent-pass undici, got, ky, superagent, Socket.IO polling and forced WebSocket transports
images-agent-pass jimp, pngjs, jpeg-js
parsing-agent-pass cheerio, linkedom, marked, markdown-it, csv-parse, fast-xml-parser, protobufjs, ajv
typescript-cli-pass TypeScript 6 compiler CLI producing JavaScript from a real project
vercel-ai-pass AI SDK core, OpenAI/Anthropic/Gateway providers, React/ReactDOM server rendering, and Workflow
vercel-platform-pass Vercel Blob, Edge Config, Express/Fastify/Hono adapters, current and legacy Flags, Functions, NFT, OG, OIDC, OpenTelemetry, Sandbox, and a representative SDK operation module

Deferred, open, and native-service probes

Fixture Status Latest failure Next action
node-test-runner-blocked open AgentOS does not currently expose the core node:test module. Implement the Node test-runner builtin; this is a runtime compatibility gap, not a native-addon limitation.
nextjs-turbopack-blocked blocked-native Next 16 Turbopack attempts the platform SWC .node addons and then requires node:worker_threads; the staged SWC WASM fallback is insufficient for Turbopack. Retain the exact expected-failure contract. The non-Turbopack Next production build remains passing.
jest-native-resolver-blocked blocked-native Jest 30.4.2 delegates module resolution to unrs-resolver 1.12.2, whose supported Node path loads a platform N-API .node binding. Host Node runs the real Jest test; AgentOS fails the explicit native-resolver contract. Retain the expected-failure contract until Jest or unrs-resolver offers a usable non-native Node path.
vite-react-esbuild-blocked deferred Vite's React build requires the esbuild native service executable and does not settle in the JavaScript-only VM. Retain as an explicit expected-failure contract; core Vite/Rollup coverage remains passing in vite-pass.
vitest-default-rolldown-native-blocked blocked-native Vitest's current default dependency graph uses Vite 8/Rolldown and loads rolldown-binding.linux-x64-gnu.node. Keep the native failure contract. Supported Vitest uses Vite 7 plus @rollup/wasm-node in vitest-pass.
rollup-native-blocked blocked-native Rollup's default Linux package loads its platform native binding. Keep the native contract and use the passing official WASM Rollup path where native code is unavailable.
tsx-esbuild-native-blocked open The public tsx/esm/api path first reaches unsupported module.register() loader hooks; esbuild's native service is a downstream limitation. Implement public Node loader-hook behavior before reclassifying the remaining esbuild dependency.
tsup-esbuild-native-blocked blocked-native The real tsup CLI reaches native Rollup/esbuild tooling. Retain the expected-failure contract while the individual TypeScript compiler and WASM Rollup paths remain passing.
swc-native-blocked blocked-native @swc/core loads a platform .node binding. Retain the expected-failure contract; Next's separately staged SWC WASM production build passes.
biome-native-blocked blocked-native Biome's CLI is a platform-native executable. Retain the expected-failure contract.
turbo-native-blocked blocked-native Turbo's CLI is a platform-native executable. Retain the expected-failure contract.
vercel-sdk-root-large-graph-blocked deferred The @vercel/sdk root barrel expands a 43 MiB, 4,117-file generated ESM graph and exceeds the bounded 120-second import window. Improve very-large-graph loading. A representative @vercel/sdk/sdk/user.js operation module already passes.

Catalog skips

Fixture Status Reason
bun-layout-pass environmental Bun is unavailable on this validation host.
yarn-berry-layout-pass environmental Yarn is unavailable on this validation host.
yarn-classic-layout-pass environmental Yarn is unavailable on this validation host.
pg-native-blocked environmental The host addon links a newer glibc/libpq ABI, so host-success/guest-failure parity cannot be established on this runner.
vercel-mcp-adapter-upstream-blocked upstream Published @vercel/mcp-adapter@0.3.2 contains metadata but no resolvable root implementation or entrypoint, including on host Node.
vercel-sdk-root-large-graph-blocked deferred The bounded root-barrel import is intentionally skipped; representative SDK operation-module coverage passes.

Recently repaired blockers

Surface Status Evidence
workspace-layout-pass passing Full host/AgentOS parity passes with scoped workspace-symlink target mounts.
jsdom-pass passing Full parity passes with synchronous require(esm) plus Node-compatible buffer.isAscii/isUtf8.
Socket.IO WebSocket upgrades passing Standalone ws, Socket.IO polling, and forced websocket ping/ack pass in the full catalog.
Node global WebSocket passing A WHATWG/EventTarget adapter over the proven sidecar-backed ws transport passes a real text-echo parity test; the underlying ws fixture also covers binary echo.
Secure WebSockets over TLS passing The dedicated host/guest wss:// exchange passes; IP endpoints preserve empty-SNI behavior while using the host as rustls's handshake identity.
OpenPGP default password S2K passing The unmodified upstream default passes through bounded incremental host hash sessions in the full catalog.
Large synchronous file reads passing Next's 41.8 MiB SWC WASM is transferred in bounded raw pathname ranges instead of one amplified 55.7 MiB response.
Next.js production builds passing The fixture pre-stages Next's official SWC WASM fallback, runs a clean production build, and verifies build/page/API manifests and compiled output.
CommonJS main-module semantics passing Direct CommonJS entrypoints set require.main, process.mainModule, a null parent, and module.id === ".".
Async process.exitCode passing Exit status is re-read after active handles and pending module evaluation drain.
Child-process IPC passing Pre-listener messages are bounded and buffered, IPC keeps the process alive only with listeners, kill wakes the event pump, and disconnect/exit complete.
CommonJS/ESM default interop passing require(esm) now supplies Node's __esModule marker when a default export exists, fixing E2B's bundled Chalk interop.
util.promisify(execFile) passing Node's global custom-promisifier symbol is honored and execFile resolves { stdout, stderr }, allowing Browse CLI execution.
Package export specificity passing Overlapping wildcard exports prefer the more specific pattern, so generated SDK paths no longer resolve with duplicated .js suffixes.
Crypto named exports passing The ESM export inventory matches the implemented crypto surface, including cipher, DH, curve, prime, and RSA helpers required by Vercel Flags.
CLI stdio EventEmitter surface passing stdout/stderr now expose prepend/remove/listener APIs required by Yarn Classic.
Nested CommonJS dynamic imports passing Dynamic imports made while loading a nested CommonJS module resolve against that module instead of the synthetic entry resource; webpack-cli 6 now bundles successfully.
Relative synchronous CLI file I/O passing readFileSync and writeFileSync resolve relative paths against the child process cwd, allowing Terser and similar CLIs to operate on ordinary relative filenames.
Builtin ESM export inventory passing fs.realpath, fs.rmdir/rmdirSync, node:constants file constants, and util.styleText are available to current CLI dependency graphs.

Native/N-API negative coverage

These fixtures are green only when host Node loads the native path and AgentOS fails with the expected unsupported-addon signature: sharp, canvas, @napi-rs/canvas, better-sqlite3, sqlite3, bcrypt, argon2, Jest 30's unrs-resolver, the pdfjs-dist Node canvas path, the @libsql/client local-file path, native Rollup/Rolldown, SWC, Biome, Turbo, and tsup's native build path. pg-native is separately skipped because this runner's host addon links a newer glibc/libpq ABI, so a valid host-success baseline cannot be established. This does not apply to the popular pure-JavaScript pg or postgres packages: both pass in the catalog.

npm workflow status

Package-manager CLI coverage

Manager Status Automated evidence
npm passing The 27-case npm workflow suite covers npm --version, npx --version, init, online install/list, scripts, lifecycle hooks, pipes, and package execution.
pnpm 10.13.1 passing pnpm-cli-pass executes the installed CLI in AgentOS and compares exact version output with host Node. pnpm 11 currently requires Node >=22.13 while the guest advertises 22.0.0.
Yarn Classic 1.22.22 passing yarn-classic-cli-pass executes the installed CLI with exact host parity.
Yarn Modern 4.17.1 passing yarn-modern-cli-pass executes the current bundled CLI distribution with exact host parity.
Issue Status Affected coverage Evidence / next action
npm/npx shell launcher passing npm and npx commands Shell shims now resolve to the real npm CLI package root instead of projecting the shim as the package.
npm extraction on mapped files passing npm install, npx -y Mapped host fds now support futimes, and write backpressure classification no longer sends mapped fds to the kernel table.
npm lifecycle and scripts passing pre/postinstall, npm run, env propagation, shell operators All automated cases pass.
npm online workflows passing install/list/execute left-pad, npx semver and cowsay All automated cases pass with registry access.
npm .bin main-module symlinks passing npx semver, npx cowsay, package CLIs Child Node processes dereference the main-module symlink before module evaluation, so __dirname and relative package loads match Node. A focused regression loads ../package.json from a symlinked package bin.
Default writable cwd passing npm init -y with the in-memory compatibility filesystem /workspace is now owned by uid/gid 1000 in both compatibility bootstraps, matching the product base filesystem and the default agent user.
Next.js focused build passing dedicated npm workflow A clean production build uses the official SWC WASM fallback and verifies .next/build-manifest.json, page/API manifests, and compiled artifacts.
Cold online workflow deadlines passing npx download/extract, install+list, unreachable-registry error Outer test allowances now cover their bounded sequential phases; the full 27-case matrix passes.

Rust/native runtime failures

Area / target Status Latest failure Next action
Native root mount (agentos-client) open Relative guest write to /workspace/relative.txt is denied. Repair writable native-root path mapping and permissions.
WASM execution open 64 KiB stack limit cannot be enforced by V8; recursion watchdog expires. Make the configured limit enforceable or reject it at configuration time with a supported minimum.
WASM path_open flags open Directory/nofollow lookup flags are dropped before kernel conversion. Preserve WASI lookup flags through the host import.
Projected WASM modules open /identity.wasm, /signal-state.wasm, /entry.wasm, and service test modules resolve as ENOENT. Fix execution-source projection/permission path resolution.
Python/VFS sharing open /workspace/new.txt is absent after Python writes it. Repair Python shadow-to-kernel write synchronization.
JS bridge reads open Missing stat payload becomes EIO; bounded reads expect EINVAL. Return typed stat/read errors and payloads from the bridge.
Limits inventory open 19 constants are unclassified. Add typed configuration or documented invariant/deferred inventory entries.
Binding registry bound open Capacity rejection uses untyped invalid_state. Return a structured resource-limit error naming the limit and override path.
Native stdio termination open Closing a required response/control ingress stream does not fail the sidecar. Enforce the three-lane terminal contract.
Node server close open Listener teardown enters close drain gate in the wrong order. Complete listener teardown asynchronously before drain completion.
ObjectS3 tests deferred Three active tests expect unsupported xattrs, special inodes, and atime behavior. Either implement the dormant backend or consistently ignore it with the existing dormant-ObjectS3 reason.
xfstests correctness environmental 29 tests fail because XFSTESTS_ROOT is absent. Provision the pinned xfstests tree in the expensive gate or skip with a typed prerequisite reason.
Multi-VM fault soak open Node import-cache materialization exceeds its 30-second bound. Determine whether this is contention-only; retain the bound and fix cache/materialization progress if reproducible in isolation.
Node test runner open node:test is not registered as a supported builtin. Implement the core test-runner module; do not classify it as a native blocker.
ESM loader registration open module.register() is unavailable, blocking tsx's public ESM API before its esbuild path is reached. Implement bounded loader registration compatible with Node's public API.

Build and harness issues

Issue Status Next action
Incomplete generated toolchain/vendor accepted as valid open Validate required files/checksum or revendor automatically instead of checking directory existence.
OpenCode inherits nonexistent Corepack node-gyp open Provision a repository-owned node-gyp path for nested Bun lifecycle scripts.
Fixed-version verifier scans generated ecosystem caches passing Generated .cache trees are excluded and covered by a regression test.
Runtime integration watchdogs under host contention environmental Rerun in isolation; improve diagnostics and prevent unhandled teardown rejections after timeout.
Temporary test tools removed from /tmp/agentos-* environmental Keep long-lived test runtimes in a persistent cache path and avoid broad cleanup collisions.
Node 22+ synchronous require(esm) interop passing Synchronous ESM graphs load as namespace objects; graphs with top-level await fail with ERR_REQUIRE_ASYNC_MODULE. jsdom 29 passes focused parity.
Default OpenPGP password S2K exceeds bridge request accounting passing Incremental hash sessions keep every update bounded and the catalog now exercises the unmodified OpenPGP default.
Loaded integration harness deadlines passing Pipe, shim, dispose, and WASI-spawn files retain their runtime assertions while outer test windows cover setup and idempotent teardown. Full runs can still report environmental starvation when unrelated builds saturate the shared host; every affected file passes in isolation.
Current wrapper/watcher CLIs deferred dotenv-cli 11 loses its loaded env when handing off to the child, nodemon 3 does not complete the crash-supervision contract, and zx 8 observes the snapshot-default require("process").argv. Track these as process-module/child-supervision gaps before promoting them to passing fixtures.
ts-node 10 deferred File execution eagerly imports the restricted interactive node:repl module and Node-private Module hooks. The public TypeScript 6 compiler CLI passes; do not weaken the REPL security contract just to admit ts-node.
Babel 8 CLI deferred The current ESM/Commander CLI does not retain its first positional argument in the guest execution path. Babel 7.29.7 has full transform parity and remains the admitted behavioral fixture.
Execa async execution open The new catalog proves bounded execaSync; the asynchronous Execa path did not complete reliably during probe development.

Candidate expansion catalog

Candidates must exercise meaningful behavior rather than only require() the package. Research and implementation status will be maintained here.

Category Candidate packages Status
PDF/document pdf-lib, pdfjs-dist, mammoth, exceljs added
Images jimp, pngjs, jpeg-js added
Archives/compression jszip, archiver, fflate added
Databases/servers postgres, mongodb, redis, @libsql/client, @aws-sdk/client-s3 added
HTTP/API clients undici, got, ky, superagent, socket.io added
Crypto/auth jose, openpgp, libsodium-wrappers, tweetnacl added
Parsing/data formats cheerio, jsdom, linkedom, marked, markdown-it, csv-parse, fast-xml-parser, protobufjs, ajv added
Agent/LLM tooling openai, @anthropic-ai/sdk, @modelcontextprotocol/sdk, langchain, googleapis, octokit added
Vercel/AI platform ai, @ai-sdk/openai, @ai-sdk/anthropic, @ai-sdk/gateway, workflow, React/ReactDOM, and Vercel's Node server packages added; Turbopack and the SDK root barrel are explicitly deferred
Agent frameworks e2b, @e2b/code-interpreter, @mastra/core, effect, @slack/web-api, @slack/bolt added
Database platforms @prisma/client, @prisma/adapter-pg, @supabase/supabase-js added
Browser automation CLI Browserbase browse CLI added; CLI-only because browser runtimes are outside AgentOS scope
Package managers npm, pnpm 10, Yarn Classic, Yarn Modern added; npm has the deep 27-workflow suite and the others have direct installed-CLI parity fixtures
Test/build tooling Vitest, Mocha, Vite, Rollup WASM, TypeScript added; default Vitest/Rolldown, native Rollup, tsup, tsx loader hooks, SWC, Biome, and Turbo have explicit blocker contracts
CLI foundations Commander, Yargs, Execa sync, Ora, Glob, Fast Glob added; asynchronous Execa completion remains open
Developer CLIs Prettier, ESLint, webpack/webpack-cli, Babel, Terser, rimraf, cross-env, json, manypkg, Madge, TypeScript added with behavioral checks; Jest 30 is an explicit N-API blocker, while dotenv-cli, nodemon, zx, ts-node, and Babel 8 remain tracked deferred candidates
Native-addon negative coverage sharp, canvas, @napi-rs/canvas, better-sqlite3, sqlite3, pg-native, bcrypt, argon2, pdfjs-dist's Node canvas path, @libsql/client's local file path, Rollup/Rolldown, SWC, Biome, Turbo added

The database catalog deliberately includes both pg (already passing) and postgres: both have supported pure-JavaScript paths. pg-native is tracked separately because it explicitly selects a native binding. Native-package classification is backed by explicit host-success/guest-failure fixtures; pg-native remains the sole host-ABI prerequisite skip.

Prisma coverage deliberately uses Prisma 7's JavaScript query compiler and @prisma/adapter-pg; it does not claim support for Prisma's native Rust engine paths. Supabase's REST client path passes, and WebSocket behavior is covered by an actual global WebSocket echo. The deprecated @vercel/flags package and its current flags replacement are both covered. Deprecated @vercel/postgres and @vercel/kv were not promoted because pg, postgres, Redis clients, Prisma, and Supabase already cover the maintained paths. Browser-only Vercel analytics packages remain excluded by the repository's Node-only runtime policy.

Rerun commands

# Default TypeScript/runtime surface (browser packages remain excluded)
pnpm check-types
AGENTOS_E2E_NETWORK=1 pnpm --dir packages/runtime-core test

# Full package ecosystem and package-manager workflows
pnpm --dir packages/runtime-core test:ecosystem:full
pnpm --dir packages/runtime-core test:npm-workflows

# Complete non-browser Rust surface
cargo test --workspace \
  --exclude agentos-sidecar-browser \
  --exclude agentos-native-sidecar-browser \
  --no-fail-fast -- --test-threads=1

# Explicit ignored churn gates
cargo test -p agentos-runtime \
  multi_vm_generation_soak_has_no_accounting_or_scheduler_drift \
  --lib -- --ignored --test-threads=1
cargo test -p agentos-native-sidecar --test service \
  multi_vm_protocol_faults_reconcile_shared_runtime_soak \
  -- --ignored --test-threads=1

Validation history

Date Revision Summary
2026-07-18 ymrvvnlu / 63f710d8 Established post-main baseline; enabled the full ecosystem and npm workflow gates in nightly; recorded 9 ecosystem failures, 17 npm failures, and 13 failing Rust targets.
2026-07-19 ymrvvnlu Expanded the catalog to 61 fixtures, added agent-oriented and native-negative coverage, fixed conditional/peer/transitive layouts, RivetKit, SSE, npm/npx launch and extraction, and reached 27/27 npm workflows with the full catalog green under its explicit pass/fail/skip contracts.
2026-07-19 ymrvvnlu / c965ae5b Fixed standalone and Socket.IO WebSockets, workspace links, OpenPGP defaults, synchronous require(esm), jsdom, and bounded large-file reads; retained Astro/Next/Vite as explicit deferred framework-build probes pending the full rerun.
2026-07-19 ymrvvnlu / 9d98be76 Completed the full catalog at 58 passed/4 skipped and npm workflows at 27/27; confirmed WebSocket and forced Socket.IO upgrades; fixed aggregate cold-install, Next wrapper, npm online, and loaded integration harness deadlines; passed build, typecheck, non-browser Cargo check, focused Rust interop/bridge tests, fixed-version verification, and nightly YAML parsing.
2026-07-19 ymrvvnlu Finalized 66 catalog cases at 62 passed/4 skipped and reran all 27 npm workflows; fixed Next production builds, CommonJS main-module semantics, async exit codes, child IPC lifecycle, and secure WebSocket IP/SNI handling; retained only explicit native-addon, esbuild-service, or unavailable-tool skips.
2026-07-19 ymrvvnlu Expanded to 75 catalog cases at 69 passed/6 skipped and reran all 27 npm workflows; added Vercel AI/platform, React, Workflow, E2B, Mastra, Effect, Slack, Prisma, Supabase, Browse CLI, and Turbopack contracts; fixed global WebSocket, ESM interop, promisification, package-export specificity, URL/random APIs, crypto exports, and safe inspector loading.
2026-07-19 ymrvvnlu Expanded to 80 fixtures: 74 executable contracts passed and 6 skipped (75 passed/6 skipped including discovery); reran all 27 npm workflows; added pnpm, Yarn Classic/Modern, TypeScript, 10 behavioral developer CLIs, and Jest 30 native-resolver coverage; fixed CLI stdio, nested-CJS dynamic imports, relative sync file I/O, builtin ESM exports, explicit nonzero pass contracts, and the inspector regression assertion. Workspace typecheck passed 146/146 tasks.
2026-07-19 ymrvvnlu Expanded to 92 fixtures: 86 executable contracts passed and 6 skipped (87 passed/6 skipped including discovery) in 773.69s; reran all 27 npm workflows in 395.41s; added real Vitest and Mocha suites, WASM/native Rollup contracts, common CLI foundations, Node test-runner and modern native-tool blockers; fixed npm-bin symlink main resolution, writable workspace ownership, relative child filesystem behavior, and late execution teardown.
2026-07-19 ymrvvnlu / base 9d24346f Rebased onto current main, carried the expensive-suite rename to *.nightly.test.ts, and reran focused Vitest, WebSocket, npm-init/npx, npm-bin, typecheck, Cargo, formatting, manifest, mirror, and workflow gates successfully.