@nimbus-sh/worker 0.5.0 → 0.7.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.
Files changed (164) hide show
  1. package/README.md +2 -2
  2. package/dist/_shared/preview-host.d.ts +26 -8
  3. package/dist/_shared/preview-host.d.ts.map +1 -1
  4. package/dist/_shared/preview-host.js +51 -11
  5. package/dist/cirrus-npm-cjs.generated.d.ts +1 -1
  6. package/dist/cirrus-npm-cjs.generated.js +1 -1
  7. package/dist/facets/cirrus-real.d.ts.map +1 -1
  8. package/dist/facets/cirrus-real.js +6 -5
  9. package/dist/facets/compose.d.ts +148 -0
  10. package/dist/facets/compose.d.ts.map +1 -0
  11. package/dist/facets/compose.js +146 -0
  12. package/dist/facets/durable-images.d.ts +18 -5
  13. package/dist/facets/durable-images.d.ts.map +1 -1
  14. package/dist/facets/durable-images.js +36 -7
  15. package/dist/facets/durable-slots.d.ts +1 -1
  16. package/dist/facets/durable-slots.d.ts.map +1 -1
  17. package/dist/facets/durable-slots.js +2 -1
  18. package/dist/facets/esbuild-bundle-pool.d.ts +49 -0
  19. package/dist/facets/esbuild-bundle-pool.d.ts.map +1 -0
  20. package/dist/facets/esbuild-bundle-pool.js +122 -0
  21. package/dist/facets/exec-telemetry.d.ts +8 -0
  22. package/dist/facets/exec-telemetry.d.ts.map +1 -1
  23. package/dist/facets/manager.d.ts +337 -123
  24. package/dist/facets/manager.d.ts.map +1 -1
  25. package/dist/facets/manager.js +1100 -449
  26. package/dist/facets/process.d.ts +20 -16
  27. package/dist/facets/process.d.ts.map +1 -1
  28. package/dist/facets/process.js +59 -28
  29. package/dist/facets/real-vite-fs-shim.js +2 -2
  30. package/dist/facets/resident-identity.d.ts +23 -0
  31. package/dist/facets/resident-identity.d.ts.map +1 -0
  32. package/dist/facets/resident-identity.js +31 -0
  33. package/dist/facets/vite-dev-server.d.ts +25 -47
  34. package/dist/facets/vite-dev-server.d.ts.map +1 -1
  35. package/dist/facets/vite-dev-server.js +185 -219
  36. package/dist/facets/wasm-image-digest.d.ts +25 -0
  37. package/dist/facets/wasm-image-digest.d.ts.map +1 -0
  38. package/dist/facets/wasm-image-digest.js +25 -0
  39. package/dist/facets/wasm-swap-registry.d.ts +51 -92
  40. package/dist/facets/wasm-swap-registry.d.ts.map +1 -1
  41. package/dist/facets/wasm-swap-registry.js +68 -227
  42. package/dist/git/commands.d.ts +0 -1
  43. package/dist/git/commands.d.ts.map +1 -1
  44. package/dist/git/commands.js +0 -3
  45. package/dist/git/network-facet.d.ts.map +1 -1
  46. package/dist/git/network-facet.js +6 -5
  47. package/dist/loaders/child-process/spawn-pool.d.ts +3 -2
  48. package/dist/loaders/child-process/spawn-pool.d.ts.map +1 -1
  49. package/dist/loaders/child-process/spawn-pool.js +3 -2
  50. package/dist/loaders/generated-workers.d.ts +2 -2
  51. package/dist/loaders/generated-workers.d.ts.map +1 -1
  52. package/dist/loaders/generated-workers.js +3 -3
  53. package/dist/loaders/npm-resolve-preamble.d.ts +3 -6
  54. package/dist/loaders/npm-resolve-preamble.d.ts.map +1 -1
  55. package/dist/loaders/npm-resolve-preamble.js +34 -108
  56. package/dist/node-shims-artifact.generated.js +3 -3
  57. package/dist/npm/install-batch-facet.d.ts +3 -2
  58. package/dist/npm/install-batch-facet.d.ts.map +1 -1
  59. package/dist/npm/install-batch-facet.js +45 -15
  60. package/dist/npm/installer.d.ts +22 -17
  61. package/dist/npm/installer.d.ts.map +1 -1
  62. package/dist/npm/installer.js +209 -193
  63. package/dist/npm/pre-bundle-facet.d.ts +1 -1
  64. package/dist/npm/pre-bundle-facet.d.ts.map +1 -1
  65. package/dist/npm/pre-bundle-facet.js +1 -1
  66. package/dist/npm/resolve-facet.d.ts +6 -0
  67. package/dist/npm/resolve-facet.d.ts.map +1 -1
  68. package/dist/npm/resolve-one-facet.d.ts +21 -20
  69. package/dist/npm/resolve-one-facet.d.ts.map +1 -1
  70. package/dist/npm/resolve-one-facet.js +85 -84
  71. package/dist/npm/semver.d.ts +59 -0
  72. package/dist/npm/semver.d.ts.map +1 -0
  73. package/dist/npm/semver.js +226 -0
  74. package/dist/router/index.d.ts.map +1 -1
  75. package/dist/router/index.js +47 -10
  76. package/dist/router/public-directory.d.ts +5 -1
  77. package/dist/router/public-directory.d.ts.map +1 -1
  78. package/dist/router/public-directory.js +9 -2
  79. package/dist/router/remote-api.d.ts +18 -0
  80. package/dist/router/remote-api.d.ts.map +1 -1
  81. package/dist/router/remote-api.js +64 -5
  82. package/dist/runtime/cpython-resident.d.ts.map +1 -1
  83. package/dist/runtime/cpython-resident.js +3 -1
  84. package/dist/runtime/html-entrypoint.d.ts +7 -0
  85. package/dist/runtime/html-entrypoint.d.ts.map +1 -1
  86. package/dist/runtime/html-entrypoint.js +18 -2
  87. package/dist/runtime/node-runner.d.ts +3 -0
  88. package/dist/runtime/node-runner.d.ts.map +1 -1
  89. package/dist/runtime/node-runner.js +7 -0
  90. package/dist/runtime/node-shims.d.ts.map +1 -1
  91. package/dist/runtime/node-shims.js +305 -29
  92. package/dist/runtime/opencode-facet-runner.js +2 -2
  93. package/dist/runtime/package-manager.d.ts +44 -1
  94. package/dist/runtime/package-manager.d.ts.map +1 -1
  95. package/dist/runtime/package-manager.js +168 -3
  96. package/dist/runtime/ruby-resident.d.ts.map +1 -1
  97. package/dist/runtime/ruby-resident.js +2 -0
  98. package/dist/session/agent.d.ts.map +1 -1
  99. package/dist/session/agent.js +28 -1
  100. package/dist/session/helpers.d.ts +38 -0
  101. package/dist/session/helpers.d.ts.map +1 -1
  102. package/dist/session/helpers.js +76 -0
  103. package/dist/session/init-phases.d.ts +1 -1
  104. package/dist/session/init-phases.d.ts.map +1 -1
  105. package/dist/session/init-phases.js +2 -12
  106. package/dist/session/init.d.ts +15 -1
  107. package/dist/session/init.d.ts.map +1 -1
  108. package/dist/session/init.js +91 -603
  109. package/dist/session/keys.d.ts +4 -0
  110. package/dist/session/keys.d.ts.map +1 -1
  111. package/dist/session/keys.js +4 -0
  112. package/dist/session/nimbus-session.d.ts +90 -23
  113. package/dist/session/nimbus-session.d.ts.map +1 -1
  114. package/dist/session/nimbus-session.js +200 -110
  115. package/dist/session/npm-install-port.d.ts +16 -0
  116. package/dist/session/npm-install-port.d.ts.map +1 -0
  117. package/dist/session/npm-install-port.js +37 -0
  118. package/dist/session/port-capability.d.ts +90 -0
  119. package/dist/session/port-capability.d.ts.map +1 -1
  120. package/dist/session/port-capability.js +219 -9
  121. package/dist/session/programmatic.d.ts +125 -5
  122. package/dist/session/programmatic.d.ts.map +1 -1
  123. package/dist/session/programmatic.js +439 -89
  124. package/dist/session/routes.d.ts +39 -17
  125. package/dist/session/routes.d.ts.map +1 -1
  126. package/dist/session/routes.js +67 -131
  127. package/dist/session/rpc.d.ts +39 -16
  128. package/dist/session/rpc.d.ts.map +1 -1
  129. package/dist/session/rpc.js +137 -130
  130. package/dist/session/serving-port.d.ts +27 -0
  131. package/dist/session/serving-port.d.ts.map +1 -0
  132. package/dist/session/serving-port.js +27 -0
  133. package/dist/session/start-real-vite.d.ts +12 -0
  134. package/dist/session/start-real-vite.d.ts.map +1 -1
  135. package/dist/session/start-real-vite.js +4 -4
  136. package/dist/session/supervisor-op.d.ts +41 -4
  137. package/dist/session/supervisor-op.d.ts.map +1 -1
  138. package/dist/session/supervisor-op.js +101 -73
  139. package/dist/session/supervisor-rpc.d.ts +7 -7
  140. package/dist/session/supervisor-rpc.d.ts.map +1 -1
  141. package/dist/session/supervisor-rpc.js +6 -3
  142. package/dist/session/vite-command.d.ts +18 -0
  143. package/dist/session/vite-command.d.ts.map +1 -0
  144. package/dist/session/vite-command.js +609 -0
  145. package/dist/session/ws.d.ts +61 -0
  146. package/dist/session/ws.d.ts.map +1 -1
  147. package/dist/session/ws.js +122 -12
  148. package/dist/shell/npm-bin-entrypoints.d.ts +0 -35
  149. package/dist/shell/npm-bin-entrypoints.d.ts.map +1 -1
  150. package/dist/shell/npm-bin-entrypoints.js +12 -85
  151. package/package.json +24 -4
  152. package/public/_assets/runtime/{node-shims-9e1380d9ee430fcc.js → node-shims-8f8c64edd2a1f0f5.js} +305 -29
  153. package/public/index.html +1 -1
  154. package/scripts/bundle-facet-workers.mjs +1 -1
  155. package/scripts/bundle-npm-cjs.mjs +2 -2
  156. package/dist/facets/on-demand-bundle-gate.d.ts +0 -65
  157. package/dist/facets/on-demand-bundle-gate.d.ts.map +0 -1
  158. package/dist/facets/on-demand-bundle-gate.js +0 -125
  159. package/dist/npm/install-args.d.ts +0 -21
  160. package/dist/npm/install-args.d.ts.map +0 -1
  161. package/dist/npm/install-args.js +0 -70
  162. package/dist/npm/npm-log.d.ts +0 -31
  163. package/dist/npm/npm-log.d.ts.map +0 -1
  164. package/dist/npm/npm-log.js +0 -51
@@ -33,16 +33,17 @@
33
33
  * Stability invariants (cloudflare-parallel):
34
34
  * - No `this` references.
35
35
  * - No closure capture other than args + preamble names.
36
- * - Preamble symbols (streamTarEntries, readableStreamToAsyncIterable,
37
- * MAX_FILE_BYTES) referenced via @ts-ignore.
36
+ * - Preamble symbols (streamPackageEntries, streamTarEntries,
37
+ * readableStreamToAsyncIterable, MAX_FILE_BYTES) referenced via
38
+ * @ts-ignore.
38
39
  */
39
40
  // ── Facet function ──────────────────────────────────────────────────────
40
41
  //
41
42
  // Runs inside a IsolatePool isolate. Serialised via fn.toString();
42
- // the helpers it references at top-level scope (streamTarEntries,
43
- // readableStreamToAsyncIterable, MAX_FILE_BYTES) are NOT in the facet's
44
- // lexical scope — the pool injects them via the preamble. No static
45
- // imports of those names; references are bare identifiers.
43
+ // the helpers it references at top-level scope (streamPackageEntries,
44
+ // streamTarEntries, readableStreamToAsyncIterable, MAX_FILE_BYTES) are NOT
45
+ // in the facet's lexical scope — the pool injects them via the preamble.
46
+ // No static imports of those names; references are bare identifiers.
46
47
  export const installPackagesInFacet = async function installPackagesInFacet(batch, env) {
47
48
  const tBatchStart = Date.now();
48
49
  if (!batch || typeof batch !== 'object' || !Array.isArray(batch.packages)) {
@@ -121,6 +122,10 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
121
122
  let sharedChunks = [];
122
123
  let sharedBufferedBytes = 0;
123
124
  let sharedOwners = new Set();
125
+ // Directories staged into a wave, shard-wide. A directory is staged once
126
+ // per shard, not once per package — and a wave that fails removes its
127
+ // directories from this set so they are staged again (see doSharedFlush).
128
+ const landedDirs = new Set();
124
129
  const ownerWaves = new Map();
125
130
  const ownersWithCompletionMarker = new Set();
126
131
  const completionMarkers = new Map();
@@ -135,12 +140,20 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
135
140
  // for too long", so the schedule has to outlast a queue that deep; the
136
141
  // whole-batch timeout is 10 minutes, which bounds it.
137
142
  const WAVE_RETRY_BACKOFF_MS = [250, 1000, 3000, 6000, 12000, 20000];
143
+ // "Network connection lost" is the RPC transport between this shard and
144
+ // the coordinator DO dropping under load — the same class: the wave may
145
+ // or may not have run, and re-sending identical path-keyed bytes is safe
146
+ // either way. It was the dominant shard failure on a 629-package install
147
+ // (Markflow): one lost wave failed every package that had contributed to
148
+ // it, and the directories that wave carried never landed, so later waves
149
+ // of unrelated packages failed with ENOENT on those parents.
138
150
  const isSheddableWaveError = (message) => {
139
151
  const m = message.toLowerCase();
140
152
  return m.includes('overloaded')
141
153
  || m.includes('reset because its code was updated')
142
154
  || m.includes('starting up durable object storage')
143
- || (m.includes('storage operation') && m.includes('reset'));
155
+ || (m.includes('storage operation') && m.includes('reset'))
156
+ || m.includes('network connection lost');
144
157
  };
145
158
  // Mutex: only one flush runs at a time. Concurrent installs awaiting
146
159
  // flush() will line up behind this promise and resolve in arrival
@@ -177,7 +190,7 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
177
190
  // with every contributing package before awaiting the RPC, so a package
178
191
  // cannot report success while another package happens to be the caller
179
192
  // that triggered its shared flush.
180
- const wave = (async () => {
193
+ const sendWave = async () => {
181
194
  for (let attempt = 0;; attempt++) {
182
195
  try {
183
196
  // Each attempt encodes its OWN bytes. The encoder hands chunk
@@ -212,6 +225,19 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
212
225
  await new Promise((rs) => setTimeout(rs, delayMs));
213
226
  }
214
227
  }
228
+ };
229
+ const dirsInWave = inodesNow.filter((inode) => inode.isDir).map((inode) => inode.path);
230
+ const wave = (async () => {
231
+ const outcome = await sendWave();
232
+ // A wave that did not land took its directory inodes with it. Every
233
+ // package that staged one of them into this wave believes it exists;
234
+ // forget them so the next file under such a directory re-stages the
235
+ // chain into its own wave instead of failing ENOENT on a parent that
236
+ // was never written.
237
+ if (!outcome.ok)
238
+ for (const dir of dirsInWave)
239
+ landedDirs.delete(dir);
240
+ return outcome;
215
241
  })();
216
242
  for (const owner of ownersNow) {
217
243
  let waves = ownerWaves.get(owner);
@@ -647,7 +673,6 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
647
673
  // not per package. Per-package totals stay local to the result object.
648
674
  let totalFileInodes = 0;
649
675
  let totalBytesWritten = 0;
650
- const dirSet = new Set();
651
676
  let completionMarker = null;
652
677
  // Stage `installRoot` and every directory down to `dirPath` (inclusive),
653
678
  // root-to-leaf, BEFORE any file that needs them. The credentialed
@@ -663,9 +688,13 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
663
688
  const segs = suffix ? suffix.split('/') : [];
664
689
  for (let i = 0; i <= segs.length; i++) {
665
690
  const d = i === 0 ? installRoot : installRoot + '/' + segs.slice(0, i).join('/');
666
- if (dirSet.has(d))
691
+ if (landedDirs.has(d)) {
692
+ // Staged by an earlier wave of this shard. This owner's files
693
+ // depend on it, so this owner must see that wave's outcome too.
694
+ sharedOwners.add(ownerId);
667
695
  continue;
668
- dirSet.add(d);
696
+ }
697
+ landedDirs.add(d);
669
698
  await enqueueSharedDirectory(ownerId, d, spec.mtime);
670
699
  }
671
700
  };
@@ -685,10 +714,11 @@ export const installPackagesInFacet = async function installPackagesInFacet(batc
685
714
  // packages whose only member is package.json.
686
715
  await enqueueDirsUpTo(pkgDir);
687
716
  // @ts-ignore — preamble symbol.
688
- for await (const entry of streamTarEntries(asyncIter, onSkip)) {
689
- // entry.name is already canonicalized (no "."/".." segments) by
690
- // the tar parser, so joining under the canonical pkgDir yields a
691
- // canonical path the w7-frame writer accepts.
717
+ for await (const entry of streamPackageEntries(asyncIter, onSkip)) {
718
+ // entry.name is canonicalized (no "."/".." segments) and stripped of
719
+ // the archive's single top-level directory by streamPackageEntries,
720
+ // so joining under the canonical pkgDir yields a canonical path the
721
+ // w7-frame writer accepts.
692
722
  const filePath = pkgDir + '/' + entry.name;
693
723
  // Stage this file's parent-dir chain before the file itself.
694
724
  await enqueueDirsUpTo(filePath.substring(0, filePath.lastIndexOf('/')));
@@ -23,7 +23,8 @@ import type { SqliteVFS } from '@nimbus-sh/core/vfs/sqlite-vfs.js';
23
23
  import type { EsbuildService } from '@nimbus-sh/core/runtime/esbuild-service.js';
24
24
  import { NpmCache } from './cache.js';
25
25
  import { type FetchFn } from './resolver.js';
26
- import { type NpmLogEmitter } from './npm-log.js';
26
+ import { type NpmLogEmitter } from '@nimbus-sh/core/substrate/lifo/commands/system/npm-log.js';
27
+ import type { BundlePoolProvider } from '../facets/esbuild-bundle-pool.js';
27
28
  import type { InstallPhase } from '@nimbus-sh/platform/install-phase.js';
28
29
  export interface InstallProgress {
29
30
  phase: InstallPhase;
@@ -49,6 +50,8 @@ export declare class NpmInstaller {
49
50
  private readonly vfs;
50
51
  private cache;
51
52
  private esbuild;
53
+ /** The session's esbuild facet pool, shared with the on-demand dev-server path. */
54
+ private bundlePool;
52
55
  private ctx;
53
56
  private env;
54
57
  private onProgress;
@@ -68,6 +71,7 @@ export declare class NpmInstaller {
68
71
  private npmLog;
69
72
  constructor(vfs: SqliteVFS, sql: SqlStorage, opts?: {
70
73
  esbuild?: EsbuildService;
74
+ bundlePool?: BundlePoolProvider;
71
75
  ctx?: DurableObjectState;
72
76
  env?: any;
73
77
  onProgress?: (msg: string) => void;
@@ -86,6 +90,7 @@ export declare class NpmInstaller {
86
90
  production?: boolean;
87
91
  pid?: number;
88
92
  npmLog?: NpmLogEmitter;
93
+ onProgress?: (msg: string) => void;
89
94
  }): Promise<NpmInstallResult>;
90
95
  private _installInner;
91
96
  /**
@@ -104,7 +109,13 @@ export declare class NpmInstaller {
104
109
  * - X.5-G G1 optional-native silent-skip,
105
110
  * - X.5-drizzle best-effort tagging on optional-peer subtrees,
106
111
  * - W6 swap / warn / reject decisions (top-level enforcement; the
107
- * per-package task ALSO checks these for transitive correctness),
112
+ * per-package task ALSO checks these for transitive correctness).
113
+ * A package is required iff it is reachable from a required root
114
+ * (every selected spec except optionalDependencies roots) through
115
+ * a chain of required edges (`dependencies` minus the package's
116
+ * own optionalDependencies, required peers); W6 refusals are
117
+ * classified against the closure computed over the resolved
118
+ * graph at end of walk.
108
119
  * - cache flushing (one batched putRegistryEntries at end).
109
120
  *
110
121
  * The per-package task (resolveOnePackumentInFacet) owns ONLY the
@@ -139,24 +150,18 @@ export declare class NpmInstaller {
139
150
  * the V8 cap risk.
140
151
  */
141
152
  private fetchViaBatchFacet;
142
- /**
143
- * Build the dependency specs from package.json + explicit packages.
144
- */
145
- /**
146
- * W11: framework detection at install time. Reads package.json from the
147
- * project root and runs detectFramework() against its deps + the basenames
148
- * we can see in node_modules-adjacent siblings.
149
- *
150
- * Returns true if the project is detected as one of {next, astro, nuxt,
151
- * remix, sveltekit, vite, wrangler}. False for 'unknown'.
152
- */
153
- private detectFrameworkAware;
154
153
  private buildSpecs;
155
154
  /**
156
155
  * W6: apply the PACKAGE_ABI_POLICY swap rewrites and reject deny list
157
- * to a top-level spec map. Emits `[swap]` notices via onProgress; throws
158
- * a multi-line error on any reject (with `transitive='warn'` rejects
159
- * also failing at top level — they only soften at depth>0).
156
+ * to a top-level spec map. Emits `[swap]` notices via onProgress.
157
+ *
158
+ * G2: rejects are advisories — a listed package stays in the spec map
159
+ * and installs like any other (npm parity: it cannot run here, but
160
+ * install is the wrong place to say so). Each gets one `[npm] note:`
161
+ * line per install and an `advisory` registry event; the require-side
162
+ * refusal carries the reason when the artifact is invoked.
163
+ * `advised` dedupes across the top-level pass and the walk (the
164
+ * package still resolves and can surface transitively).
160
165
  *
161
166
  * Idempotent: running on already-swapped specs is a no-op.
162
167
  */
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/npm/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/npm/installer.ts"],"names":[],"mappings":"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"}