@telorun/kernel 0.74.0 → 0.76.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 (81) hide show
  1. package/dist/bundle/module-artifact.d.ts +21 -4
  2. package/dist/bundle/module-artifact.d.ts.map +1 -1
  3. package/dist/bundle/module-artifact.js +42 -17
  4. package/dist/bundle/module-artifact.js.map +1 -1
  5. package/dist/bundle/module-manifest.d.ts +5 -1
  6. package/dist/bundle/module-manifest.d.ts.map +1 -1
  7. package/dist/bundle/module-manifest.js +5 -1
  8. package/dist/bundle/module-manifest.js.map +1 -1
  9. package/dist/controller-loader.d.ts +3 -2
  10. package/dist/controller-loader.d.ts.map +1 -1
  11. package/dist/controller-loader.js +10 -9
  12. package/dist/controller-loader.js.map +1 -1
  13. package/dist/controller-loaders/bundle-loader.d.ts +51 -4
  14. package/dist/controller-loaders/bundle-loader.d.ts.map +1 -1
  15. package/dist/controller-loaders/bundle-loader.js +260 -11
  16. package/dist/controller-loaders/bundle-loader.js.map +1 -1
  17. package/dist/controller-loaders/napi-loader.d.ts.map +1 -1
  18. package/dist/controller-loaders/napi-loader.js +8 -1
  19. package/dist/controller-loaders/napi-loader.js.map +1 -1
  20. package/dist/controller-loaders/npm-loader.d.ts.map +1 -1
  21. package/dist/controller-loaders/npm-loader.js +65 -3
  22. package/dist/controller-loaders/npm-loader.js.map +1 -1
  23. package/dist/controller-loaders/sibling-libraries.d.ts +93 -0
  24. package/dist/controller-loaders/sibling-libraries.d.ts.map +1 -0
  25. package/dist/controller-loaders/sibling-libraries.js +111 -0
  26. package/dist/controller-loaders/sibling-libraries.js.map +1 -0
  27. package/dist/controller-loaders/source-bundle-builder.d.ts +43 -1
  28. package/dist/controller-loaders/source-bundle-builder.d.ts.map +1 -1
  29. package/dist/controller-loaders/source-bundle-builder.js +249 -24
  30. package/dist/controller-loaders/source-bundle-builder.js.map +1 -1
  31. package/dist/controllers/module/import-controller.d.ts.map +1 -1
  32. package/dist/controllers/module/import-controller.js +5 -1
  33. package/dist/controllers/module/import-controller.js.map +1 -1
  34. package/dist/controllers/resource-definition/resource-definition-controller.d.ts.map +1 -1
  35. package/dist/controllers/resource-definition/resource-definition-controller.js +5 -1
  36. package/dist/controllers/resource-definition/resource-definition-controller.js.map +1 -1
  37. package/dist/index.d.ts +1 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +1 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/kernel.d.ts +11 -1
  42. package/dist/kernel.d.ts.map +1 -1
  43. package/dist/kernel.js +44 -5
  44. package/dist/kernel.js.map +1 -1
  45. package/dist/manifest-schemas.d.ts +1 -1
  46. package/dist/manifest-schemas.d.ts.map +1 -1
  47. package/dist/manifest-schemas.js +6 -5
  48. package/dist/manifest-schemas.js.map +1 -1
  49. package/dist/manifest-sources/local-manifest-cache-source.d.ts +13 -2
  50. package/dist/manifest-sources/local-manifest-cache-source.d.ts.map +1 -1
  51. package/dist/manifest-sources/local-manifest-cache-source.js +19 -3
  52. package/dist/manifest-sources/local-manifest-cache-source.js.map +1 -1
  53. package/dist/module-context.d.ts +7 -0
  54. package/dist/module-context.d.ts.map +1 -1
  55. package/dist/module-context.js +27 -7
  56. package/dist/module-context.js.map +1 -1
  57. package/dist/resource-context.d.ts +5 -0
  58. package/dist/resource-context.d.ts.map +1 -1
  59. package/dist/resource-context.js +6 -0
  60. package/dist/resource-context.js.map +1 -1
  61. package/dist/schema-validator.d.ts.map +1 -1
  62. package/dist/schema-validator.js +2 -2
  63. package/dist/schema-validator.js.map +1 -1
  64. package/package.json +4 -4
  65. package/src/bundle/module-artifact.ts +50 -20
  66. package/src/bundle/module-manifest.ts +14 -1
  67. package/src/controller-loader.ts +25 -7
  68. package/src/controller-loaders/bundle-loader.ts +326 -10
  69. package/src/controller-loaders/napi-loader.ts +8 -1
  70. package/src/controller-loaders/npm-loader.ts +73 -3
  71. package/src/controller-loaders/sibling-libraries.ts +171 -0
  72. package/src/controller-loaders/source-bundle-builder.ts +303 -23
  73. package/src/controllers/module/import-controller.ts +8 -1
  74. package/src/controllers/resource-definition/resource-definition-controller.ts +7 -1
  75. package/src/index.ts +6 -1
  76. package/src/kernel.ts +59 -11
  77. package/src/manifest-schemas.ts +9 -5
  78. package/src/manifest-sources/local-manifest-cache-source.ts +20 -3
  79. package/src/module-context.ts +35 -7
  80. package/src/resource-context.ts +8 -0
  81. package/src/schema-validator.ts +1 -2
@@ -9,7 +9,8 @@ import { fileURLToPath, pathToFileURL } from "url";
9
9
  import { hostPlatformTarget } from "../bundle/module-artifact.js";
10
10
  import { ControllerEnvMissingError } from "./napi-loader.js";
11
11
  import { REALM_COLLAPSE_NAMES } from "./realm.js";
12
- import { buildControllerFromSource, canBuildFromSource } from "./source-bundle-builder.js";
12
+ import { buildControllerFromSource, canBuildFromSource, } from "./source-bundle-builder.js";
13
+ import { NO_SIBLING_LIBRARIES, } from "./sibling-libraries.js";
13
14
  /** A base URI whose files are already on disk: a `file://` URL or a bare
14
15
  * absolute path. Everything else (`oci://`, `http(s)://`, `memory://`) names a
15
16
  * module whose payload only exists inside an artifact. */
@@ -43,6 +44,10 @@ const realmLinkedDirs = new Set();
43
44
  async function ensureRealmSymlinks(bundleDir) {
44
45
  if (realmLinkedDirs.has(bundleDir))
45
46
  return;
47
+ await linkRealmNames(bundleDir);
48
+ realmLinkedDirs.add(bundleDir);
49
+ }
50
+ async function linkRealmNames(bundleDir) {
46
51
  const req = createRequire(import.meta.url);
47
52
  for (const name of REALM_COLLAPSE_NAMES) {
48
53
  let pkgRoot = null;
@@ -89,8 +94,145 @@ async function ensureRealmSymlinks(bundleDir) {
89
94
  // import surfaces the resolution failure.
90
95
  }
91
96
  }
92
- realmLinkedDirs.add(bundleDir);
93
97
  }
98
+ /**
99
+ * Make each sibling module's declared specifier resolve, from this bundle, to
100
+ * that module's own library entry point.
101
+ *
102
+ * The realm collapse above points a closed, kernel-owned name at the kernel's own
103
+ * copy. This is the same move one step out: the name is declared by the library
104
+ * (`library: [pkg:telo/local/js?…&specifier=@telorun/sql]`), and the copy comes
105
+ * from that module's artifact rather than from the kernel. What it buys is the
106
+ * same thing — resolution *and* identity — which here means one module scope for
107
+ * `@telorun/sql` across its own six controllers and every dependent, instead of
108
+ * one copy per bundle.
109
+ *
110
+ * A **synthesized package** rather than a symlink to the module's directory: a
111
+ * published artifact ships files, not a `package.json`, so there is nothing to
112
+ * link to that standard resolution would accept. The generated shim re-exports
113
+ * the materialized entry by absolute URL, and every consumer's shim re-exports
114
+ * the *same* file — Node keys its module registry by resolved URL, so the scope
115
+ * stays single however many shims point at it.
116
+ *
117
+ * Written into `node_modules/` beside the bundle, which is per module for a
118
+ * published artifact and per content-addressed build for a working copy, so two
119
+ * dependents that legitimately resolve different versions of one library never
120
+ * write over each other.
121
+ *
122
+ * **A slot something else owns is never written.** The bundle directory is not
123
+ * always the loader's: the prebuilt-`path=` branch imports out of a working copy,
124
+ * where `node_modules/@telorun/sql` is a package manager's symlink INTO the
125
+ * library's own source tree — writing through it would replace that package's
126
+ * real `package.json`. So a slot is written only when it is absent or carries the
127
+ * marker this loader stamps, which is the posture `linkRealmNames` already takes
128
+ * ("a real file/dir in the slot is left untouched"). A foreign package in the slot
129
+ * already resolves the specifier to real code; what it costs is the single-scope
130
+ * property, so it is reported rather than passed over in silence.
131
+ */
132
+ const SHIM_MARKER = "x-telo-generated";
133
+ async function ensureLibraryShims(bundleDir, entries, cacheRoot, log) {
134
+ for (const { specifier, entryFile } of entries) {
135
+ const dir = path.join(bundleDir, "node_modules", ...specifier.split("/"));
136
+ if (!(await isWritableShimSlot(dir, cacheRoot))) {
137
+ log?.debug("left an existing package in a sibling-library slot", {
138
+ "telo.library.specifier": specifier,
139
+ "telo.library.slot": dir,
140
+ "telo.library.entry": entryFile,
141
+ });
142
+ continue;
143
+ }
144
+ const target = pathToFileURL(entryFile).href;
145
+ await writeIfChanged(path.join(dir, "package.json"), `${JSON.stringify({
146
+ name: specifier,
147
+ version: "0.0.0",
148
+ type: "module",
149
+ exports: { ".": "./index.mjs" },
150
+ [SHIM_MARKER]: "sibling-library-shim",
151
+ }, null, 2)}\n`);
152
+ // `export *` and nothing else: these entry points export named bindings, and
153
+ // a re-exported `default` that does not exist is a hard syntax-level error at
154
+ // import rather than an absent binding.
155
+ await writeIfChanged(path.join(dir, "index.mjs"), `export * from ${JSON.stringify(target)};\n`);
156
+ }
157
+ }
158
+ /**
159
+ * Whether this loader may write the shim slot at `dir`.
160
+ *
161
+ * **Location first.** Every legitimate write site is inside the loader's own
162
+ * cache root — a bundle built from source lives under `<cache>/controller-src/`,
163
+ * and a published module's layers extract under `<cache>/manifests/` — so a slot
164
+ * there is ours whatever it currently holds. That is what keeps a shim written by
165
+ * an earlier kernel version (before the marker existed, or with different
166
+ * contents) updatable rather than mistaken for someone else's package.
167
+ *
168
+ * **Marker second**, for a slot outside the cache: the prebuilt-`path=` branch
169
+ * imports out of a working copy, where `node_modules/@telorun/sql` is a package
170
+ * manager's symlink straight into the sibling's own source tree. Reading the
171
+ * `package.json` **through** whatever is there settles it — a symlink resolves to
172
+ * the target's, which carries no marker — so one read covers both a link and a
173
+ * real installed package without caring which it was.
174
+ */
175
+ async function isWritableShimSlot(dir, cacheRoot) {
176
+ if (cacheRoot) {
177
+ const root = path.resolve(cacheRoot) + path.sep;
178
+ if (path.resolve(dir).startsWith(root))
179
+ return true;
180
+ }
181
+ try {
182
+ const parsed = JSON.parse(await fs.readFile(path.join(dir, "package.json"), "utf8"));
183
+ return parsed[SHIM_MARKER] !== undefined;
184
+ }
185
+ catch {
186
+ // Nothing readable there. A symlink with no package.json behind it is still
187
+ // someone else's, so refuse that too rather than writing through it.
188
+ try {
189
+ return !(await fs.lstat(dir)).isSymbolicLink();
190
+ }
191
+ catch {
192
+ return true;
193
+ }
194
+ }
195
+ }
196
+ /** Everything a bundle's directory needs before the bundle is imported: the
197
+ * kernel-owned realm names, and one shim per sibling library. */
198
+ async function prepareBundleDir(bundleDir, shims, cacheRoot, log) {
199
+ await ensureRealmSymlinks(bundleDir);
200
+ await ensureLibraryShims(bundleDir, shims, cacheRoot, log);
201
+ }
202
+ /** The externals a build of `format` code takes from a sibling-library map: the
203
+ * specifier esbuild must not inline, and the source tree the post-build check
204
+ * proves was not reached by another route. A published sibling ships no sources,
205
+ * so it is externalized with no tree to check — there is nothing there to
206
+ * inline. */
207
+ function buildExternals(libraries, format) {
208
+ const out = [];
209
+ for (const library of libraries.values()) {
210
+ if (library.selector.format !== format)
211
+ continue;
212
+ const sourceDir = library.moduleDir && library.localPath
213
+ ? path.dirname(path.resolve(library.moduleDir, library.localPath))
214
+ : undefined;
215
+ out.push({ specifier: library.specifier, ...(sourceDir ? { sourceDir } : {}) });
216
+ }
217
+ return out;
218
+ }
219
+ /** Write a generated file only when its content would change, through a private
220
+ * temp file and an atomic rename — several kernels may populate one cache
221
+ * directory at once, and a reader must see a whole file or none. */
222
+ async function writeIfChanged(file, content) {
223
+ try {
224
+ if ((await fs.readFile(file, "utf8")) === content)
225
+ return;
226
+ }
227
+ catch {
228
+ // Absent or unreadable — write it.
229
+ }
230
+ await fs.mkdir(path.dirname(file), { recursive: true });
231
+ const tmp = `${file}.${process.pid}.${shimCounter++}.tmp`;
232
+ await fs.writeFile(tmp, content);
233
+ await fs.rename(tmp, file);
234
+ }
235
+ let shimCounter = 0;
94
236
  /**
95
237
  * Walk up from a resolved entry file to the directory whose package.json `name`
96
238
  * matches — the package root to symlink (so the symlinked package.json `exports`
@@ -163,16 +305,116 @@ function findPackageRoot(entryFile, name) {
163
305
  */
164
306
  export class BundleControllerLoader {
165
307
  cacheRoot;
308
+ log;
166
309
  /** Where a dev build from `local_path` is cached (`<cache-root>/controller-src`).
167
310
  * Absent for callers that resolved no cache root, which simply disables the
168
311
  * source path — a prebuilt `path=` still loads. */
169
- constructor(cacheRoot) {
312
+ constructor(cacheRoot,
313
+ /** Reports what resolution had to leave alone — a sibling-library slot an
314
+ * installer already owns, which resolves but not to this module's own copy. */
315
+ log) {
170
316
  this.cacheRoot = cacheRoot;
317
+ this.log = log;
171
318
  }
172
- async load(purl, baseUri, artifact) {
173
- const { source, importInstance } = await this.resolve(purl, baseUri, artifact);
319
+ async load(purl, baseUri, artifact, libraries = NO_SIBLING_LIBRARIES) {
320
+ const { source, importInstance } = await this.resolve(purl, baseUri, artifact, libraries);
174
321
  return { instance: await importInstance(), source };
175
322
  }
323
+ /**
324
+ * Resolve every sibling library this bundle imports to a file on disk, and
325
+ * prepare the module scope each one will run in.
326
+ *
327
+ * Filtered to the candidate's own format: a `js` bundle imports the `js` entry
328
+ * point, and a Rust crate of the same module — a different specifier entirely —
329
+ * is not its business. The host platform gate is the same one the candidate
330
+ * itself passed, since a library layer is selected exactly as a controller
331
+ * layer is.
332
+ */
333
+ async libraryEntries(libraries, format, purl, seen) {
334
+ const host = hostPlatformTarget();
335
+ const out = [];
336
+ for (const library of libraries.values()) {
337
+ if (library.selector.format !== format)
338
+ continue;
339
+ if (!selectorMatches(library.selector, host))
340
+ continue;
341
+ out.push({
342
+ specifier: library.specifier,
343
+ entryFile: await this.prepareLibrary(library, format, purl, seen),
344
+ });
345
+ }
346
+ return out;
347
+ }
348
+ /**
349
+ * The file a sibling's specifier resolves to, with that file's own imports made
350
+ * resolvable in turn.
351
+ *
352
+ * A library is delivered exactly as a controller is, so it takes the same two
353
+ * routes: a published module's entry point comes out of its `library` layer,
354
+ * and a working copy's is built from `local_path` so an edit is picked up with
355
+ * no build step. The recursion is real — a library that imports another library
356
+ * needs its own shims beside it — and `seen` bounds it at one visit per module.
357
+ */
358
+ async prepareLibrary(library, format, purl, seen) {
359
+ const entryFile = await this.libraryEntryFile(library, format, purl);
360
+ const dir = path.dirname(entryFile);
361
+ if (!seen.has(library.moduleSource)) {
362
+ seen.add(library.moduleSource);
363
+ const nested = await this.libraryEntries(library.libraries, format, purl, seen);
364
+ await ensureLibraryShims(dir, nested, this.cacheRoot, this.log);
365
+ }
366
+ // A library entry imports `@telorun/sdk` like any controller does.
367
+ await ensureRealmSymlinks(dir);
368
+ return entryFile;
369
+ }
370
+ /**
371
+ * The file a library's specifier resolves to.
372
+ *
373
+ * Every failure here is `ControllerEnvMissingError`, and that is a choice worth
374
+ * defending: it is not "this host lacks an environment" in the ordinary sense.
375
+ * But a library is resolved **per format**, so a failure is scoped to ONE
376
+ * candidate — the `js` library being absent says nothing about whether a
377
+ * `napi` candidate of the same kind can run, and the candidate list is exactly
378
+ * the mechanism for trying it. Failing hard would abort a list a sibling
379
+ * candidate could still satisfy. It also matches how the controller path
380
+ * already treats the same shapes: a missing bundle file and a selector the
381
+ * artifact ships no layer for are both env-missing there. What must never be
382
+ * masked this way is a *build* failure or a malformed bundle, and neither is
383
+ * reachable from here — those keep their hard codes. Each message names the
384
+ * sibling module and the action, and the aggregated
385
+ * `ERR_CONTROLLER_NOT_FOUND` carries every one of them.
386
+ */
387
+ async libraryEntryFile(library, format, purl) {
388
+ if (library.artifact) {
389
+ const resolved = await library.artifact.materializeLibrary(library.selector);
390
+ if (!resolved) {
391
+ throw new ControllerEnvMissingError(`pkg:telo controller "${purl}" imports "${library.specifier}", but module ` +
392
+ `${library.moduleSource} ships no ${format} library layer for it ` +
393
+ `(has: ${library.artifact.describeLayers()}). Republish that module.`);
394
+ }
395
+ return path.resolve(resolved.layer.dir, library.path);
396
+ }
397
+ if (!library.moduleDir) {
398
+ throw new ControllerEnvMissingError(`pkg:telo controller "${purl}" imports "${library.specifier}", but module ` +
399
+ `${library.moduleSource} has no local directory to resolve its library entry point in.`);
400
+ }
401
+ // Working copy: the source is authoritative, exactly as it is for a
402
+ // controller — a stale checked-in bundle would otherwise shadow the edit.
403
+ const source = library.localPath
404
+ ? path.resolve(library.moduleDir, library.localPath)
405
+ : undefined;
406
+ if (source !== undefined &&
407
+ this.cacheRoot !== undefined &&
408
+ (await pathExists(source)) &&
409
+ (await canBuildFromSource())) {
410
+ return buildControllerFromSource(source, this.cacheRoot, buildExternals(library.libraries, format));
411
+ }
412
+ const prebuilt = path.resolve(library.moduleDir, library.path);
413
+ if (await pathExists(prebuilt))
414
+ return prebuilt;
415
+ throw new ControllerEnvMissingError(`pkg:telo controller "${purl}" imports "${library.specifier}", whose entry point is not at ` +
416
+ `"${prebuilt}"${source ? ` and whose source "${source}" cannot be built here` : ""}.`);
417
+ }
176
418
  /**
177
419
  * Resolve without importing: parse + validate the PURL, reject a candidate this
178
420
  * host cannot run, materialize the layer that carries it, confirm the file
@@ -180,7 +422,7 @@ export class BundleControllerLoader {
180
422
  * bundle `import()` (the eval cost) into the returned `importInstance` thunk.
181
423
  * Used by lazy controller loading.
182
424
  */
183
- async resolve(purl, baseUri, artifact) {
425
+ async resolve(purl, baseUri, artifact, libraries = NO_SIBLING_LIBRARIES) {
184
426
  let parsed;
185
427
  try {
186
428
  parsed = PackageURL.fromString(purl);
@@ -235,6 +477,13 @@ export class BundleControllerLoader {
235
477
  cacheRoot !== undefined &&
236
478
  (await pathExists(sourceFile)) &&
237
479
  (await canBuildFromSource());
480
+ // Every sibling library this bundle imports, resolved before the bundle is:
481
+ // its `import { KeyedClaim } from "@telorun/kv-store"` has to have a file
482
+ // behind it, and which file that is depends on the import graph rather than
483
+ // on anything inside the bundle. Done at resolve time with the other
484
+ // fail-fast checks, so an unresolvable library reports itself as a candidate
485
+ // this host cannot run rather than as an opaque module-not-found at import.
486
+ const shims = await this.libraryEntries(libraries, format, purl, new Set());
238
487
  if (buildFromSource) {
239
488
  // The same file the prebuilt branch would import, kept as the fallback for
240
489
  // an environment that stops being able to build between resolve and first
@@ -249,17 +498,17 @@ export class BundleControllerLoader {
249
498
  importInstance: async () => {
250
499
  let built;
251
500
  try {
252
- built = await buildControllerFromSource(sourceFile, cacheRoot);
501
+ built = await buildControllerFromSource(sourceFile, cacheRoot, buildExternals(libraries, format));
253
502
  }
254
503
  catch (err) {
255
504
  if (!(err instanceof ControllerEnvMissingError))
256
505
  throw err;
257
506
  if (!(await pathExists(prebuilt)))
258
507
  throw err;
259
- await ensureRealmSymlinks(path.dirname(prebuilt));
508
+ await prepareBundleDir(path.dirname(prebuilt), shims, this.cacheRoot, this.log);
260
509
  return importControllerModule(prebuilt, purl, fragment);
261
510
  }
262
- await ensureRealmSymlinks(path.dirname(built));
511
+ await prepareBundleDir(path.dirname(built), shims, this.cacheRoot, this.log);
263
512
  return importControllerModule(built, purl, fragment);
264
513
  },
265
514
  };
@@ -299,9 +548,9 @@ export class BundleControllerLoader {
299
548
  if (!(await pathExists(absFile))) {
300
549
  throw new ControllerEnvMissingError(`pkg:telo controller bundle not found at "${absFile}" (from "${purl}")`);
301
550
  }
302
- // Make bare `@telorun/sdk` (etc.) resolve to the kernel's copy before
551
+ // Make bare `@telorun/sdk` (etc.) and every sibling library resolve before
303
552
  // importing the bundle, so authors write normal imports.
304
- await ensureRealmSymlinks(path.dirname(absFile));
553
+ await prepareBundleDir(path.dirname(absFile), shims, this.cacheRoot, this.log);
305
554
  return {
306
555
  source,
307
556
  importInstance: () => importControllerModule(absFile, purl, fragment),
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-loader.js","sourceRoot":"","sources":["../../src/controller-loaders/bundle-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle-loader.js","sourceRoot":"","sources":["../../src/controller-loaders/bundle-loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"napi-loader.d.ts","sourceRoot":"","sources":["../../src/controller-loaders/napi-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAgB,MAAM,cAAc,CAAC;AAahE;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,WAAW,EAAG,IAAI,CAAU;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAgDD,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AACD,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,qBAAa,oBAAoB;IAC/B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAKlE;;;;;;OAMG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA;KAAE,CAAC;YAmE9E,YAAY;CAoE3B"}
1
+ {"version":3,"file":"napi-loader.d.ts","sourceRoot":"","sources":["../../src/controller-loaders/napi-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAgB,MAAM,cAAc,CAAC;AAchE;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,WAAW,EAAG,IAAI,CAAU;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAgDD,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AACD,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,qBAAa,oBAAoB;IAC/B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAKlE;;;;;;OAMG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA;KAAE,CAAC;YAyE9E,YAAY;CAoE3B"}
@@ -4,6 +4,7 @@ import * as fs from "fs/promises";
4
4
  import { createRequire } from "module";
5
5
  import { PackageURL } from "packageurl-js";
6
6
  import * as path from "path";
7
+ import { fileURLToPath } from "url";
7
8
  import { promisify } from "util";
8
9
  import { hostEnv } from "../host-env.js";
9
10
  const execFileAsync = promisify(execFile);
@@ -109,7 +110,13 @@ export class NapiControllerLoader {
109
110
  if (!localPath || !isLocalManifest) {
110
111
  throw new ControllerEnvMissingError(`pkg:cargo distribution-mode resolution is not implemented for the PoC; supply ?local_path=...`);
111
112
  }
112
- const baseUriPath = baseUri.startsWith("file://") ? baseUri.slice("file://".length) : baseUri;
113
+ // `fileURLToPath`, never a slice of the prefix. A file URL's path is not a
114
+ // filesystem path: on Windows `file:///D:/a/telo/telo.yaml` sliced at seven
115
+ // characters leaves `/D:/a/telo/telo.yaml`, whose leading slash makes
116
+ // `path.resolve` graft the cwd's drive on and produce `D:\D:\a\telo\…`. It
117
+ // also leaves percent-escapes undecoded on every platform, so a manifest
118
+ // under a directory with a space resolved to a path that does not exist.
119
+ const baseUriPath = baseUri.startsWith("file://") ? fileURLToPath(baseUri) : baseUri;
113
120
  const manifestDir = path.dirname(baseUriPath);
114
121
  const cratePath = path.resolve(manifestDir, localPath);
115
122
  if (!(await pathExists(cratePath))) {
@@ -1 +1 @@
1
- {"version":3,"file":"napi-loader.js","sourceRoot":"","sources":["../../src/controller-loaders/napi-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"napi-loader.js","sourceRoot":"","sources":["../../src/controller-loaders/napi-loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"npm-loader.d.ts","sourceRoot":"","sources":["../../src/controller-loaders/npm-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAe,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AA+C5E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,cAAc,GAAG,aAAa,GAAG,OAAO,CAAC;AAoBlF,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,mBAAmB;IAC9B;;mEAE+D;IAC/D,OAAO,CAAC,GAAG,CAAuB;IAElC,mEAAmE;IACnE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAS;IACnC,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAS;IAE9C;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IAEpD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAEhE;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAC,CAAkB;IAEpC;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAA8B;gBAElC,OAAO,GAAE,0BAA+B;IAK9C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjE;;;;;OAKG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,cAAc,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA;KAAE,CAAC;IA2B3F;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;YAUX,sBAAsB;IA4GpC;;;;;;;OAOG;YACW,aAAa;IAe3B;;;;;;;;;;;;;;OAcG;YACW,cAAc;CA+H7B;AAqHD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA4BpD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAMzE;AAED;;;;;;GAMG;AACH,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAKpE;AAsND;;;;GAIG;AACH,iBAAe,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOrE;AAED,iBAAS,0BAA0B,CACjC,YAAY,EAAE,GAAG,EACjB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,GAChC,MAAM,GAAG,IAAI,CAIf;AAED,iBAAS,wBAAwB,CAC/B,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,IAAI,CAoBf;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;CAUvB,CAAC"}
1
+ {"version":3,"file":"npm-loader.d.ts","sourceRoot":"","sources":["../../src/controller-loaders/npm-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAe,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AA+C5E;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,cAAc,GAAG,aAAa,GAAG,OAAO,CAAC;AAoBlF,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,mBAAmB;IAC9B;;mEAE+D;IAC/D,OAAO,CAAC,GAAG,CAAuB;IAElC,mEAAmE;IACnE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAS;IACnC,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAS;IAE9C;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IAEpD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAEhE;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAC,CAAkB;IAEpC;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAA8B;gBAElC,OAAO,GAAE,0BAA+B;IAK9C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjE;;;;;OAKG;IACG,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,cAAc,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA;KAAE,CAAC;IA2B3F;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;YAUX,sBAAsB;IA4GpC;;;;;;;OAOG;YACW,aAAa;IAe3B;;;;;;;;;;;;;;OAcG;YACW,cAAc;CA+H7B;AA2LD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA4BpD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAMzE;AAED;;;;;;GAMG;AACH,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAKpE;AAsND;;;;GAIG;AACH,iBAAe,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOrE;AAED,iBAAS,0BAA0B,CACjC,YAAY,EAAE,GAAG,EACjB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,GAChC,MAAM,GAAG,IAAI,CAIf;AAED,iBAAS,wBAAwB,CAC/B,MAAM,EAAE,GAAG,EACX,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,IAAI,CAoBf;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;CAUvB,CAAC"}
@@ -445,13 +445,75 @@ async function resolveKernelPackageRoot(name) {
445
445
  dir = parent;
446
446
  }
447
447
  }
448
+ /**
449
+ * Windows ships no executable named `npm`. npm, pnpm and every corepack shim
450
+ * are `.cmd` files: libuv's PATH search probes only `.com`/`.exe` so it never
451
+ * finds one, and Node has refused to spawn `.cmd`/`.bat` without a shell since
452
+ * CVE-2024-27980. The install therefore has to go through `cmd.exe`.
453
+ *
454
+ * Going through cmd.exe makes quoting OURS. Node builds the line as
455
+ * `cmd.exe /d /s /c "<file> <args joined by single spaces>"` and quotes
456
+ * nothing, so a `file:` install spec holding a space would be re-split into two
457
+ * arguments, and cmd's metacharacters (`& ^ | < > ( )`) would be interpreted
458
+ * before npm ever saw them — `^` is the one that matters here, since it is both
459
+ * cmd's escape character and legal in the semver ranges a spec carries. Under
460
+ * `/s` cmd strips the outer pair and takes the remainder verbatim, so quoting
461
+ * each token individually is what makes the line arrive intact.
462
+ *
463
+ * A literal `"` is rejected rather than escaped: it toggles cmd's quote state,
464
+ * the escape that restores it differs between cmd and the batch shim's own
465
+ * parser, and no install spec has any business carrying one. Residual cmd
466
+ * limitation: `%VAR%` still expands inside quotes and cannot be escaped on a
467
+ * command line (only in a batch file), so an install root under a directory
468
+ * whose name spells a defined environment variable is not reachable here. A
469
+ * lone `%` is left alone by cmd and is safe.
470
+ */
471
+ function quoteForCmd(token) {
472
+ if (token.includes('"')) {
473
+ throw new Error(`[telo] cannot pass '${token}' to '${PACKAGE_MANAGER}' on Windows: a literal '"' has no ` +
474
+ `portable escape through cmd.exe. Move the install root to a path without one.`);
475
+ }
476
+ return `"${token}"`;
477
+ }
478
+ /**
479
+ * The COMMAND is quoted only when it cannot be left bare, where every argument
480
+ * is quoted unconditionally. The asymmetry is not tidiness — quoting a bare
481
+ * command name breaks the batch shim it resolves to.
482
+ *
483
+ * `npm.cmd` locates the CLI it exists to launch relative to itself:
484
+ *
485
+ * SET "NPM_PREFIX_JS=%~dp0\node_modules\npm\bin\npm-prefix.js"
486
+ * SET "NPM_CLI_JS=%~dp0\node_modules\npm\bin\npm-cli.js"
487
+ *
488
+ * `%0` is the token as it appeared on the command line, and cmd substitutes the
489
+ * resolved script path only for a BARE one. Quoted, `%0` stays `"npm"`, so
490
+ * `%~dp0` — drive and path of a token carrying neither — expands against the
491
+ * current directory instead. The shim then looked for npm inside Telo's install
492
+ * root (`<root>/.telo/npm`), found no `node_modules/npm/bin/`, and both `SET`
493
+ * lines produced a MODULE_NOT_FOUND for a path that was never going to exist.
494
+ *
495
+ * A command that genuinely needs quoting is a path rather than a bare name
496
+ * (`TELO_PKG_MANAGER=C:\Program Files\nodejs\npm.cmd`), and there `%0` already
497
+ * carries a directory, so `%~dp0` is right whether or not it was quoted. Both
498
+ * cases are therefore correct, which is what makes this conditional rather than
499
+ * a preference.
500
+ */
501
+ const CMD_NEEDS_QUOTING = /[\s&^|<>()]/;
448
502
  async function runPackageManager(cwd, args) {
503
+ const viaCmd = process.platform === "win32";
449
504
  try {
450
- await execFileAsync(PACKAGE_MANAGER, args, { cwd, maxBuffer: 32 * 1024 * 1024, env: hostEnv() });
505
+ await execFileAsync(viaCmd && CMD_NEEDS_QUOTING.test(PACKAGE_MANAGER)
506
+ ? quoteForCmd(PACKAGE_MANAGER)
507
+ : PACKAGE_MANAGER, viaCmd ? args.map(quoteForCmd) : args, { cwd, maxBuffer: 32 * 1024 * 1024, env: hostEnv(), shell: viaCmd });
451
508
  }
452
509
  catch (err) {
453
- const isMissing = err?.code === "ENOENT" ||
454
- /not found|command not recognized/i.test(err?.message ?? "");
510
+ // Through a shell the binary always resolves — cmd.exe itself exists — so a
511
+ // missing package manager arrives as cmd's own 9009 plus "is not recognized
512
+ // as an internal or external command" on stderr, never as ENOENT. Matching
513
+ // only the direct-spawn shape reported that as a generic install failure and
514
+ // buried the one line saying what to install.
515
+ const said = `${err?.message ?? ""}\n${err?.stderr ?? ""}`;
516
+ const isMissing = err?.code === "ENOENT" || err?.code === 9009 || /not found|not recognized/i.test(said);
455
517
  if (isMissing) {
456
518
  throw new Error(`[telo] '${PACKAGE_MANAGER}' not found on PATH. Telo's controller installer requires a ` +
457
519
  `JavaScript package manager (npm or pnpm). Install Node.js (which bundles npm) or set ` +