@nimbus-sh/worker 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/NOTICE.md +6 -0
- package/README.md +38 -3
- package/dist/_shared/cache-stats.d.ts +1 -1
- package/dist/_shared/cache-stats.js +1 -1
- package/dist/_shared/exports-resolver.d.ts +0 -2
- package/dist/_shared/exports-resolver.d.ts.map +1 -1
- package/dist/_shared/exports-resolver.js +0 -2
- package/dist/_shared/session-id.d.ts +10 -8
- package/dist/_shared/session-id.d.ts.map +1 -1
- package/dist/_shared/session-id.js +13 -12
- package/dist/_shared/session-router.d.ts +0 -1
- package/dist/_shared/session-router.d.ts.map +1 -1
- package/dist/_shared/session-router.js +0 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +1 -1
- package/dist/auth/types.d.ts +2 -1
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js +4 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +0 -1
- package/dist/facets/cirrus-real.d.ts +1 -1
- package/dist/facets/cirrus-real.js +1 -1
- package/dist/facets/manager.d.ts +0 -1
- package/dist/facets/manager.d.ts.map +1 -1
- package/dist/facets/manager.js +3 -15
- package/dist/facets/process.d.ts +2 -2
- package/dist/facets/process.js +2 -2
- package/dist/facets/vite-dev-server.d.ts +3 -3
- package/dist/facets/vite-dev-server.d.ts.map +1 -1
- package/dist/facets/vite-dev-server.js +6 -8
- package/dist/facets/wasm-swap-registry.d.ts +15 -21
- package/dist/facets/wasm-swap-registry.d.ts.map +1 -1
- package/dist/facets/wasm-swap-registry.js +41 -54
- package/dist/facets/ws-terminal.d.ts +4 -5
- package/dist/facets/ws-terminal.d.ts.map +1 -1
- package/dist/facets/ws-terminal.js +7 -8
- package/dist/git/commands.d.ts.map +1 -1
- package/dist/git/commands.js +0 -1
- package/dist/git/network-facet.d.ts.map +1 -1
- package/dist/git/network-facet.js +0 -2
- package/dist/git-bundle.generated.d.ts +0 -1
- package/dist/git-bundle.generated.d.ts.map +1 -1
- package/dist/git-bundle.generated.js +0 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/loaders/child-process/spawn-facet.d.ts +7 -52
- package/dist/loaders/child-process/spawn-facet.d.ts.map +1 -1
- package/dist/loaders/child-process/spawn-facet.js +7 -49
- package/dist/loaders/child-process/spawn-pool.d.ts +5 -44
- package/dist/loaders/child-process/spawn-pool.d.ts.map +1 -1
- package/dist/loaders/child-process/spawn-pool.js +5 -44
- package/dist/loaders/fanout-pool.d.ts +18 -65
- package/dist/loaders/fanout-pool.d.ts.map +1 -1
- package/dist/loaders/fanout-pool.js +25 -87
- package/dist/loaders/generated-workers.d.ts +1 -2
- package/dist/loaders/generated-workers.d.ts.map +1 -1
- package/dist/loaders/generated-workers.js +3 -4
- package/dist/loaders/loader-pool.d.ts +1 -2
- package/dist/loaders/loader-pool.d.ts.map +1 -1
- package/dist/loaders/loader-pool.js +1 -1
- package/dist/loaders/npm-resolve-preamble.d.ts +4 -5
- package/dist/loaders/npm-resolve-preamble.d.ts.map +1 -1
- package/dist/loaders/npm-resolve-preamble.js +14 -21
- package/dist/loaders/pre-bundle-preamble.d.ts.map +1 -1
- package/dist/loaders/pre-bundle-preamble.js +0 -1
- package/dist/npm/cache.js +1 -1
- package/dist/npm/install-batch-facet.d.ts.map +1 -1
- package/dist/npm/install-batch-facet.js +7 -12
- package/dist/npm/installer.d.ts +5 -7
- package/dist/npm/installer.d.ts.map +1 -1
- package/dist/npm/installer.js +20 -101
- package/dist/npm/r2-cache.d.ts +17 -29
- package/dist/npm/r2-cache.d.ts.map +1 -1
- package/dist/npm/r2-cache.js +16 -27
- package/dist/npm/resolve-facet.d.ts +11 -17
- package/dist/npm/resolve-facet.d.ts.map +1 -1
- package/dist/npm/resolve-facet.js +14 -28
- package/dist/npm/resolve-one-facet.d.ts +10 -13
- package/dist/npm/resolve-one-facet.d.ts.map +1 -1
- package/dist/npm/resolve-one-facet.js +8 -10
- package/dist/npm/resolver.d.ts +0 -2
- package/dist/npm/resolver.d.ts.map +1 -1
- package/dist/npm/resolver.js +0 -12
- package/dist/observability/oom-discriminator.d.ts +0 -2
- package/dist/observability/oom-discriminator.d.ts.map +1 -1
- package/dist/observability/oom-discriminator.js +0 -2
- package/dist/replica/routing.js +1 -1
- package/dist/router/index.d.ts +6 -2
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +4 -0
- package/dist/router/remote-api.d.ts +44 -0
- package/dist/router/remote-api.d.ts.map +1 -0
- package/dist/router/remote-api.js +333 -0
- package/dist/runtime/barrel-synthesizer.js +1 -1
- package/dist/runtime/clang-runner.d.ts +5 -6
- package/dist/runtime/clang-runner.d.ts.map +1 -1
- package/dist/runtime/clang-runner.js +5 -6
- package/dist/runtime/esbuild-service.d.ts.map +1 -1
- package/dist/runtime/esbuild-service.js +0 -3
- package/dist/runtime/framework-detect.d.ts +0 -1
- package/dist/runtime/framework-detect.d.ts.map +1 -1
- package/dist/runtime/framework-detect.js +0 -1
- package/dist/runtime/node-runner.d.ts +1 -1
- package/dist/runtime/node-runner.js +1 -1
- package/dist/runtime/node-shims.d.ts.map +1 -1
- package/dist/runtime/node-shims.js +0 -22
- package/dist/runtime/package-manager.d.ts +2 -7
- package/dist/runtime/package-manager.d.ts.map +1 -1
- package/dist/runtime/package-manager.js +2 -7
- package/dist/runtime/process-logs-api.js +1 -1
- package/dist/runtime/process-logs.d.ts +0 -1
- package/dist/runtime/process-logs.d.ts.map +1 -1
- package/dist/runtime/process-table.d.ts +2 -2
- package/dist/runtime/process-table.d.ts.map +1 -1
- package/dist/runtime/process-table.js +1 -1
- package/dist/runtime/python-repl.d.ts +0 -1
- package/dist/runtime/python-repl.d.ts.map +1 -1
- package/dist/runtime/python-repl.js +0 -1
- package/dist/runtime/python-runner.d.ts +1 -2
- package/dist/runtime/python-runner.d.ts.map +1 -1
- package/dist/runtime/python-runner.js +1 -3
- package/dist/runtime/repl-session.d.ts +0 -1
- package/dist/runtime/repl-session.d.ts.map +1 -1
- package/dist/runtime/repl-session.js +1 -2
- package/dist/runtime/require-resolver.d.ts.map +1 -1
- package/dist/runtime/require-resolver.js +1 -4
- package/dist/runtime/ruby-runner.d.ts +0 -1
- package/dist/runtime/ruby-runner.d.ts.map +1 -1
- package/dist/runtime/ruby-runner.js +0 -1
- package/dist/runtime/runtime-catalog.d.ts +2 -4
- package/dist/runtime/runtime-catalog.d.ts.map +1 -1
- package/dist/runtime/runtime-catalog.js +2 -4
- package/dist/runtime/runtime-registry.d.ts +1 -1
- package/dist/runtime/runtime-registry.js +1 -1
- package/dist/runtime/streams.d.ts.map +1 -1
- package/dist/runtime/streams.js +0 -1
- package/dist/runtime/wasi-instance.d.ts +35 -45
- package/dist/runtime/wasi-instance.d.ts.map +1 -1
- package/dist/runtime/wasi-instance.js +87 -103
- package/dist/runtime/wasm-runner.d.ts +9 -15
- package/dist/runtime/wasm-runner.d.ts.map +1 -1
- package/dist/runtime/wasm-runner.js +23 -29
- package/dist/session/bindings.d.ts +2 -7
- package/dist/session/bindings.d.ts.map +1 -1
- package/dist/session/bindings.js +3 -8
- package/dist/session/helpers.d.ts +2 -9
- package/dist/session/helpers.d.ts.map +1 -1
- package/dist/session/helpers.js +2 -10
- package/dist/session/init.d.ts +3 -6
- package/dist/session/init.d.ts.map +1 -1
- package/dist/session/init.js +25 -30
- package/dist/session/nimbus-session.d.ts +1 -1
- package/dist/session/nimbus-session.js +5 -5
- package/dist/session/routes.d.ts.map +1 -1
- package/dist/session/routes.js +9 -16
- package/dist/session/rpc.d.ts +2 -2
- package/dist/session/rpc.js +6 -6
- package/dist/session/supervisor-rpc.d.ts +1 -2
- package/dist/session/supervisor-rpc.d.ts.map +1 -1
- package/dist/session/supervisor-rpc.js +1 -5
- package/dist/shell/features.d.ts +5 -5
- package/dist/shell/features.js +6 -6
- package/dist/shell/unix-commands.js +15 -15
- package/dist/vfs/dev-provider.d.ts +1 -1
- package/dist/vfs/dev-provider.js +1 -1
- package/dist/vfs/sqlite-vfs.d.ts +3 -3
- package/dist/vfs/sqlite-vfs.d.ts.map +1 -1
- package/dist/vfs/sqlite-vfs.js +10 -11
- package/package.json +13 -2
- package/public/s/index.html +44 -75
- package/scripts/bundle-facet-workers.mjs +1 -1
- package/scripts/bundle-git.mjs +1 -1
|
@@ -100,7 +100,6 @@ __pathMod.posix = __pathMod;
|
|
|
100
100
|
// posix implementation is functionally correct for any path content the
|
|
101
101
|
// workers will ever see. Aliasing posix to win32 satisfies the structural
|
|
102
102
|
// contract without spawning a separate code path. See
|
|
103
|
-
// audit/sections/X5Z5-build-retro.md §3.
|
|
104
103
|
__pathMod.win32 = __pathMod;
|
|
105
104
|
|
|
106
105
|
// ═══════════════════════════════════════════════════════════════════════
|
|
@@ -172,7 +171,6 @@ const __fsMod = (() => {
|
|
|
172
171
|
// Pre-fix the Uint8Array branch UTF-8-decoded the bytes to a string,
|
|
173
172
|
// which mangled every byte ≥ 0x80 to U+FFFD (3-byte EF BF BD on the
|
|
174
173
|
// re-encode), corrupting all binary fs writes. See
|
|
175
|
-
// /workspace/.seal-internal/2026-05-10-binary-fs/.
|
|
176
174
|
function _isBytes(v) { return v instanceof Uint8Array; }
|
|
177
175
|
// Length in bytes regardless of shape — used by statSync's size field
|
|
178
176
|
// and the bundle-cap accounting on the host side.
|
|
@@ -205,7 +203,6 @@ const __fsMod = (() => {
|
|
|
205
203
|
// that failed the startsWith('/') guard below and got misrouted via
|
|
206
204
|
// path.resolve(cwd, 'file:///…') → corrupt path → ENOENT (verify-90993b3
|
|
207
205
|
// §3 bucket O: vite). Strip 'file://' and unwrap URL instances first.
|
|
208
|
-
// See audit/probes/x5npqo/functional/o-fs-url.mjs.
|
|
209
206
|
let s;
|
|
210
207
|
if (p && typeof p === "object" && p.protocol === "file:" && typeof p.pathname === "string") {
|
|
211
208
|
// URL instance — pathname is already a POSIX path with leading /
|
|
@@ -321,7 +318,6 @@ const __fsMod = (() => {
|
|
|
321
318
|
// the O(N) bundle-prefix scan. The manifest is uncapped and always
|
|
322
319
|
// reflects the real directory shape, even when the file content for
|
|
323
320
|
// a directory's contents was excluded by the 4 MiB / 500-file content
|
|
324
|
-
// bundle cap. (facet-manager.ts:453, audit/sections/W2.5-rootcause.md)
|
|
325
321
|
if (__vfsManifest) {
|
|
326
322
|
if (k in __vfsManifest) return true;
|
|
327
323
|
// Path may be a file listed by its parent's manifest entry.
|
|
@@ -395,7 +391,6 @@ const __fsMod = (() => {
|
|
|
395
391
|
// listings. The legacy bundle-prefix scan is kept as a fallback for paths
|
|
396
392
|
// not in the manifest (e.g. dirs created at exec time via mkdirSync) and
|
|
397
393
|
// is unioned with __vfsWrites so newly-written files become visible.
|
|
398
|
-
// (facet-manager.ts:453, audit/sections/W2.5-rootcause.md)
|
|
399
394
|
function readdirSync(p, opts) {
|
|
400
395
|
const absPath = _resolve(p);
|
|
401
396
|
const k = _strip(absPath);
|
|
@@ -499,7 +494,6 @@ const __fsMod = (() => {
|
|
|
499
494
|
// ── realpathSync (X.5-T per X5Z5-plan §4.3 + X526b-retro §3.1) ──
|
|
500
495
|
// VFS has no symlinks; identity-resolve to the absolute path. The
|
|
501
496
|
// .native static is required by TypeScript's getNodeSystem at
|
|
502
|
-
// typescript.js:8291 (see audit/probes/x5t/functional/realpath-native-defined.mjs).
|
|
503
497
|
function realpathSync(p, opts) { return _resolve(String(p)); }
|
|
504
498
|
realpathSync.native = realpathSync;
|
|
505
499
|
|
|
@@ -1000,7 +994,6 @@ const __eventsMod = (() => {
|
|
|
1000
994
|
// never runs on that target so \`_e\` is undefined. The lazy guard
|
|
1001
995
|
// \`(this._e ??= {})\` matches Node's behaviour (Node initializes
|
|
1002
996
|
// _events on first use too) and makes mixin-copy patterns safe.
|
|
1003
|
-
// See audit/sections/X5Z5-build-retro.md §3.
|
|
1004
997
|
class EE {
|
|
1005
998
|
constructor() { this._e = {}; this._maxListeners = 10; }
|
|
1006
999
|
on(n, fn) { const e = (this._e ??= {}); (e[n] = e[n] || []).push(fn); return this; }
|
|
@@ -1056,8 +1049,6 @@ const __utilMod = {
|
|
|
1056
1049
|
// util.types.isProxy (lib/web/fetch/headers.js). Expanding to the
|
|
1057
1050
|
// 17-method shape below mirrors Node.js's util.types surface for the
|
|
1058
1051
|
// common cases; isProxy returns false (no userland Proxy detection).
|
|
1059
|
-
// See audit/probes/x5npqo/investigate/Q-undici-types-survey.md and
|
|
1060
|
-
// audit/probes/x5npqo/functional/q-util-types.mjs.
|
|
1061
1052
|
types: {
|
|
1062
1053
|
isDate: (v) => v instanceof Date,
|
|
1063
1054
|
isRegExp: (v) => v instanceof RegExp,
|
|
@@ -1086,7 +1077,6 @@ const __utilMod = {
|
|
|
1086
1077
|
// both throw 'Object prototype may only be an Object or null: undefined'
|
|
1087
1078
|
// — same surface as Defect A but for shim namespaces with no synthetic
|
|
1088
1079
|
// .prototype. Mirrors the canonical inherits_browser.js fallback.
|
|
1089
|
-
// See audit/sections/X5Z5-plan.md §1.3 Defensive fix.
|
|
1090
1080
|
if (s == null || s.prototype == null) return;
|
|
1091
1081
|
c.super_ = s;
|
|
1092
1082
|
c.prototype = Object.create(s.prototype, { constructor: { value: c, enumerable: false, writable: true, configurable: true } });
|
|
@@ -1179,8 +1169,6 @@ const __utilMod = {
|
|
|
1179
1169
|
//
|
|
1180
1170
|
// where the rolldown-CJS polyfill for import.meta.url evaluates to literal
|
|
1181
1171
|
// null (the bare word) in our facet (no document, no location, polyfill doesn't reach
|
|
1182
|
-
// __filename for CJS-loaded modules — see audit/sections/X5M-plan.md §1
|
|
1183
|
-
// M-3 + audit/probes/x5m/investigate/vite-url-stack{5,A,B,D}.txt).
|
|
1184
1172
|
//
|
|
1185
1173
|
// workerd's URL constructor strict-rejects null/undefined base, throwing
|
|
1186
1174
|
// "Invalid URL string." at module top-level eval — breaks require('vite').
|
|
@@ -1206,7 +1194,6 @@ const __utilMod = {
|
|
|
1206
1194
|
// (set+restored by __loadModule per call). When set, the fallback becomes
|
|
1207
1195
|
// "file:///" + __currentModulePath so relative URLs resolve against
|
|
1208
1196
|
// the real on-VFS module location — restoring proper import.meta.url
|
|
1209
|
-
// semantics for ESM-transformed CJS. See audit/sections/X5M3-plan.md §3.
|
|
1210
1197
|
(() => {
|
|
1211
1198
|
const _Orig = globalThis.URL;
|
|
1212
1199
|
class _Shim extends _Orig {
|
|
@@ -2198,8 +2185,6 @@ builtins.stream = __streamMod;
|
|
|
2198
2185
|
// \`class ClientSideCacheProvider extends stream_1.EventEmitter {}\` where
|
|
2199
2186
|
// \`stream_1 = require("stream")\`. Without this re-export, \`stream_1.EventEmitter\`
|
|
2200
2187
|
// is undefined and \`class … extends undefined\` throws "Class extends value
|
|
2201
|
-
// undefined is not a constructor or null". See audit/sections/X5R-plan.md §3
|
|
2202
|
-
// + audit/probes/x5r/functional/r-stream-eventemitter-shape.mjs.
|
|
2203
2188
|
// Idempotent guard so a future streams.ts revision that already exposes
|
|
2204
2189
|
// EventEmitter doesn't get clobbered.
|
|
2205
2190
|
if (!__streamMod.EventEmitter) __streamMod.EventEmitter = __eventsMod;
|
|
@@ -2347,7 +2332,6 @@ builtins.perf_hooks = { performance: globalThis.performance || { now:()=>Date.no
|
|
|
2347
2332
|
// snapshots, so 'false' is the correct answer. Other v8 introspection
|
|
2348
2333
|
// APIs (cachedDataVersionTag, getHeapStatistics, etc.) return inert
|
|
2349
2334
|
// values that satisfy the shape contract without offering real data.
|
|
2350
|
-
// See audit/sections/X5Z5-build-retro.md §3.
|
|
2351
2335
|
builtins.v8 = {
|
|
2352
2336
|
startupSnapshot: {
|
|
2353
2337
|
isBuildingSnapshot: () => false,
|
|
@@ -2501,7 +2485,6 @@ builtins["node:dns/promises"] = builtins["dns/promises"];
|
|
|
2501
2485
|
// subpath missed. Mirror the dns/promises (M-2) pattern. The
|
|
2502
2486
|
// builtins.util.types object is the X.5-Q-expanded 17-method polyfill
|
|
2503
2487
|
// (see line 707), sufficient for undici@7.25.0 + undici@8.2.0.
|
|
2504
|
-
// See audit/probes/x5npqo/investigate/Q-undici-types-survey.md.
|
|
2505
2488
|
builtins["util/types"] = builtins.util.types;
|
|
2506
2489
|
builtins["node:util/types"] = builtins["util/types"];
|
|
2507
2490
|
|
|
@@ -2619,7 +2602,6 @@ function __resolveFile(base) {
|
|
|
2619
2602
|
// Emitted from src/_shared/exports-resolver.ts via getExportsResolverJS().
|
|
2620
2603
|
// Declares: resolveExports, resolveConditionValue, resolvePackageEntry,
|
|
2621
2604
|
// DEFAULT_ESM_CONDITIONS, DEFAULT_CJS_CONDITIONS.
|
|
2622
|
-
// See audit/sections/03-resolver-gaps.md §3.1 for the bug this fixes:
|
|
2623
2605
|
// the prior hand-rolled __resolvePkgEntry only honoured top-level
|
|
2624
2606
|
// require|default|import and dropped subpath maps, wildcards, nested
|
|
2625
2607
|
// conditions, the imports field, and null-target enforcement.
|
|
@@ -2806,7 +2788,6 @@ function __resolveImportsField(name, fromDir) {
|
|
|
2806
2788
|
// slot alignment while letting the body's binding win.
|
|
2807
2789
|
//
|
|
2808
2790
|
// Symmetric for \`__filename\` because open@10's idiom often emits both.
|
|
2809
|
-
// See audit/sections/X5S-plan.md §3, audit/probes/x5s/investigation/repro.mjs.
|
|
2810
2791
|
function __mkCompiledFn(code) {
|
|
2811
2792
|
const reFn = /(?:^|\\n|;)\\s*(?:const|let|var)\\s+__filename\\s*=/m;
|
|
2812
2793
|
const reDn = /(?:^|\\n|;)\\s*(?:const|let|var)\\s+__dirname\\s*=/m;
|
|
@@ -2865,7 +2846,6 @@ function __loadModule(resolvedPath) {
|
|
|
2865
2846
|
// relative URLs against the real module location — synthesizing
|
|
2866
2847
|
// import.meta.url semantics for ESM that esbuild CJS-emit reduced to
|
|
2867
2848
|
// const import_meta = {}. Save+restore for recursive __loadModule.
|
|
2868
|
-
// See audit/sections/X5M3-plan.md §3.
|
|
2869
2849
|
const __prevModulePath = globalThis.__currentModulePath;
|
|
2870
2850
|
globalThis.__currentModulePath = resolvedPath;
|
|
2871
2851
|
try {
|
|
@@ -2910,7 +2890,6 @@ function __loadModule(resolvedPath) {
|
|
|
2910
2890
|
// W3.5 Fix C: if the file was in the bundle but its pre-compile
|
|
2911
2891
|
// failed at facet startup, surface the original SyntaxError
|
|
2912
2892
|
// instead of the misleading "file was not pre-bundled" text.
|
|
2913
|
-
// See audit/sections/W3.5-plan.md §1 Failure 2.
|
|
2914
2893
|
const normalizedPath2 = resolvedPath.replace(/^\\/+/, "");
|
|
2915
2894
|
const compileErr =
|
|
2916
2895
|
(typeof __compileFailures !== "undefined" && __compileFailures &&
|
|
@@ -2952,7 +2931,6 @@ function __resolveFrom(id, fromDir) {
|
|
|
2952
2931
|
// fastify via ajv/dist/compile/jtd, redis via @redis/client/dist/lib/client).
|
|
2953
2932
|
// Normalize so they take the relative-resolve branch (which then probes
|
|
2954
2933
|
// index.js / package.json#main via __resolveFile). See
|
|
2955
|
-
// audit/probes/x5npqo/functional/p-parent-dir.mjs.
|
|
2956
2934
|
if (id === ".") id = "./";
|
|
2957
2935
|
else if (id === "..") id = "../";
|
|
2958
2936
|
// Relative path
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* package-manager.ts — `nimbus install <runtime>` shell verb.
|
|
3
3
|
*
|
|
4
|
-
* Implements True-OS Wave-3's package-manager surface per
|
|
5
|
-
* /workspace/.seal-internal/2026-05-10-true-os/plan.md §2.
|
|
6
|
-
*
|
|
7
4
|
* Subcommands (all under `nimbus install`):
|
|
8
5
|
*
|
|
9
6
|
* nimbus install <name> install latest of <name>
|
|
@@ -13,7 +10,7 @@
|
|
|
13
10
|
* nimbus install --reinstall <name> force refetch
|
|
14
11
|
* nimbus uninstall <name> remove installed runtime
|
|
15
12
|
*
|
|
16
|
-
* Per-user
|
|
13
|
+
* Per-user VFS layout:
|
|
17
14
|
*
|
|
18
15
|
* ~/.nimbus/runtimes/<name>/<version>/
|
|
19
16
|
* manifest.json
|
|
@@ -26,9 +23,7 @@
|
|
|
26
23
|
* each `entrypoints[].binName` as a shell command pointing at the
|
|
27
24
|
* named runner factory.
|
|
28
25
|
*
|
|
29
|
-
*
|
|
30
|
-
* - NO setTimeout / NO retry / NO defensive-catch in dispatch path.
|
|
31
|
-
* - Errors throw + bubble up to the user as a single diagnostic line.
|
|
26
|
+
* Errors throw and bubble up to the user as a single diagnostic line.
|
|
32
27
|
*/
|
|
33
28
|
import { type RuntimeCatalogEnv, type RuntimeManifest } from './runtime-catalog.js';
|
|
34
29
|
import type { SqliteVFS } from '../vfs/sqlite-vfs.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/package-manager.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/package-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* package-manager.ts — `nimbus install <runtime>` shell verb.
|
|
3
3
|
*
|
|
4
|
-
* Implements True-OS Wave-3's package-manager surface per
|
|
5
|
-
* /workspace/.seal-internal/2026-05-10-true-os/plan.md §2.
|
|
6
|
-
*
|
|
7
4
|
* Subcommands (all under `nimbus install`):
|
|
8
5
|
*
|
|
9
6
|
* nimbus install <name> install latest of <name>
|
|
@@ -13,7 +10,7 @@
|
|
|
13
10
|
* nimbus install --reinstall <name> force refetch
|
|
14
11
|
* nimbus uninstall <name> remove installed runtime
|
|
15
12
|
*
|
|
16
|
-
* Per-user
|
|
13
|
+
* Per-user VFS layout:
|
|
17
14
|
*
|
|
18
15
|
* ~/.nimbus/runtimes/<name>/<version>/
|
|
19
16
|
* manifest.json
|
|
@@ -26,9 +23,7 @@
|
|
|
26
23
|
* each `entrypoints[].binName` as a shell command pointing at the
|
|
27
24
|
* named runner factory.
|
|
28
25
|
*
|
|
29
|
-
*
|
|
30
|
-
* - NO setTimeout / NO retry / NO defensive-catch in dispatch path.
|
|
31
|
-
* - Errors throw + bubble up to the user as a single diagnostic line.
|
|
26
|
+
* Errors throw and bubble up to the user as a single diagnostic line.
|
|
32
27
|
*/
|
|
33
28
|
import { fetchCatalog, fetchManifest, fetchBlob } from './runtime-catalog.js';
|
|
34
29
|
/** Map of runner-key → factory. Populated by init.ts before install. */
|
|
@@ -219,7 +219,7 @@ export function handleProcessesListRequest(processTable, processLogs) {
|
|
|
219
219
|
command: p.command,
|
|
220
220
|
state: p.state,
|
|
221
221
|
exitCode: p.exitCode,
|
|
222
|
-
//
|
|
222
|
+
// child-process isolation gap #2: prefer the explicit longRunning flag set by
|
|
223
223
|
// FacetManager.spawn; fall back to the command-string heuristic
|
|
224
224
|
// for legacy entries that didn't go through that primitive.
|
|
225
225
|
longRunning: p.longRunning === true || LONG_RUNNING_CMD_RE.test(p.command),
|
|
@@ -63,7 +63,6 @@ export interface ProcessExitInfo {
|
|
|
63
63
|
reason?: string;
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
66
|
-
* W9 PersistAdapter — see audit/sections/W9-plan.md §3.1. Implementations
|
|
67
66
|
* live in NimbusSession (production: ctx.storage.sql) and in test
|
|
68
67
|
* harnesses (functional probes: in-memory mock).
|
|
69
68
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-logs.d.ts","sourceRoot":"","sources":["../../src/runtime/process-logs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5C,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmCD
|
|
1
|
+
{"version":3,"file":"process-logs.d.ts","sourceRoot":"","sources":["../../src/runtime/process-logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export interface ProcessEntry {
|
|
|
16
16
|
exitCode: number | null;
|
|
17
17
|
startTime: number;
|
|
18
18
|
endTime: number | null;
|
|
19
|
-
/**
|
|
19
|
+
/** child-process isolation: explicit long-running flag set by FacetManager.spawn
|
|
20
20
|
* when a script is forked to a long-lived Worker Loader (vite,
|
|
21
21
|
* http.listen, --watch, …). Distinct from the regex heuristic in
|
|
22
22
|
* process-logs-api.ts:LONG_RUNNING_CMD_RE — when set, the API
|
|
@@ -43,7 +43,7 @@ export declare class ProcessTable {
|
|
|
43
43
|
* disagrees with the ring-buffer footer that still says
|
|
44
44
|
* "[process killed: killed]".
|
|
45
45
|
*/
|
|
46
|
-
/**
|
|
46
|
+
/** child-process isolation: mark an existing entry as long-running. Idempotent. */
|
|
47
47
|
setLongRunning(pid: number): void;
|
|
48
48
|
exit(pid: number, exitCode: number): void;
|
|
49
49
|
/** Mark a process as killed. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-table.d.ts","sourceRoot":"","sources":["../../src/runtime/process-table.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;iCAI6B;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,UAAU,CAA6B;IAE/C,iDAAiD;IACjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY;IAmBjE;;;;;;;;;;;;;OAaG;IACH,
|
|
1
|
+
{"version":3,"file":"process-table.d.ts","sourceRoot":"","sources":["../../src/runtime/process-table.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;iCAI6B;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,UAAU,CAA6B;IAE/C,iDAAiD;IACjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY;IAmBjE;;;;;;;;;;;;;OAaG;IACH,mFAAmF;IACnF,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKjC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IASzC,gCAAgC;IAChC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAS1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI1C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAKvD,UAAU,IAAI,YAAY,EAAE;IAI5B,MAAM,IAAI,YAAY,EAAE;IAIxB,sDAAsD;IACtD,IAAI,CAAC,MAAM,SAAS,GAAG,MAAM;IAa7B,IAAI,KAAK;;;;;;MASR;CACF"}
|
|
@@ -42,7 +42,7 @@ export class ProcessTable {
|
|
|
42
42
|
* disagrees with the ring-buffer footer that still says
|
|
43
43
|
* "[process killed: killed]".
|
|
44
44
|
*/
|
|
45
|
-
/**
|
|
45
|
+
/** child-process isolation: mark an existing entry as long-running. Idempotent. */
|
|
46
46
|
setLongRunning(pid) {
|
|
47
47
|
const entry = this.processes.get(pid);
|
|
48
48
|
if (entry)
|
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
* result.
|
|
10
10
|
* 2. Adapter wiring (banner, push, close, ps1/ps2 prompts).
|
|
11
11
|
*
|
|
12
|
-
* Design per /workspace/.seal-internal/2026-05-11-repl-plan/plan.md §5:
|
|
13
12
|
* - State persistence: same NimbusLoaderPool reference held across
|
|
14
13
|
* submits → same child-facet isolate → globalThis.__nimbusPyodideInstance
|
|
15
14
|
* persists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python-repl.d.ts","sourceRoot":"","sources":["../../src/runtime/python-repl.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"python-repl.d.ts","sourceRoot":"","sources":["../../src/runtime/python-repl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,GAAG,EAAE,SAAS,CAAC;IACf,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,iFAAiF;IACjF,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAwhBD;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAOzE"}
|
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
* result.
|
|
10
10
|
* 2. Adapter wiring (banner, push, close, ps1/ps2 prompts).
|
|
11
11
|
*
|
|
12
|
-
* Design per /workspace/.seal-internal/2026-05-11-repl-plan/plan.md §5:
|
|
13
12
|
* - State persistence: same NimbusLoaderPool reference held across
|
|
14
13
|
* submits → same child-facet isolate → globalThis.__nimbusPyodideInstance
|
|
15
14
|
* persists.
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* python-runner.ts — Pyodide v0.29.4 runner (
|
|
2
|
+
* python-runner.ts — Pyodide v0.29.4 runner (runtime package manager v2 / Pyodide v1).
|
|
3
3
|
*
|
|
4
|
-
* v1 scope per /workspace/.seal-internal/2026-05-10-pyodide-research/plan.md
|
|
5
4
|
* D1-D7:
|
|
6
5
|
* - `python --version` / `python -c '<code>'` / `python script.py`
|
|
7
6
|
* - stdlib subset (full python_stdlib.zip ships)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python-runner.d.ts","sourceRoot":"","sources":["../../src/runtime/python-runner.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"python-runner.d.ts","sourceRoot":"","sources":["../../src/runtime/python-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,QAAQ,EAAE,YAAY,CAAC;IACvB,GAAG,EAAE,SAAS,CAAC;CAChB,GAAG,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,KAC7F,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CA2HhC;AAkPD;;;;;;GAMG;AAKH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAyFhF"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* python-runner.ts — Pyodide v0.29.4 runner (
|
|
2
|
+
* python-runner.ts — Pyodide v0.29.4 runner (runtime package manager v2 / Pyodide v1).
|
|
3
3
|
*
|
|
4
|
-
* v1 scope per /workspace/.seal-internal/2026-05-10-pyodide-research/plan.md
|
|
5
4
|
* D1-D7:
|
|
6
5
|
* - `python --version` / `python -c '<code>'` / `python script.py`
|
|
7
6
|
* - stdlib subset (full python_stdlib.zip ships)
|
|
@@ -487,7 +486,6 @@ export function buildPyodidePreamble(asmJsSrc, stdlibB64) {
|
|
|
487
486
|
// bootstrap promise never resolves → workerd cancels the request as
|
|
488
487
|
// hung. (This v2 redesign was directly motivated by the
|
|
489
488
|
// /tmp/pyodide-smoketest finding — see
|
|
490
|
-
// /workspace/.seal-internal/2026-05-11-pyodide-v2/smoketest-result.md.)
|
|
491
489
|
//
|
|
492
490
|
// Architecture:
|
|
493
491
|
//
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* repl-session.ts — substrate for interactive REPL sessions.
|
|
3
3
|
*
|
|
4
|
-
* Per /workspace/.seal-internal/2026-05-11-repl-plan/plan.md §§2-4:
|
|
5
4
|
* Layer 1: long-lived runtime via repeated execute() into a cached
|
|
6
5
|
* child-facet isolate (state persists on globalThis).
|
|
7
6
|
* Layer 2: stdin routing via WebSocketTerminal.attachRepl().
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl-session.d.ts","sourceRoot":"","sources":["../../src/runtime/repl-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"repl-session.d.ts","sourceRoot":"","sources":["../../src/runtime/repl-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;mCAC+B;IAC/B,MAAM,IAAI,MAAM,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5C;6DACyD;IACzD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,8CAA8C;IAC9C,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,YAAY,CAA6B;IACjD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,QAAQ,CAAa;IAE7B,8DAA8D;IAC9D,OAAO,CAAC,OAAO,CAAc;IAC7B,sDAAsD;IACtD,OAAO,CAAC,SAAS,CAAa;IAC9B,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAgB;IAChC,8EAA8E;IAC9E,OAAO,CAAC,IAAI,CAAkB;IAC9B,mEAAmE;IACnE,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAc;IAChC,mEAAmE;IACnE,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,aAAa,CAAgB;IACrC,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAa;IAC7B;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,QAAQ,CAAkB;gBAEtB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,GAAG;IAU1E;4EACwE;IAClE,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAyD5B;;;;;;OAMG;YACW,UAAU;IASxB;;qCAEiC;YACnB,WAAW;IA6EzB,qDAAqD;YACvC,UAAU;IA8ExB,6CAA6C;IAC7C,OAAO,CAAC,SAAS;IAMjB,mDAAmD;IACnD,OAAO,CAAC,WAAW;IAUnB,gEAAgE;IAChE,OAAO,CAAC,kBAAkB;IAW1B;;8DAE0D;IAC1D,OAAO,CAAC,iBAAiB;IAIzB,mEAAmE;YACrD,UAAU;CAYzB"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* repl-session.ts — substrate for interactive REPL sessions.
|
|
3
3
|
*
|
|
4
|
-
* Per /workspace/.seal-internal/2026-05-11-repl-plan/plan.md §§2-4:
|
|
5
4
|
* Layer 1: long-lived runtime via repeated execute() into a cached
|
|
6
5
|
* child-facet isolate (state persists on globalThis).
|
|
7
6
|
* Layer 2: stdin routing via WebSocketTerminal.attachRepl().
|
|
@@ -288,7 +287,7 @@ export class ReplSession {
|
|
|
288
287
|
// as three discrete WS frames in deterministic order. Without
|
|
289
288
|
// flushNow() between them, the 5 ms coalescer in WebSocketTerminal
|
|
290
289
|
// joins them into one `{type:'output'}` payload — probes asserting
|
|
291
|
-
// frame ordering see false-
|
|
290
|
+
// frame ordering see false-failing, and xterm renders correctly only
|
|
292
291
|
// because string-order is preserved. flushNow() guarantees both
|
|
293
292
|
// are true: bytes-in-order AND frame-boundary-after-each-stream.
|
|
294
293
|
if (result.kind === 'output') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-resolver.d.ts","sourceRoot":"","sources":["../../src/runtime/require-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"require-resolver.d.ts","sourceRoot":"","sources":["../../src/runtime/require-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAobtD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,MAAM,GACjB,cAAc,CAmOhB"}
|
|
@@ -72,7 +72,6 @@ const REQUIRE_RE = /(?:require(?:\.resolve)?\s*\(\s*)(['"`])([^'"`]+?)\1\s*\)/g;
|
|
|
72
72
|
// looksLikeEsm — minified ESM bundles (notably @tailwindcss/vite/dist/
|
|
73
73
|
// index.mjs) put the first `;import{...}from"..."` after a `;` on the
|
|
74
74
|
// same line, which the original anchor missed → prefetch walker silently
|
|
75
|
-
// failed to follow the transitive deps. See audit/sections/X5Z5-build-retro.md §3.
|
|
76
75
|
//
|
|
77
76
|
// Edge: a literal `\nimport x from 'y'` inside a multi-line string would
|
|
78
77
|
// false-positive. The walker no-ops on missed resolutions, so it's a
|
|
@@ -382,7 +381,6 @@ function resolveRequireEx(vfs, id, fromDir) {
|
|
|
382
381
|
// the file wasn't bundled — surfacing as a misleading
|
|
383
382
|
// "Cannot find module '#name' (from ...)" error.
|
|
384
383
|
//
|
|
385
|
-
// See .seal-internal/2026-05-11-chalk-imports-field/audit.md.
|
|
386
384
|
if (id.startsWith('#')) {
|
|
387
385
|
const r = resolveImportsField(vfs, id, fromDir);
|
|
388
386
|
return r ? { resolved: r } : null;
|
|
@@ -555,7 +553,6 @@ export function prefetchForRequire(vfs, entryCode, cwd, entryFile) {
|
|
|
555
553
|
// Why Option D (regex + comment-strip) over Option A (full
|
|
556
554
|
// structured AST extraction via esbuild metafile):
|
|
557
555
|
// - Empirical 100-file session bootstrap with AST: ~553 ms
|
|
558
|
-
// (P2 measurement, /workspace/.seal-internal/2026-05-11-
|
|
559
556
|
// esbuild-ast-rewrite/measure-result.txt). Over the 500 ms
|
|
560
557
|
// decision gate, and that's local Node — workerd-wasm cost
|
|
561
558
|
// is 2-3× higher.
|
|
@@ -632,7 +629,7 @@ export function prefetchForRequire(vfs, entryCode, cwd, entryFile) {
|
|
|
632
629
|
}
|
|
633
630
|
// Start from entry code.
|
|
634
631
|
//
|
|
635
|
-
// Primitive #1 (
|
|
632
|
+
// Primitive #1 (runtime primitive support): the relative-require
|
|
636
633
|
// resolution base is the ENTRY FILE's directory when the caller
|
|
637
634
|
// supplied one (bin shims under node_modules/.bin/, npx-launched
|
|
638
635
|
// scripts, etc.), NOT cwd. Pre-fix, `require('../lib/tsc.js')` from
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
* (workerd compiles at child-facet module-init time, where CSP
|
|
24
24
|
* permits). Per-user-VFS path: ~/.nimbus/runtimes/ruby/3.3.4/share/ruby/.
|
|
25
25
|
*
|
|
26
|
-
* Per /workspace/.seal-internal/2026-05-11-ruby-v1/audit.md:
|
|
27
26
|
* - Wasm size 34.3 MiB (well under empirical 32 MiB-ish per-call
|
|
28
27
|
* ceiling we cleared with Pyodide + clang).
|
|
29
28
|
* - 35 wasi_snapshot_preview1 imports (provided by wasi-instance.ts).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruby-runner.d.ts","sourceRoot":"","sources":["../../src/runtime/ruby-runner.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ruby-runner.d.ts","sourceRoot":"","sources":["../../src/runtime/ruby-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,YAAY,CAAC;IACvB,GAAG,EAAE,SAAS,CAAC;CAChB,GAAG,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,KAC7F,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CAoGhC;AAyND;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,y4oBA6ZrC,CAAC"}
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
* (workerd compiles at child-facet module-init time, where CSP
|
|
24
24
|
* permits). Per-user-VFS path: ~/.nimbus/runtimes/ruby/3.3.4/share/ruby/.
|
|
25
25
|
*
|
|
26
|
-
* Per /workspace/.seal-internal/2026-05-11-ruby-v1/audit.md:
|
|
27
26
|
* - Wasm size 34.3 MiB (well under empirical 32 MiB-ish per-call
|
|
28
27
|
* ceiling we cleared with Pyodide + clang).
|
|
29
28
|
* - 35 wasi_snapshot_preview1 imports (provided by wasi-instance.ts).
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
* runtime-catalog.ts — R2 + Cache API L2 wrapper for the
|
|
3
3
|
* `nimbus install <runtime>` package manager.
|
|
4
4
|
*
|
|
5
|
-
* Per `/workspace/.seal-internal/2026-05-10-true-os/plan.md` §2.3, §2.4:
|
|
6
|
-
*
|
|
7
5
|
* L1 (per-DO SqliteFS) — populated at install time.
|
|
8
6
|
* L2 (caches.default per-colo) — sub-ms reads after first hit.
|
|
9
7
|
* L3 (R2 nimbus-runtime-cache) — primary source of truth.
|
|
@@ -22,8 +20,8 @@
|
|
|
22
20
|
* files: [{ path, content, sha256, size, mode? }],
|
|
23
21
|
* entrypoints: [{ binName, runner, args[], kind? }] }
|
|
24
22
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* R2 and Cache API failures throw; the shell verb formats the diagnostic for
|
|
24
|
+
* the user.
|
|
27
25
|
*/
|
|
28
26
|
/** Minimal R2Bucket shape we depend on. */
|
|
29
27
|
type R2BucketLike = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-catalog.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-catalog.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"runtime-catalog.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,2CAA2C;AAC3C,KAAK,YAAY,GAAG;IAClB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QACxB,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;KACzB,GAAG,IAAI,CAAC,CAAC;CACX,GAAG,IAAI,GAAG,SAAS,CAAC;AAErB,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,oBAAoB,CAAC,EAAE,YAAY,CAAC;CACrC;AAID,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAC3B,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB;4CACwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB;oEACgE;IAChE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;iEAC6D;IAC7D,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACnC;AAaD,uEAAuE;AACvE,wBAAsB,YAAY,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAoBlF;AAED,kDAAkD;AAClD,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,EACtB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,CAAC,CAoB1B;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,UAAU,CAAC,CAwBrB"}
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
* runtime-catalog.ts — R2 + Cache API L2 wrapper for the
|
|
3
3
|
* `nimbus install <runtime>` package manager.
|
|
4
4
|
*
|
|
5
|
-
* Per `/workspace/.seal-internal/2026-05-10-true-os/plan.md` §2.3, §2.4:
|
|
6
|
-
*
|
|
7
5
|
* L1 (per-DO SqliteFS) — populated at install time.
|
|
8
6
|
* L2 (caches.default per-colo) — sub-ms reads after first hit.
|
|
9
7
|
* L3 (R2 nimbus-runtime-cache) — primary source of truth.
|
|
@@ -22,8 +20,8 @@
|
|
|
22
20
|
* files: [{ path, content, sha256, size, mode? }],
|
|
23
21
|
* entrypoints: [{ binName, runner, args[], kind? }] }
|
|
24
22
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* R2 and Cache API failures throw; the shell verb formats the diagnostic for
|
|
24
|
+
* the user.
|
|
27
25
|
*/
|
|
28
26
|
// ── Cache key helpers ────────────────────────────────────────────────
|
|
29
27
|
/** Synthetic L2 cache URLs. Reserved-invalid TLD so they can never
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* - NO setTimeout / NO retry / NO defensive-catch added.
|
|
32
32
|
* - NO behavioral change vs the pre-refactor handlers — every
|
|
33
33
|
* runtime-specific quirk is preserved exactly.
|
|
34
|
-
* - Per-runtime test parity: existing primitives
|
|
34
|
+
* - Per-runtime test parity: existing runtime-primitives probes
|
|
35
35
|
* (#1 npx / #2 .bin) and runtime-pkg probes (G1-G4) MUST still
|
|
36
36
|
* pass against the refactored handlers — the contract is
|
|
37
37
|
* observable behaviour, not implementation shape.
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* - NO setTimeout / NO retry / NO defensive-catch added.
|
|
32
32
|
* - NO behavioral change vs the pre-refactor handlers — every
|
|
33
33
|
* runtime-specific quirk is preserved exactly.
|
|
34
|
-
* - Per-runtime test parity: existing primitives
|
|
34
|
+
* - Per-runtime test parity: existing runtime-primitives probes
|
|
35
35
|
* (#1 npx / #2 .bin) and runtime-pkg probes (G1-G4) MUST still
|
|
36
36
|
* pass against the refactored handlers — the contract is
|
|
37
37
|
* observable behaviour, not implementation shape.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/runtime/streams.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,wBAAgB,mBAAmB,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/runtime/streams.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,wBAAgB,mBAAmB,IAAI,MAAM,CAqY5C"}
|
package/dist/runtime/streams.js
CHANGED
|
@@ -385,7 +385,6 @@ const __streamMod = (() => {
|
|
|
385
385
|
// throws "Object prototype may only be an Object or null: undefined".
|
|
386
386
|
// Plant a non-enumerable .prototype pointing at Readable.prototype to
|
|
387
387
|
// satisfy that contract without breaking any other access pattern.
|
|
388
|
-
// See audit/sections/X5Z5-plan.md §1.3 Primary fix.
|
|
389
388
|
const __streamMod = {
|
|
390
389
|
Readable, Writable, Duplex, Transform, PassThrough,
|
|
391
390
|
Stream: Readable,
|