@nimbus-sh/worker 0.1.0
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/README.md +219 -0
- package/dist/_shared/bytes.d.ts +18 -0
- package/dist/_shared/bytes.d.ts.map +1 -0
- package/dist/_shared/bytes.js +17 -0
- package/dist/_shared/cache-stats.d.ts +146 -0
- package/dist/_shared/cache-stats.d.ts.map +1 -0
- package/dist/_shared/cache-stats.js +162 -0
- package/dist/_shared/exports-resolver.d.ts +76 -0
- package/dist/_shared/exports-resolver.d.ts.map +1 -0
- package/dist/_shared/exports-resolver.js +284 -0
- package/dist/_shared/install-phase.d.ts +47 -0
- package/dist/_shared/install-phase.d.ts.map +1 -0
- package/dist/_shared/install-phase.js +1 -0
- package/dist/_shared/real-node-imports.d.ts +38 -0
- package/dist/_shared/real-node-imports.d.ts.map +1 -0
- package/dist/_shared/real-node-imports.js +46 -0
- package/dist/_shared/retry.d.ts +93 -0
- package/dist/_shared/retry.d.ts.map +1 -0
- package/dist/_shared/retry.js +161 -0
- package/dist/_shared/session-id.d.ts +39 -0
- package/dist/_shared/session-id.d.ts.map +1 -0
- package/dist/_shared/session-id.js +127 -0
- package/dist/_shared/session-router.d.ts +104 -0
- package/dist/_shared/session-router.d.ts.map +1 -0
- package/dist/_shared/session-router.js +165 -0
- package/dist/_shared/w7-frame.d.ts +93 -0
- package/dist/_shared/w7-frame.d.ts.map +1 -0
- package/dist/_shared/w7-frame.js +402 -0
- package/dist/auth/index.d.ts +16 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +15 -0
- package/dist/auth/middleware.d.ts +85 -0
- package/dist/auth/middleware.d.ts.map +1 -0
- package/dist/auth/middleware.js +150 -0
- package/dist/auth/token.d.ts +96 -0
- package/dist/auth/token.d.ts.map +1 -0
- package/dist/auth/token.js +226 -0
- package/dist/auth/types.d.ts +141 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +114 -0
- package/dist/bindings/d1.d.ts +102 -0
- package/dist/bindings/d1.d.ts.map +1 -0
- package/dist/bindings/d1.js +549 -0
- package/dist/bindings/kv.d.ts +82 -0
- package/dist/bindings/kv.d.ts.map +1 -0
- package/dist/bindings/kv.js +290 -0
- package/dist/bindings/r2.d.ts +137 -0
- package/dist/bindings/r2.d.ts.map +1 -0
- package/dist/bindings/r2.js +379 -0
- package/dist/cirrus-npm-cjs.generated.d.ts +17 -0
- package/dist/cirrus-npm-cjs.generated.d.ts.map +1 -0
- package/dist/cirrus-npm-cjs.generated.js +41 -0
- package/dist/cirrus-plugin-react.generated.d.ts +34 -0
- package/dist/cirrus-plugin-react.generated.d.ts.map +1 -0
- package/dist/cirrus-plugin-react.generated.js +33 -0
- package/dist/constants.d.ts +34 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +116 -0
- package/dist/esbuild-wasm-bundle.generated.d.ts +41 -0
- package/dist/esbuild-wasm-bundle.generated.d.ts.map +1 -0
- package/dist/esbuild-wasm-bundle.generated.js +40 -0
- package/dist/facets/cirrus-real.d.ts +147 -0
- package/dist/facets/cirrus-real.d.ts.map +1 -0
- package/dist/facets/cirrus-real.js +981 -0
- package/dist/facets/inner-do-registry.d.ts +41 -0
- package/dist/facets/inner-do-registry.d.ts.map +1 -0
- package/dist/facets/inner-do-registry.js +51 -0
- package/dist/facets/manager.d.ts +314 -0
- package/dist/facets/manager.d.ts.map +1 -0
- package/dist/facets/manager.js +2681 -0
- package/dist/facets/process.d.ts +318 -0
- package/dist/facets/process.d.ts.map +1 -0
- package/dist/facets/process.js +567 -0
- package/dist/facets/real-vite-fs-shim.d.ts +151 -0
- package/dist/facets/real-vite-fs-shim.d.ts.map +1 -0
- package/dist/facets/real-vite-fs-shim.js +1279 -0
- package/dist/facets/real-vite-hmr.d.ts +142 -0
- package/dist/facets/real-vite-hmr.d.ts.map +1 -0
- package/dist/facets/real-vite-hmr.js +476 -0
- package/dist/facets/vite-dev-server.d.ts +293 -0
- package/dist/facets/vite-dev-server.d.ts.map +1 -0
- package/dist/facets/vite-dev-server.js +2580 -0
- package/dist/facets/wasm-swap-registry.d.ts +261 -0
- package/dist/facets/wasm-swap-registry.d.ts.map +1 -0
- package/dist/facets/wasm-swap-registry.js +551 -0
- package/dist/facets/ws-terminal.d.ts +107 -0
- package/dist/facets/ws-terminal.d.ts.map +1 -0
- package/dist/facets/ws-terminal.js +207 -0
- package/dist/git/commands.d.ts +13 -0
- package/dist/git/commands.d.ts.map +1 -0
- package/dist/git/commands.js +633 -0
- package/dist/git/network-facet.d.ts +61 -0
- package/dist/git/network-facet.d.ts.map +1 -0
- package/dist/git/network-facet.js +700 -0
- package/dist/git-bundle.generated.d.ts +16 -0
- package/dist/git-bundle.generated.d.ts.map +1 -0
- package/dist/git-bundle.generated.js +15 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +73 -0
- package/dist/loaders/child-process/spawn-facet.d.ts +90 -0
- package/dist/loaders/child-process/spawn-facet.d.ts.map +1 -0
- package/dist/loaders/child-process/spawn-facet.js +103 -0
- package/dist/loaders/child-process/spawn-pool.d.ts +110 -0
- package/dist/loaders/child-process/spawn-pool.d.ts.map +1 -0
- package/dist/loaders/child-process/spawn-pool.js +161 -0
- package/dist/loaders/fanout-pool.d.ts +195 -0
- package/dist/loaders/fanout-pool.d.ts.map +1 -0
- package/dist/loaders/fanout-pool.js +326 -0
- package/dist/loaders/generated-workers.d.ts +26 -0
- package/dist/loaders/generated-workers.d.ts.map +1 -0
- package/dist/loaders/generated-workers.js +25 -0
- package/dist/loaders/index.d.ts +15 -0
- package/dist/loaders/index.d.ts.map +1 -0
- package/dist/loaders/index.js +13 -0
- package/dist/loaders/loader-pool.d.ts +273 -0
- package/dist/loaders/loader-pool.d.ts.map +1 -0
- package/dist/loaders/loader-pool.js +624 -0
- package/dist/loaders/npm-resolve-preamble.d.ts +34 -0
- package/dist/loaders/npm-resolve-preamble.d.ts.map +1 -0
- package/dist/loaders/npm-resolve-preamble.js +237 -0
- package/dist/loaders/pre-bundle-preamble.d.ts +41 -0
- package/dist/loaders/pre-bundle-preamble.d.ts.map +1 -0
- package/dist/loaders/pre-bundle-preamble.js +114 -0
- package/dist/loaders/vendor/codegen.d.ts +24 -0
- package/dist/loaders/vendor/codegen.d.ts.map +1 -0
- package/dist/loaders/vendor/codegen.js +44 -0
- package/dist/loaders/vendor/errors.d.ts +24 -0
- package/dist/loaders/vendor/errors.d.ts.map +1 -0
- package/dist/loaders/vendor/errors.js +46 -0
- package/dist/loaders/vendor/index.d.ts +16 -0
- package/dist/loaders/vendor/index.d.ts.map +1 -0
- package/dist/loaders/vendor/index.js +11 -0
- package/dist/loaders/vendor/pool.d.ts +88 -0
- package/dist/loaders/vendor/pool.d.ts.map +1 -0
- package/dist/loaders/vendor/pool.js +353 -0
- package/dist/loaders/vendor/primitives.d.ts +11 -0
- package/dist/loaders/vendor/primitives.d.ts.map +1 -0
- package/dist/loaders/vendor/primitives.js +33 -0
- package/dist/loaders/vendor/serialize.d.ts +3 -0
- package/dist/loaders/vendor/serialize.d.ts.map +1 -0
- package/dist/loaders/vendor/serialize.js +25 -0
- package/dist/loaders/vendor/types.d.ts +60 -0
- package/dist/loaders/vendor/types.d.ts.map +1 -0
- package/dist/loaders/vendor/types.js +4 -0
- package/dist/npm/cache.d.ts +136 -0
- package/dist/npm/cache.d.ts.map +1 -0
- package/dist/npm/cache.js +429 -0
- package/dist/npm/install-batch-facet.d.ts +129 -0
- package/dist/npm/install-batch-facet.d.ts.map +1 -0
- package/dist/npm/install-batch-facet.js +598 -0
- package/dist/npm/install-facet.d.ts +29 -0
- package/dist/npm/install-facet.d.ts.map +1 -0
- package/dist/npm/install-facet.js +9 -0
- package/dist/npm/installer.d.ts +239 -0
- package/dist/npm/installer.d.ts.map +1 -0
- package/dist/npm/installer.js +2022 -0
- package/dist/npm/npx-install.d.ts +74 -0
- package/dist/npm/npx-install.d.ts.map +1 -0
- package/dist/npm/npx-install.js +302 -0
- package/dist/npm/pre-bundle-facet.d.ts +168 -0
- package/dist/npm/pre-bundle-facet.d.ts.map +1 -0
- package/dist/npm/pre-bundle-facet.js +653 -0
- package/dist/npm/r2-cache.d.ts +286 -0
- package/dist/npm/r2-cache.d.ts.map +1 -0
- package/dist/npm/r2-cache.js +506 -0
- package/dist/npm/resolve-facet.d.ts +202 -0
- package/dist/npm/resolve-facet.d.ts.map +1 -0
- package/dist/npm/resolve-facet.js +833 -0
- package/dist/npm/resolve-one-facet.d.ts +204 -0
- package/dist/npm/resolve-one-facet.d.ts.map +1 -0
- package/dist/npm/resolve-one-facet.js +437 -0
- package/dist/npm/resolver.d.ts +109 -0
- package/dist/npm/resolver.d.ts.map +1 -0
- package/dist/npm/resolver.js +899 -0
- package/dist/npm/tarball-stream.d.ts +85 -0
- package/dist/npm/tarball-stream.d.ts.map +1 -0
- package/dist/npm/tarball-stream.js +205 -0
- package/dist/npm/tarball.d.ts +51 -0
- package/dist/npm/tarball.d.ts.map +1 -0
- package/dist/npm/tarball.js +185 -0
- package/dist/observability/diag-counters.d.ts +292 -0
- package/dist/observability/diag-counters.d.ts.map +1 -0
- package/dist/observability/diag-counters.js +302 -0
- package/dist/observability/heap-estimate.d.ts +166 -0
- package/dist/observability/heap-estimate.d.ts.map +1 -0
- package/dist/observability/heap-estimate.js +192 -0
- package/dist/observability/heavy-alloc-coord.d.ts +95 -0
- package/dist/observability/heavy-alloc-coord.d.ts.map +1 -0
- package/dist/observability/heavy-alloc-coord.js +149 -0
- package/dist/observability/oom-classify.d.ts +56 -0
- package/dist/observability/oom-classify.d.ts.map +1 -0
- package/dist/observability/oom-classify.js +118 -0
- package/dist/observability/oom-discriminator.d.ts +192 -0
- package/dist/observability/oom-discriminator.d.ts.map +1 -0
- package/dist/observability/oom-discriminator.js +233 -0
- package/dist/real-vite-bundle.generated.d.ts +46 -0
- package/dist/real-vite-bundle.generated.d.ts.map +1 -0
- package/dist/real-vite-bundle.generated.js +53 -0
- package/dist/replica/routing.d.ts +171 -0
- package/dist/replica/routing.d.ts.map +1 -0
- package/dist/replica/routing.js +288 -0
- package/dist/replica/suspension.d.ts +36 -0
- package/dist/replica/suspension.d.ts.map +1 -0
- package/dist/replica/suspension.js +49 -0
- package/dist/router/index.d.ts +156 -0
- package/dist/router/index.d.ts.map +1 -0
- package/dist/router/index.js +220 -0
- package/dist/runtime/assets-loader.d.ts +71 -0
- package/dist/runtime/assets-loader.d.ts.map +1 -0
- package/dist/runtime/assets-loader.js +128 -0
- package/dist/runtime/barrel-detect.d.ts +46 -0
- package/dist/runtime/barrel-detect.d.ts.map +1 -0
- package/dist/runtime/barrel-detect.js +73 -0
- package/dist/runtime/barrel-synthesizer.d.ts +181 -0
- package/dist/runtime/barrel-synthesizer.d.ts.map +1 -0
- package/dist/runtime/barrel-synthesizer.js +541 -0
- package/dist/runtime/bun-repl.d.ts +46 -0
- package/dist/runtime/bun-repl.d.ts.map +1 -0
- package/dist/runtime/bun-repl.js +326 -0
- package/dist/runtime/bun-runner.d.ts +66 -0
- package/dist/runtime/bun-runner.d.ts.map +1 -0
- package/dist/runtime/bun-runner.js +219 -0
- package/dist/runtime/clang-runner.d.ts +38 -0
- package/dist/runtime/clang-runner.d.ts.map +1 -0
- package/dist/runtime/clang-runner.js +1033 -0
- package/dist/runtime/comment-strip.d.ts +37 -0
- package/dist/runtime/comment-strip.d.ts.map +1 -0
- package/dist/runtime/comment-strip.js +74 -0
- package/dist/runtime/esbuild-service.d.ts +201 -0
- package/dist/runtime/esbuild-service.d.ts.map +1 -0
- package/dist/runtime/esbuild-service.js +1444 -0
- package/dist/runtime/esbuild-wasm-bytes.d.ts +87 -0
- package/dist/runtime/esbuild-wasm-bytes.d.ts.map +1 -0
- package/dist/runtime/esbuild-wasm-bytes.js +131 -0
- package/dist/runtime/framework-detect.d.ts +71 -0
- package/dist/runtime/framework-detect.d.ts.map +1 -0
- package/dist/runtime/framework-detect.js +178 -0
- package/dist/runtime/long-running-handle.d.ts +133 -0
- package/dist/runtime/long-running-handle.d.ts.map +1 -0
- package/dist/runtime/long-running-handle.js +192 -0
- package/dist/runtime/node-repl.d.ts +36 -0
- package/dist/runtime/node-repl.d.ts.map +1 -0
- package/dist/runtime/node-repl.js +293 -0
- package/dist/runtime/node-runner.d.ts +111 -0
- package/dist/runtime/node-runner.d.ts.map +1 -0
- package/dist/runtime/node-runner.js +194 -0
- package/dist/runtime/node-shims.d.ts +24 -0
- package/dist/runtime/node-shims.d.ts.map +1 -0
- package/dist/runtime/node-shims.js +3019 -0
- package/dist/runtime/package-manager.d.ts +118 -0
- package/dist/runtime/package-manager.d.ts.map +1 -0
- package/dist/runtime/package-manager.js +420 -0
- package/dist/runtime/port-registry.d.ts +80 -0
- package/dist/runtime/port-registry.d.ts.map +1 -0
- package/dist/runtime/port-registry.js +166 -0
- package/dist/runtime/process-logs-api.d.ts +102 -0
- package/dist/runtime/process-logs-api.d.ts.map +1 -0
- package/dist/runtime/process-logs-api.js +253 -0
- package/dist/runtime/process-logs.d.ts +311 -0
- package/dist/runtime/process-logs.d.ts.map +1 -0
- package/dist/runtime/process-logs.js +656 -0
- package/dist/runtime/process-table.d.ts +65 -0
- package/dist/runtime/process-table.d.ts.map +1 -0
- package/dist/runtime/process-table.js +107 -0
- package/dist/runtime/project-detect.d.ts +21 -0
- package/dist/runtime/project-detect.d.ts.map +1 -0
- package/dist/runtime/project-detect.js +46 -0
- package/dist/runtime/python-repl.d.ts +66 -0
- package/dist/runtime/python-repl.d.ts.map +1 -0
- package/dist/runtime/python-repl.js +563 -0
- package/dist/runtime/python-runner.d.ts +50 -0
- package/dist/runtime/python-runner.d.ts.map +1 -0
- package/dist/runtime/python-runner.js +870 -0
- package/dist/runtime/repl-session.d.ts +160 -0
- package/dist/runtime/repl-session.d.ts.map +1 -0
- package/dist/runtime/repl-session.js +393 -0
- package/dist/runtime/require-resolver.d.ts +52 -0
- package/dist/runtime/require-resolver.d.ts.map +1 -0
- package/dist/runtime/require-resolver.js +690 -0
- package/dist/runtime/router-basename.d.ts +36 -0
- package/dist/runtime/router-basename.d.ts.map +1 -0
- package/dist/runtime/router-basename.js +310 -0
- package/dist/runtime/ruby-repl.d.ts +43 -0
- package/dist/runtime/ruby-repl.d.ts.map +1 -0
- package/dist/runtime/ruby-repl.js +229 -0
- package/dist/runtime/ruby-runner.d.ts +62 -0
- package/dist/runtime/ruby-runner.d.ts.map +1 -0
- package/dist/runtime/ruby-runner.js +737 -0
- package/dist/runtime/runtime-catalog.d.ts +99 -0
- package/dist/runtime/runtime-catalog.d.ts.map +1 -0
- package/dist/runtime/runtime-catalog.js +183 -0
- package/dist/runtime/runtime-registry.d.ts +136 -0
- package/dist/runtime/runtime-registry.d.ts.map +1 -0
- package/dist/runtime/runtime-registry.js +318 -0
- package/dist/runtime/streams.d.ts +13 -0
- package/dist/runtime/streams.d.ts.map +1 -0
- package/dist/runtime/streams.js +402 -0
- package/dist/runtime/wasi-instance.d.ts +190 -0
- package/dist/runtime/wasi-instance.d.ts.map +1 -0
- package/dist/runtime/wasi-instance.js +2044 -0
- package/dist/runtime/wasm-runner.d.ts +117 -0
- package/dist/runtime/wasm-runner.d.ts.map +1 -0
- package/dist/runtime/wasm-runner.js +705 -0
- package/dist/session/bindings.d.ts +168 -0
- package/dist/session/bindings.d.ts.map +1 -0
- package/dist/session/bindings.js +524 -0
- package/dist/session/ctx-exports.d.ts +16 -0
- package/dist/session/ctx-exports.d.ts.map +1 -0
- package/dist/session/ctx-exports.js +22 -0
- package/dist/session/diag.d.ts +62 -0
- package/dist/session/diag.d.ts.map +1 -0
- package/dist/session/diag.js +118 -0
- package/dist/session/fs-watch.d.ts +132 -0
- package/dist/session/fs-watch.d.ts.map +1 -0
- package/dist/session/fs-watch.js +255 -0
- package/dist/session/helpers.d.ts +150 -0
- package/dist/session/helpers.d.ts.map +1 -0
- package/dist/session/helpers.js +472 -0
- package/dist/session/hibernation.d.ts +145 -0
- package/dist/session/hibernation.d.ts.map +1 -0
- package/dist/session/hibernation.js +385 -0
- package/dist/session/init-phases.d.ts +87 -0
- package/dist/session/init-phases.d.ts.map +1 -0
- package/dist/session/init-phases.js +137 -0
- package/dist/session/init.d.ts +46 -0
- package/dist/session/init.d.ts.map +1 -0
- package/dist/session/init.js +3579 -0
- package/dist/session/keys.d.ts +56 -0
- package/dist/session/keys.d.ts.map +1 -0
- package/dist/session/keys.js +55 -0
- package/dist/session/nimbus-session.d.ts +434 -0
- package/dist/session/nimbus-session.d.ts.map +1 -0
- package/dist/session/nimbus-session.js +1084 -0
- package/dist/session/programmatic.d.ts +105 -0
- package/dist/session/programmatic.d.ts.map +1 -0
- package/dist/session/programmatic.js +326 -0
- package/dist/session/replica-routes.d.ts +68 -0
- package/dist/session/replica-routes.d.ts.map +1 -0
- package/dist/session/replica-routes.js +77 -0
- package/dist/session/routes.d.ts +29 -0
- package/dist/session/routes.d.ts.map +1 -0
- package/dist/session/routes.js +1331 -0
- package/dist/session/rpc.d.ts +323 -0
- package/dist/session/rpc.d.ts.map +1 -0
- package/dist/session/rpc.js +808 -0
- package/dist/session/state-store.d.ts +210 -0
- package/dist/session/state-store.d.ts.map +1 -0
- package/dist/session/state-store.js +459 -0
- package/dist/session/supervisor-rpc.d.ts +269 -0
- package/dist/session/supervisor-rpc.d.ts.map +1 -0
- package/dist/session/supervisor-rpc.js +437 -0
- package/dist/session/ws-hibernation-config.d.ts +64 -0
- package/dist/session/ws-hibernation-config.d.ts.map +1 -0
- package/dist/session/ws-hibernation-config.js +89 -0
- package/dist/session/ws.d.ts +95 -0
- package/dist/session/ws.d.ts.map +1 -0
- package/dist/session/ws.js +395 -0
- package/dist/shell/features.d.ts +410 -0
- package/dist/shell/features.d.ts.map +1 -0
- package/dist/shell/features.js +1885 -0
- package/dist/shell/unix-commands.d.ts +15 -0
- package/dist/shell/unix-commands.d.ts.map +1 -0
- package/dist/shell/unix-commands.js +3703 -0
- package/dist/stubs/lifo-ui.d.ts +10 -0
- package/dist/stubs/lifo-ui.d.ts.map +1 -0
- package/dist/stubs/lifo-ui.js +1 -0
- package/dist/tailwind-play.generated.d.ts +19 -0
- package/dist/tailwind-play.generated.d.ts.map +1 -0
- package/dist/tailwind-play.generated.js +18 -0
- package/dist/vfs/dev-provider.d.ts +64 -0
- package/dist/vfs/dev-provider.d.ts.map +1 -0
- package/dist/vfs/dev-provider.js +191 -0
- package/dist/vfs/events.d.ts +51 -0
- package/dist/vfs/events.d.ts.map +1 -0
- package/dist/vfs/events.js +127 -0
- package/dist/vfs/path.d.ts +30 -0
- package/dist/vfs/path.d.ts.map +1 -0
- package/dist/vfs/path.js +41 -0
- package/dist/vfs/seed-project.d.ts +62 -0
- package/dist/vfs/seed-project.d.ts.map +1 -0
- package/dist/vfs/seed-project.js +1045 -0
- package/dist/vfs/sqlite-vfs.d.ts +435 -0
- package/dist/vfs/sqlite-vfs.d.ts.map +1 -0
- package/dist/vfs/sqlite-vfs.js +1670 -0
- package/dist/vfs/symlink-registry.d.ts +64 -0
- package/dist/vfs/symlink-registry.d.ts.map +1 -0
- package/dist/vfs/symlink-registry.js +137 -0
- package/dist/wrangler/nimbus-wrangler.d.ts +157 -0
- package/dist/wrangler/nimbus-wrangler.d.ts.map +1 -0
- package/dist/wrangler/nimbus-wrangler.js +931 -0
- package/package.json +77 -0
- package/public/_assets/cirrus-plugin-react.bundle.js +70740 -0
- package/public/_assets/esbuild-0.24.2.wasm +0 -0
- package/public/_assets/real-vite-bundle.js +101478 -0
- package/public/_assets/rollup.wasm +0 -0
- package/public/favicon.svg +8 -0
- package/public/index.html +565 -0
- package/public/s/index.html +2379 -0
- package/scripts/bundle-esbuild-wasm.mjs +244 -0
- package/scripts/bundle-facet-workers.mjs +137 -0
- package/scripts/bundle-git.mjs +118 -0
- package/scripts/bundle-npm-cjs.mjs +363 -0
- package/scripts/bundle-plugin-react.mjs +480 -0
- package/scripts/bundle-real-vite.mjs +959 -0
- package/scripts/bundle-runtime.mjs +600 -0
- package/scripts/bundle-tailwind-play.mjs +130 -0
- package/scripts/patch-lifo-ui.mjs +131 -0
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* facet-process.ts — supervisor-side broker for child_process.spawn.
|
|
3
|
+
*
|
|
4
|
+
* W8 Phase 1: facet-mapped pseudo-process. Each child_process.spawn call from
|
|
5
|
+
* a parent facet routes through here:
|
|
6
|
+
*
|
|
7
|
+
* parent facet ── SUPERVISOR.cpSpawn(req) ─→ FacetProcessManager.spawn
|
|
8
|
+
* │
|
|
9
|
+
* ▼
|
|
10
|
+
* one of two execution kinds:
|
|
11
|
+
*
|
|
12
|
+
* pure-builtin — run inline in supervisor isolate via the command
|
|
13
|
+
* registry (echo, cat, true, false, ls, env, sleep,
|
|
14
|
+
* exit-code, …). No facet hop. Fast.
|
|
15
|
+
*
|
|
16
|
+
* facet-direct — mint a child facet that runs the command directly
|
|
17
|
+
* via FacetManager.execStream(). The facet IS the
|
|
18
|
+
* command's runtime — no nested cpRunBuiltinCommand
|
|
19
|
+
* recursion (that was the BLOCKER-2 deadlock vector
|
|
20
|
+
* in the initial plan; see W8-plan.md §8.5).
|
|
21
|
+
*
|
|
22
|
+
* stdin / stdout / stderr stream through per-child queues maintained on
|
|
23
|
+
* this manager instance. cpReadOutput long-polls for incremental delivery
|
|
24
|
+
* to the parent; cpDrainOutput is a one-shot full-flush invoked from the
|
|
25
|
+
* parent's exit path so unawaited children don't lose output.
|
|
26
|
+
*
|
|
27
|
+
* Lifecycle invariants:
|
|
28
|
+
* - exitCode is stamped exactly once (first writer wins). kill() and
|
|
29
|
+
* reportExit() race-free.
|
|
30
|
+
* - kill() resolves all pending waiters BEFORE invoking facets.abort,
|
|
31
|
+
* so cpWait/cpReadOutput don't hang on a torn-down facet.
|
|
32
|
+
* - facets.delete is deferred to a microtask after abort to give any
|
|
33
|
+
* in-flight reportExit RPC a chance to land (and be no-op'd by the
|
|
34
|
+
* idempotent guard).
|
|
35
|
+
*/
|
|
36
|
+
import type { ProcessTable } from '../runtime/process-table.js';
|
|
37
|
+
/**
|
|
38
|
+
* Result of running a pure-builtin or facet-direct command. Mirrors
|
|
39
|
+
* FacetExecResult but with the streaming hooks already invoked, so this
|
|
40
|
+
* value is just the final exit code.
|
|
41
|
+
*/
|
|
42
|
+
export interface ExecStreamResult {
|
|
43
|
+
exitCode: number;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Output chunk in a child's per-fd ring. Sequence numbers let parents
|
|
47
|
+
* read incrementally with cpReadOutput(sinceSeq).
|
|
48
|
+
*/
|
|
49
|
+
interface OutputChunk {
|
|
50
|
+
seq: number;
|
|
51
|
+
data: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Per-child mutable state. Created on spawn, torn down only when the
|
|
55
|
+
* parent reaps via cpReap or after a configurable idle timeout (we leave
|
|
56
|
+
* the entry around for late drain/wait calls).
|
|
57
|
+
*/
|
|
58
|
+
interface ChildEntry {
|
|
59
|
+
pid: number;
|
|
60
|
+
command: string;
|
|
61
|
+
args: string[];
|
|
62
|
+
cwd: string;
|
|
63
|
+
env: Record<string, string>;
|
|
64
|
+
facetName: string;
|
|
65
|
+
startedAt: number;
|
|
66
|
+
endedAt: number | null;
|
|
67
|
+
stdinChunks: string[];
|
|
68
|
+
stdinClosed: boolean;
|
|
69
|
+
stdinTotalBytes: number;
|
|
70
|
+
stdinWaiters: Array<(r: {
|
|
71
|
+
data: string;
|
|
72
|
+
ended: boolean;
|
|
73
|
+
}) => void>;
|
|
74
|
+
outputs: {
|
|
75
|
+
1: OutputChunk[];
|
|
76
|
+
2: OutputChunk[];
|
|
77
|
+
};
|
|
78
|
+
outputSeq: {
|
|
79
|
+
1: number;
|
|
80
|
+
2: number;
|
|
81
|
+
};
|
|
82
|
+
outputWaiters: Array<{
|
|
83
|
+
fd: 1 | 2;
|
|
84
|
+
sinceSeq: number;
|
|
85
|
+
resolve: (r: ReadOutputResult) => void;
|
|
86
|
+
expiresAt: number;
|
|
87
|
+
}>;
|
|
88
|
+
exitCode: number | null;
|
|
89
|
+
signal: string | null;
|
|
90
|
+
killed: boolean;
|
|
91
|
+
exitWaiters: Array<(r: {
|
|
92
|
+
done: boolean;
|
|
93
|
+
exitCode: number | null;
|
|
94
|
+
signal: string | null;
|
|
95
|
+
}) => void>;
|
|
96
|
+
facetSlot: {
|
|
97
|
+
abort?: () => void;
|
|
98
|
+
killed?: boolean;
|
|
99
|
+
} | null;
|
|
100
|
+
}
|
|
101
|
+
export interface SpawnReq {
|
|
102
|
+
command: string;
|
|
103
|
+
args: string[];
|
|
104
|
+
env: Record<string, string>;
|
|
105
|
+
cwd: string;
|
|
106
|
+
stdio: ('pipe' | 'ignore' | 'inherit')[];
|
|
107
|
+
detached?: boolean;
|
|
108
|
+
shell?: boolean | string;
|
|
109
|
+
/** Optional explicit parent PID for log routing. */
|
|
110
|
+
parentPid?: number;
|
|
111
|
+
}
|
|
112
|
+
export interface ReadOutputResult {
|
|
113
|
+
chunks: {
|
|
114
|
+
seq: number;
|
|
115
|
+
data: string;
|
|
116
|
+
}[];
|
|
117
|
+
closed: boolean;
|
|
118
|
+
maxSeq: number;
|
|
119
|
+
}
|
|
120
|
+
export interface DrainResult {
|
|
121
|
+
stdout: string;
|
|
122
|
+
stderr: string;
|
|
123
|
+
stdoutClosed: boolean;
|
|
124
|
+
stderrClosed: boolean;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Hooks invoked by the inline runner / facet-direct runner to push
|
|
128
|
+
* output back into the per-child ring. Kept as a small structural type
|
|
129
|
+
* so tests can supply mocks.
|
|
130
|
+
*/
|
|
131
|
+
export interface OutputHooks {
|
|
132
|
+
onStdout: (data: string) => void;
|
|
133
|
+
onStderr: (data: string) => void;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Command resolution. The shell registry returns whatever shape it likes;
|
|
137
|
+
* we adapt to a normalized 3-state result.
|
|
138
|
+
*/
|
|
139
|
+
export type CommandKind = 'pure-builtin' | 'facet-direct' | 'unknown';
|
|
140
|
+
/**
|
|
141
|
+
* The minimum shape we need from the FacetManager. Production passes
|
|
142
|
+
* the real FacetManager; tests pass a mock with execStream.
|
|
143
|
+
*/
|
|
144
|
+
export interface FacetManagerLike {
|
|
145
|
+
execStream(code: string, opts: {
|
|
146
|
+
facetName?: string;
|
|
147
|
+
cwd?: string;
|
|
148
|
+
env?: Record<string, string>;
|
|
149
|
+
argv?: string[];
|
|
150
|
+
}, hooks: OutputHooks): Promise<number>;
|
|
151
|
+
abort?(facetName: string, signal?: string): boolean;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* The minimum shape we need from the command registry.
|
|
155
|
+
*/
|
|
156
|
+
export interface CommandRegistryLike {
|
|
157
|
+
resolve(name: string): {
|
|
158
|
+
kind: CommandKind;
|
|
159
|
+
} | null;
|
|
160
|
+
runPureBuiltin(name: string, args: string[], env: Record<string, string>, cwd: string, stdin: string, hooks: OutputHooks): Promise<number>;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* The minimum shape we need from the ProcessLogStore.
|
|
164
|
+
*/
|
|
165
|
+
export interface LogStoreLike {
|
|
166
|
+
append(pid: number, stream: 'stdout' | 'stderr', data: string): void;
|
|
167
|
+
markExit(pid: number, code: number): void;
|
|
168
|
+
getExit(pid: number): number | undefined;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Constructor deps bundle. Keeping it as a single object simplifies
|
|
172
|
+
* tests AND makes the production wiring in nimbus-session.ts read
|
|
173
|
+
* declaratively.
|
|
174
|
+
*/
|
|
175
|
+
export interface FacetProcessManagerDeps {
|
|
176
|
+
facetMgr: FacetManagerLike;
|
|
177
|
+
processTable: ProcessTable | {
|
|
178
|
+
spawn: (cmd: string, argv: string[], cwd: string) => any;
|
|
179
|
+
exit: (pid: number, code: number) => void;
|
|
180
|
+
kill: (pid: number) => boolean;
|
|
181
|
+
get: (pid: number) => any;
|
|
182
|
+
reap: () => number;
|
|
183
|
+
};
|
|
184
|
+
processLogs: LogStoreLike;
|
|
185
|
+
vfs: {
|
|
186
|
+
exists(p: string): boolean;
|
|
187
|
+
readFileString(p: string): string;
|
|
188
|
+
isDirectory(p: string): boolean;
|
|
189
|
+
};
|
|
190
|
+
commandRegistry: CommandRegistryLike;
|
|
191
|
+
/** Optional: ctx for facets.abort/delete in production. */
|
|
192
|
+
ctx?: {
|
|
193
|
+
facets?: {
|
|
194
|
+
abort?: (name: string, e?: any) => void;
|
|
195
|
+
delete?: (name: string) => void;
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* arch-gaps gap #1: optional ChildProcessSpawnPool. When supplied,
|
|
200
|
+
* `_dispatch` routes each spawn through the pool (one-task
|
|
201
|
+
* NimbusFanoutPool.submitMany call per spawn), giving each spawn a
|
|
202
|
+
* fresh Worker Loader isolate. When omitted, falls back to the
|
|
203
|
+
* legacy in-supervisor dispatch (unit-test path; production wiring
|
|
204
|
+
* always supplies it).
|
|
205
|
+
*/
|
|
206
|
+
spawnPool?: {
|
|
207
|
+
runOne: (req: any, kind: 'pure-builtin' | 'facet-direct' | 'unknown', hooks: {
|
|
208
|
+
onStdout: (d: string) => void;
|
|
209
|
+
onStderr: (d: string) => void;
|
|
210
|
+
}, childId: number | string) => Promise<number>;
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
/** Cap recursion depth to defend against runaway spawn loops. */
|
|
214
|
+
export declare const CHILD_PROCESS_MAX_DEPTH = 8;
|
|
215
|
+
export declare class FacetProcessManager {
|
|
216
|
+
private children;
|
|
217
|
+
private nextPid;
|
|
218
|
+
private deps;
|
|
219
|
+
constructor(deps: FacetProcessManagerDeps);
|
|
220
|
+
/**
|
|
221
|
+
* Allocate a child PID, classify the command, dispatch to inline runner
|
|
222
|
+
* or facet-direct runner. Returns immediately with the child PID; the
|
|
223
|
+
* actual command executes asynchronously and pushes output via the
|
|
224
|
+
* per-child hooks.
|
|
225
|
+
*/
|
|
226
|
+
spawn(req: SpawnReq): Promise<{
|
|
227
|
+
childPid: number;
|
|
228
|
+
}>;
|
|
229
|
+
/** Dispatch by kind. */
|
|
230
|
+
private _dispatch;
|
|
231
|
+
/**
|
|
232
|
+
* arch-gaps gap #1: inline dispatch — runs the existing
|
|
233
|
+
* pure-builtin / facet-direct logic with string-collecting hooks
|
|
234
|
+
* and returns the final {exitCode, stdout, stderr} envelope.
|
|
235
|
+
*
|
|
236
|
+
* Called by _rpcCpDispatchInline (src/session/rpc.ts) which is in
|
|
237
|
+
* turn called by the spawn-facet running inside a fresh Worker
|
|
238
|
+
* Loader isolate. The dispatch envelope is in a fresh isolate; the
|
|
239
|
+
* actual command logic still uses the existing registry paths.
|
|
240
|
+
*
|
|
241
|
+
* Single-ownership: stdin/stdout/stderr returned as strings; no
|
|
242
|
+
* shared buffers cross the RPC boundary.
|
|
243
|
+
*/
|
|
244
|
+
dispatchInline(req: SpawnReq, kind: string): Promise<{
|
|
245
|
+
exitCode: number;
|
|
246
|
+
stdout: string;
|
|
247
|
+
stderr: string;
|
|
248
|
+
}>;
|
|
249
|
+
/**
|
|
250
|
+
* Synchronously drain the stdin queue for a pure-builtin. Waits up to
|
|
251
|
+
* 50ms for stdinClosed if data is still flowing. Pure-builtins block
|
|
252
|
+
* on full stdin so we have to commit upfront — the parent should have
|
|
253
|
+
* called stdinEnd() before the wait ticks expire.
|
|
254
|
+
*/
|
|
255
|
+
private _drainStdinForBuiltin;
|
|
256
|
+
stdinWrite(childPid: number, data: string): {
|
|
257
|
+
ok: boolean;
|
|
258
|
+
};
|
|
259
|
+
stdinEnd(childPid: number): void;
|
|
260
|
+
/**
|
|
261
|
+
* Long-poll: child facet asks the supervisor for its next stdin chunk.
|
|
262
|
+
* Returns immediately if data is already queued OR if stdin is closed.
|
|
263
|
+
*/
|
|
264
|
+
cpReadStdin(childPid: number, waitMs: number): Promise<{
|
|
265
|
+
data: string;
|
|
266
|
+
ended: boolean;
|
|
267
|
+
}>;
|
|
268
|
+
/** Internal: push a chunk to fd 1 or 2, fire log-store + waiters. */
|
|
269
|
+
private _appendOutput;
|
|
270
|
+
/**
|
|
271
|
+
* Long-poll read for fd 1 or 2. Returns immediately if there are
|
|
272
|
+
* chunks > sinceSeq OR if the child has already exited.
|
|
273
|
+
*/
|
|
274
|
+
readOutput(childPid: number, fd: 1 | 2, sinceSeq: number, waitMs?: number): Promise<ReadOutputResult>;
|
|
275
|
+
/**
|
|
276
|
+
* One-shot final flush. Used by the parent's exit-time drain (BLOCKER-1
|
|
277
|
+
* fix in W8-plan §8.5). Returns ALL pending output for both fds plus
|
|
278
|
+
* the closed state. Does NOT wait — caller is the parent shutting down.
|
|
279
|
+
*/
|
|
280
|
+
drainOutput(childPid: number): Promise<DrainResult>;
|
|
281
|
+
/**
|
|
282
|
+
* Synchronous kill. First-writer-wins on exit slot. Resolves all
|
|
283
|
+
* pending waiters BEFORE invoking facets.abort so cpWait/cpReadOutput
|
|
284
|
+
* don't hang on a torn-down facet.
|
|
285
|
+
*/
|
|
286
|
+
kill(childPid: number, signal?: string): boolean;
|
|
287
|
+
/**
|
|
288
|
+
* Stamp the exit slot. Idempotent — first call wins.
|
|
289
|
+
* Wakes all waiters (exit, output, stdin) so callers don't hang.
|
|
290
|
+
*/
|
|
291
|
+
private _stampExit;
|
|
292
|
+
/**
|
|
293
|
+
* Late-arriving reportExit from the facet. Idempotent; if kill() or
|
|
294
|
+
* an earlier reportExit already stamped, this is a no-op.
|
|
295
|
+
*/
|
|
296
|
+
reportExit(childPid: number, exitCode: number, signal: string | null): void;
|
|
297
|
+
/**
|
|
298
|
+
* Long-poll wait. Returns immediately if already exited; otherwise
|
|
299
|
+
* registers a waiter that resolves on the next exit-slot stamp.
|
|
300
|
+
*/
|
|
301
|
+
wait(childPid: number, waitMs?: number): Promise<{
|
|
302
|
+
done: boolean;
|
|
303
|
+
exitCode: number | null;
|
|
304
|
+
signal: string | null;
|
|
305
|
+
}>;
|
|
306
|
+
/** Reap entries older than maxAgeMs whose exit slot is stamped. */
|
|
307
|
+
reap(maxAgeMs?: number): number;
|
|
308
|
+
get stats(): {
|
|
309
|
+
total: number;
|
|
310
|
+
running: number;
|
|
311
|
+
exited: number;
|
|
312
|
+
killed: number;
|
|
313
|
+
};
|
|
314
|
+
/** Test/diagnostic introspection. */
|
|
315
|
+
_getChildEntry(pid: number): ChildEntry | undefined;
|
|
316
|
+
}
|
|
317
|
+
export {};
|
|
318
|
+
//# sourceMappingURL=process.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/facets/process.ts"],"names":[],"mappings":"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"}
|