@telorun/cli 0.24.1 → 0.25.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 CHANGED
@@ -123,7 +123,7 @@ Per-manifest scope means the whole `.telo/` tree is naturally portable: `COPY` t
123
123
 
124
124
  ```
125
125
  Installing 20 controllers for apps/my-app/telo.yaml
126
- ✓ pkg:npm/@telorun/http-server@0.8.1?local_path=./nodejs#http-server
126
+ ✓ pkg:npm/@telorun/http-server@0.10.0?local_path=./nodejs#http-server
127
127
  ✓ pkg:npm/@telorun/http-client@0.6.0?local_path=./nodejs#http-client
128
128
  ...
129
129
 
@@ -234,8 +234,8 @@ kind: Telo.Application
234
234
  metadata:
235
235
  name: Example
236
236
  imports:
237
- HttpServer: std/http-server@0.9.0
238
- JavaScript: std/javascript@0.4.1
237
+ HttpServer: std/http-server@0.11.0
238
+ JavaScript: std/javascript@0.5.0
239
239
  targets:
240
240
  - Server
241
241
  ---
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AA0JlC,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAqBhD"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAuMlC,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAqBhD"}
@@ -1,5 +1,5 @@
1
1
  import { Loader, flattenForAnalyzer } from "@telorun/analyzer";
2
- import { ControllerLoader, LocalFileSource, resolveEntryDir, writeManifestCache, } from "@telorun/kernel";
2
+ import { ControllerLoader, Kernel, LocalFileSource, LocalManifestCacheSource, resolveEntryDir, writeManifestCache, } from "@telorun/kernel";
3
3
  import * as path from "path";
4
4
  import { pathToFileURL } from "url";
5
5
  import { createLogger } from "../logger.js";
@@ -33,6 +33,40 @@ function collectControllerJobs(manifests) {
33
33
  }
34
34
  return Array.from(byKey.values());
35
35
  }
36
+ /**
37
+ * Bake the kernel's analysis caches into `<entryDir>/.telo/manifests/` so a
38
+ * prebuilt image boots without re-deriving them. `writeManifestCache` (above)
39
+ * only warms the URL→content manifest cache and `.telo/npm/`; the analysis
40
+ * stamp (`.validated.json`) and the compiled `__validators/` schema cache are
41
+ * produced exclusively by `kernel.load`. Without this pass the runtime
42
+ * `kernel.load` — running on a read-only session rootfs — misses the stamp,
43
+ * re-runs the full validation walk on every boot, and fails to persist either
44
+ * cache (EROFS / ENOENT noise on stderr).
45
+ *
46
+ * Runs the same offline `kernel.load` the runtime uses (LocalFileSource +
47
+ * LocalManifestCacheSource, same registry URL) in `analyzeOnly` mode, so the
48
+ * stamp's content signature matches byte-for-byte at run time. Best-effort:
49
+ * a failure here (e.g. a manifest that fails analysis) is surfaced as a
50
+ * warning but does not fail the install — the runtime re-validates and
51
+ * reports the real error there.
52
+ */
53
+ async function warmAnalysisCache(entryPath, entryDir, registryUrl, log) {
54
+ try {
55
+ const kernel = new Kernel({
56
+ registryUrl,
57
+ sources: [
58
+ new LocalFileSource(),
59
+ new LocalManifestCacheSource(entryDir, registryUrl),
60
+ ],
61
+ });
62
+ await kernel.load(entryPath, { analyzeOnly: true });
63
+ console.log(` ${log.ok("✓")} warmed analysis cache in ${log.dim(path.relative(process.cwd(), path.join(entryDir, ".telo/manifests")))}`);
64
+ }
65
+ catch (err) {
66
+ console.error(` ${log.warn("⚠")} analysis cache not warmed: ` +
67
+ (err instanceof Error ? err.message : String(err)));
68
+ }
69
+ }
36
70
  async function installOne(inputPath, registryUrl, log) {
37
71
  const isUrl = inputPath.startsWith("http://") || inputPath.startsWith("https://");
38
72
  const entryPath = isUrl ? inputPath : path.resolve(process.cwd(), inputPath);
@@ -83,6 +117,8 @@ async function installOne(inputPath, registryUrl, log) {
83
117
  const jobs = collectControllerJobs(manifests);
84
118
  if (jobs.length === 0) {
85
119
  console.log(log.ok("✓") + ` ${displayPath}: no controllers to install`);
120
+ if (entryDir)
121
+ await warmAnalysisCache(entryPath, entryDir, registryUrl, log);
86
122
  return true;
87
123
  }
88
124
  console.log(`Installing ${jobs.length} controller${jobs.length !== 1 ? "s" : ""} for ${log.dim(displayPath)}`);
@@ -117,6 +153,8 @@ async function installOne(inputPath, registryUrl, log) {
117
153
  const elapsed = ((Date.now() - started) / 1000).toFixed(1);
118
154
  if (failed === 0) {
119
155
  console.log(`\n${log.ok("✓")} ${jobs.length} installed in ${elapsed}s`);
156
+ if (entryDir)
157
+ await warmAnalysisCache(entryPath, entryDir, registryUrl, log);
120
158
  return true;
121
159
  }
122
160
  console.log(`\n${log.error(`${failed} failed`)}, ${jobs.length - failed} installed in ${elapsed}s`);
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAe,MAAM,cAAc,CAAC;AAEzD,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;AAWzD;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,SAA6B;IAC1D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE/C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB;YAAE,SAAS;QAC3C,MAAM,WAAW,GAAI,CAAS,CAAC,WAAmC,CAAC;QACnE,IAAI,CAAC,WAAW,EAAE,MAAM;YAAE,SAAS;QAEnC,MAAM,OAAO,GAAK,CAAC,CAAC,QAAgB,EAAE,MAA6B,IAAI,EAAE,CAAC;QAC1E,4EAA4E;QAC5E,yEAAyE;QACzE,oDAAoD;QACpD,MAAM,GAAG,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAE7B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC;QACpE,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,SAAS;QACX,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,SAAiB,EACjB,WAAmB,EACnB,GAAW;IAEX,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAClF,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;IAEhF,4EAA4E;IAC5E,uEAAuE;IACvE,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACxB,YAAY,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC;QACrC,WAAW;KACZ,CAAC,CAAC;IACH,IAAI,SAA6B,CAAC;IAClC,IAAI,KAAmD,CAAC;IACxD,IAAI,CAAC;QACH,mEAAmE;QACnE,kEAAkE;QAClE,yDAAyD;QACzD,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACzD,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,GAAG,WAAW,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;YACvC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACrD,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,2EAA2E;IAC3E,qEAAqE;IACrE,wEAAwE;IACxE,+DAA+D;IAC/D,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YACvE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CACT,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,MAAM,YAAY,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAC5K,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,GAAG,WAAW,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,oCAAoC;gBACvE,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACrD,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAE9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,WAAW,6BAA6B,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,MAAM,cAAc,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAE/G,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,yEAAyE;IACzE,kEAAkE;IAClE,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzE,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CACjE,CAAC;IAEF,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC;YACT,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,MAAM,GAAG,GAAG,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACtE,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,iBAAiB,OAAO,GAAG,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAG,CACT,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,MAAM,iBAAiB,OAAO,GAAG,CACvF,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAG7B;IACC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEhC,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,MAAM,WAAW,GACf,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;IAE5E,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE;YAAE,MAAM,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAW;IACxC,OAAO,KAAK,CAAC,OAAO,CAClB,mBAAmB,EACnB,4FAA4F,EAC5F,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC;SACE,UAAU,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,4EAA4E;QACtF,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,cAAc,EAAE;QACtB,IAAI,EAAE,QAAQ;QACd,QAAQ,EACN,qEAAqE;KACxE,CAAC,EACN,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,OAAO,CAAC,IAAW,CAAC,CAAC;IAC7B,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Argv } from "yargs";
2
- export declare function run(argv: {
2
+ type RunArgv = {
3
3
  path: string;
4
4
  verbose: boolean;
5
5
  debug: boolean;
@@ -7,6 +7,8 @@ export declare function run(argv: {
7
7
  watch: boolean;
8
8
  registryUrl?: string;
9
9
  "--"?: string[];
10
- }): Promise<void>;
10
+ };
11
+ export declare function run(argv: RunArgv): Promise<void>;
11
12
  export declare function runCommand(yargs: Argv): Argv;
13
+ export {};
12
14
  //# sourceMappingURL=run.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAqGlC,wBAAsB,GAAG,CAAC,IAAI,EAAE;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8HhB;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAmD5C"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAsIlC,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAwFF,wBAAsB,GAAG,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BtD;AAyED,wBAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAmD5C"}
@@ -31,27 +31,67 @@ function tryReadFile(filePath) {
31
31
  return "";
32
32
  }
33
33
  }
34
- function setupWatchMode(kernel, log) {
34
+ /** The local manifest files a loaded graph was built from — entry, every
35
+ * `include:` partial, and every transitively-imported library + its partials.
36
+ * Remote (`http(s)://`) sources are skipped; only on-disk files are watchable.
37
+ * Empty until `load()` succeeds (the graph is dropped again on teardown), so
38
+ * callers must snapshot the set before `start()`. */
39
+ function collectWatchFiles(kernel) {
40
+ const files = new Set();
41
+ const add = (source) => {
42
+ if (!source)
43
+ return;
44
+ if (source.startsWith("file://")) {
45
+ files.add(fileURLToPath(source));
46
+ }
47
+ else if (!/^[a-z][a-z0-9+.-]*:\/\//i.test(source)) {
48
+ // No URL scheme → an absolute local path (the loader's canonical form
49
+ // for local files). A scheme like `https://` is remote, skip it.
50
+ files.add(source);
51
+ }
52
+ };
53
+ const graph = kernel.getLoadedGraph();
54
+ if (graph) {
55
+ for (const mod of graph.modules.values()) {
56
+ add(mod.owner.source);
57
+ for (const partial of mod.partials)
58
+ add(partial.source);
59
+ }
60
+ }
61
+ return files;
62
+ }
63
+ /** Best-effort entry file for the load-failed case, where no graph exists to
64
+ * enumerate. A directory entry resolves to its `telo.yaml`. */
65
+ function entryFilePath(manifestPath) {
66
+ const resolved = path.resolve(manifestPath);
67
+ if (fs.existsSync(resolved) && fs.statSync(resolved).isDirectory()) {
68
+ return path.join(resolved, "telo.yaml");
69
+ }
70
+ return resolved;
71
+ }
72
+ /** One watcher set for the whole watch session. `onChange` is called, debounced
73
+ * per file, on every change to any watched path. */
74
+ function createWatcherSet(log, onChange) {
35
75
  const watchers = new Map();
36
76
  const debounceTimers = new Map();
37
- const reloading = new Set();
38
77
  let active = true;
39
- function watchFile(filePath) {
40
- if (!active || watchers.has(filePath))
78
+ function watchFile(fsPath) {
79
+ if (!active || watchers.has(fsPath))
41
80
  return;
42
- // getSourceFiles() returns file:// URLs; fs.watch needs a filesystem path
43
- const fsPath = filePath.startsWith("file://") ? fileURLToPath(filePath) : filePath;
44
81
  let watcher;
45
82
  try {
46
83
  watcher = fs.watch(fsPath, () => {
47
84
  if (!active)
48
85
  return;
49
- const existing = debounceTimers.get(filePath);
86
+ const existing = debounceTimers.get(fsPath);
50
87
  if (existing)
51
88
  clearTimeout(existing);
52
- debounceTimers.set(filePath, setTimeout(() => {
53
- debounceTimers.delete(filePath);
54
- void handleChange(filePath);
89
+ debounceTimers.set(fsPath, setTimeout(() => {
90
+ debounceTimers.delete(fsPath);
91
+ if (!active)
92
+ return;
93
+ log.info(`[watch] change detected in ${fsPath}`);
94
+ onChange();
55
95
  }, 150));
56
96
  });
57
97
  }
@@ -60,85 +100,126 @@ function setupWatchMode(kernel, log) {
60
100
  }
61
101
  watcher.on("error", () => {
62
102
  // OS invalidated the watch (e.g. file deleted). Remove and re-establish.
63
- if (watchers.get(filePath) === watcher) {
64
- watchers.delete(filePath);
103
+ if (watchers.get(fsPath) === watcher) {
104
+ watchers.delete(fsPath);
65
105
  setTimeout(() => {
66
106
  if (active)
67
- watchFile(filePath);
107
+ watchFile(fsPath);
68
108
  }, 50);
69
109
  }
70
110
  });
71
- watchers.set(filePath, watcher);
111
+ watchers.set(fsPath, watcher);
72
112
  }
73
- async function handleChange(filePath) {
74
- // Prevent concurrent reloads for the same file
75
- if (reloading.has(filePath))
76
- return;
77
- reloading.add(filePath);
78
- log.info(`[watch] reloading ${filePath}`);
79
- try {
80
- // await kernel.reloadSource(filePath);
81
- // Watch any new files that appeared after reload
82
- // for (const f of kernel.getSourceFiles()) watchFile(f);
83
- log.info(log.ok(`[watch] complete`));
84
- }
85
- catch (err) {
86
- log.info(log.error(`[watch] error: ${err instanceof Error ? err.message : String(err)}`));
87
- }
88
- finally {
89
- reloading.delete(filePath);
90
- }
113
+ return {
114
+ sync(files) {
115
+ for (const f of files)
116
+ watchFile(f);
117
+ return watchers.size;
118
+ },
119
+ cleanup() {
120
+ active = false;
121
+ for (const t of debounceTimers.values())
122
+ clearTimeout(t);
123
+ debounceTimers.clear();
124
+ for (const w of watchers.values())
125
+ w.close();
126
+ watchers.clear();
127
+ },
128
+ };
129
+ }
130
+ function registryUrlFor(argv) {
131
+ // The CLI owns the registry-URL fallback chain: --registry-url > TELO_REGISTRY_URL >
132
+ // RegistrySource default. The kernel itself does no env lookup — programmatic
133
+ // callers (tests, SDK) pass registryUrl explicitly when they need one.
134
+ return argv.registryUrl ?? process.env.TELO_REGISTRY_URL ?? "https://registry.telo.run";
135
+ }
136
+ async function buildKernel(argv, log) {
137
+ const registryUrl = argv.registryUrl ?? process.env.TELO_REGISTRY_URL;
138
+ // The manifest cache (populated by `telo install`) wins over the registry
139
+ // / HTTP sources so production images boot without any registry network
140
+ // I/O. A missing cache file falls through transparently — dev runs and
141
+ // ad-hoc invocations work unchanged.
142
+ const sources = [new LocalFileSource()];
143
+ const entryDir = resolveEntryDir(argv.path);
144
+ if (entryDir) {
145
+ // Pass the same registry URL the kernel will use so the cache source's
146
+ // URL→path mapping matches what `telo install` wrote.
147
+ sources.push(new LocalManifestCacheSource(entryDir, registryUrlFor(argv)));
148
+ }
149
+ const kernel = new Kernel({ argv: argv["--"], registryUrl, sources });
150
+ // Pretty controller-download progress. With --verbose, always render
151
+ // (so captured logs/CI output get the lines too); otherwise gate on TTY
152
+ // so CI and the docker service stay silent.
153
+ attachControllerProgress(kernel, log, { force: argv.verbose });
154
+ if (argv.debug) {
155
+ const debugDir = path.join(process.cwd(), ".telo-debug");
156
+ const eventStreamPath = path.join(debugDir, "events.jsonl");
157
+ await kernel.enableEventStream(eventStreamPath);
158
+ log.info(`Event stream enabled: ${eventStreamPath}`);
159
+ }
160
+ return kernel;
161
+ }
162
+ /**
163
+ * Write-through to `<entry-dir>/.telo/manifests/` after a successful load. Same
164
+ * persistence path as `telo install` — reuses `writeManifestCache` so cache
165
+ * contents converge no matter which command populates them. Idempotent: a graph
166
+ * whose files all came from `file://` sources (cache hit) results in no writes,
167
+ * since `cachePathForCanonical` returns null for non-cacheable schemes. On
168
+ * read-only filesystems (e.g. baked Docker images) we surface the error but do
169
+ * not abort — caching is an optimization.
170
+ */
171
+ async function persistManifestCache(argv, kernel, log) {
172
+ const entryDir = resolveEntryDir(argv.path);
173
+ if (!entryDir)
174
+ return;
175
+ const graph = kernel.getLoadedGraph();
176
+ if (!graph)
177
+ return;
178
+ try {
179
+ await writeManifestCache(graph, entryDir, registryUrlFor(argv));
91
180
  }
92
- function cleanup() {
93
- active = false;
94
- for (const t of debounceTimers.values())
95
- clearTimeout(t);
96
- debounceTimers.clear();
97
- for (const w of watchers.values())
98
- w.close();
99
- watchers.clear();
181
+ catch (err) {
182
+ // Warnings belong on stderr — stdout is reserved for the manifest's own
183
+ // output (consumers may pipe `telo run` into jq / a downstream process).
184
+ process.stderr.write(`${log.warn(`[manifest-cache] write failed: ${err instanceof Error ? err.message : String(err)}`)}\n`);
100
185
  }
101
- // for (const f of kernel.getSourceFiles()) watchFile(f);
102
- return { cleanup };
186
+ }
187
+ /** Format an error as diagnostics on the terminal. Returns the non-warning
188
+ * count so the single-shot path can pick an exit code while watch keeps going. */
189
+ function reportError(argv, error, log) {
190
+ const isUrl = argv.path.startsWith("http://") || argv.path.startsWith("https://");
191
+ const displayPath = isUrl
192
+ ? argv.path
193
+ : path.relative(process.cwd(), path.resolve(process.cwd(), argv.path));
194
+ const attached = error?.diagnostics;
195
+ const diags = attached?.length
196
+ ? attached
197
+ : [
198
+ {
199
+ message: error instanceof Error ? error.message : String(error),
200
+ code: error?.code,
201
+ },
202
+ ];
203
+ formatDiagnostics(diags, log, displayPath);
204
+ const errorCount = diags.filter((d) => d.severity !== "warning").length;
205
+ const warnCount = diags.filter((d) => d.severity === "warning").length;
206
+ const parts = [];
207
+ if (errorCount > 0)
208
+ parts.push(log.error(`${errorCount} error${errorCount !== 1 ? "s" : ""}`));
209
+ if (warnCount > 0)
210
+ parts.push(log.warn(`${warnCount} warning${warnCount !== 1 ? "s" : ""}`));
211
+ console.error(`\n${parts.join(", ")}`);
212
+ return errorCount;
103
213
  }
104
214
  export async function run(argv) {
105
215
  const log = createLogger(argv.verbose);
216
+ if (argv.watch) {
217
+ await runWatch(argv, log);
218
+ return;
219
+ }
106
220
  try {
107
- // The CLI owns the registry-URL fallback chain: --registry-url > TELO_REGISTRY_URL >
108
- // RegistrySource default. The kernel itself does no env lookup — programmatic
109
- // callers (tests, SDK) pass registryUrl explicitly when they need one.
110
- const registryUrl = argv.registryUrl ?? process.env.TELO_REGISTRY_URL;
111
- // The manifest cache (populated by `telo install`) wins over the registry
112
- // / HTTP sources so production images boot without any registry network
113
- // I/O. A missing cache file falls through transparently — dev runs and
114
- // ad-hoc invocations work unchanged.
115
- const sources = [new LocalFileSource()];
116
- const entryDir = resolveEntryDir(argv.path);
117
- if (entryDir) {
118
- // Pass the same registry URL the kernel will use so the cache source's
119
- // URL→path mapping matches what `telo install` wrote.
120
- sources.push(new LocalManifestCacheSource(entryDir, registryUrl ?? "https://registry.telo.run"));
121
- }
122
- const kernel = new Kernel({
123
- argv: argv["--"],
124
- registryUrl,
125
- sources,
126
- });
127
- // Pretty controller-download progress. With --verbose, always render
128
- // (so captured logs/CI output get the lines too); otherwise gate on TTY
129
- // so CI and the docker service stay silent.
130
- attachControllerProgress(kernel, log, { force: argv.verbose });
131
- if (argv.debug) {
132
- const debugDir = path.join(process.cwd(), ".telo-debug");
133
- const eventStreamPath = path.join(debugDir, "events.jsonl");
134
- await kernel.enableEventStream(eventStreamPath);
135
- log.info(`Event stream enabled: ${eventStreamPath}`);
136
- }
137
- let watchHandle = null;
221
+ const kernel = await buildKernel(argv, log);
138
222
  const shutdown = () => {
139
- if (argv.watch)
140
- log.info("\n[watch] stopping...");
141
- watchHandle?.cleanup();
142
223
  // Cooperatively cancel the boot run first (so honoring targets / in-flight
143
224
  // invoke trees stop early), then unblock the idle wait for graceful exit.
144
225
  kernel.cancel("interrupted");
@@ -146,73 +227,82 @@ export async function run(argv) {
146
227
  };
147
228
  process.once("SIGINT", shutdown);
148
229
  process.once("SIGTERM", shutdown);
149
- if (argv.watch) {
150
- // Acquire a hold BEFORE start() to keep the kernel alive for apps that
151
- // don't have their own holds (e.g. script-only manifests).
152
- // forceIdle() will force-resolve waitForIdle() on Ctrl+C regardless of
153
- // how many holds are active (e.g. Http.Server may hold its own).
154
- kernel.acquireHold("watch-mode");
155
- kernel.on("Kernel.Started", () => {
156
- // const files = kernel.getSourceFiles();
157
- // log.info(`[watch] watching ${files.length} file(s)`);
158
- watchHandle = setupWatchMode(kernel, log);
159
- });
160
- }
161
230
  loadEnvFiles(argv.path);
162
231
  await kernel.load(argv.path);
163
- // Write-through to `<entry-dir>/.telo/manifests/` after the first
164
- // successful load. Same persistence path as `telo install` — reuses
165
- // `writeManifestCache` so cache contents converge no matter which
166
- // command populates them. Idempotent: a graph whose files all came
167
- // from `file://` sources (cache hit) results in no writes, since
168
- // `cachePathForCanonical` returns null for non-cacheable schemes.
169
- // On read-only filesystems (e.g. baked Docker images) we surface the
170
- // error but do not abort — caching is an optimization.
171
- if (entryDir) {
172
- const graph = kernel.getLoadedGraph();
173
- if (graph) {
174
- try {
175
- await writeManifestCache(graph, entryDir, registryUrl ?? "https://registry.telo.run");
176
- }
177
- catch (err) {
178
- // Warnings belong on stderr — stdout is reserved for the
179
- // manifest's own output (consumers may pipe `telo run` into
180
- // jq / a downstream process).
181
- process.stderr.write(`${log.warn(`[manifest-cache] write failed: ${err instanceof Error ? err.message : String(err)}`)}\n`);
182
- }
183
- }
184
- }
232
+ await persistManifestCache(argv, kernel, log);
185
233
  await kernel.start();
186
234
  if (kernel.exitCode !== 0) {
187
235
  process.exit(kernel.exitCode);
188
236
  }
189
237
  }
190
238
  catch (error) {
191
- const isUrl = argv.path.startsWith("http://") || argv.path.startsWith("https://");
192
- const displayPath = isUrl
193
- ? argv.path
194
- : path.relative(process.cwd(), path.resolve(process.cwd(), argv.path));
195
- const attached = error?.diagnostics;
196
- const diags = attached?.length
197
- ? attached
198
- : [
199
- {
200
- message: error instanceof Error ? error.message : String(error),
201
- code: error?.code,
202
- },
203
- ];
204
- formatDiagnostics(diags, log, displayPath);
205
- const errorCount = diags.filter((d) => d.severity !== "warning").length;
206
- const warnCount = diags.filter((d) => d.severity === "warning").length;
207
- const parts = [];
208
- if (errorCount > 0)
209
- parts.push(log.error(`${errorCount} error${errorCount !== 1 ? "s" : ""}`));
210
- if (warnCount > 0)
211
- parts.push(log.warn(`${warnCount} warning${warnCount !== 1 ? "s" : ""}`));
212
- console.error(`\n${parts.join(", ")}`);
239
+ reportError(argv, error, log);
213
240
  process.exit(1);
214
241
  }
215
242
  }
243
+ /**
244
+ * Watch mode. The kernel has no incremental reload, so each cycle runs a fresh
245
+ * kernel to completion-or-change: load → snapshot the graph's local files →
246
+ * start (held alive so one-shot apps don't exit) → wait for a file change →
247
+ * cancel + forceIdle to drive teardown → rebuild. A load/boot failure is
248
+ * reported but does not exit; we keep watching so the next edit retries.
249
+ */
250
+ async function runWatch(argv, log) {
251
+ loadEnvFiles(argv.path);
252
+ let stopping = false;
253
+ let signalChange = null;
254
+ let currentKernel = null;
255
+ // One watcher set for the whole session — see createWatcherSet. A change
256
+ // resolves the current cycle's `changed` gate; cycles re-read `signalChange`
257
+ // so the same watcher drives every reload.
258
+ const watchers = createWatcherSet(log, () => signalChange?.());
259
+ const requestStop = () => {
260
+ stopping = true;
261
+ log.info("\n[watch] stopping...");
262
+ watchers.cleanup();
263
+ currentKernel?.cancel("interrupted");
264
+ currentKernel?.forceIdle();
265
+ signalChange?.();
266
+ };
267
+ process.once("SIGINT", requestStop);
268
+ process.once("SIGTERM", requestStop);
269
+ // Watch the entry up-front so an edit during the first (possibly slow) load
270
+ // still queues a reload; the graph's full file set is added after each load.
271
+ watchers.sync(new Set([entryFilePath(argv.path)]));
272
+ while (!stopping) {
273
+ const kernel = await buildKernel(argv, log);
274
+ currentKernel = kernel;
275
+ // Hold the kernel alive across the cycle so apps without their own hold
276
+ // (e.g. script-only manifests) stay up until a change or Ctrl+C; forceIdle()
277
+ // overrides every hold (including a server's own) when we want to reload.
278
+ kernel.acquireHold("watch-mode");
279
+ const changed = new Promise((resolve) => {
280
+ signalChange = resolve;
281
+ });
282
+ try {
283
+ await kernel.load(argv.path);
284
+ await persistManifestCache(argv, kernel, log);
285
+ const count = watchers.sync(collectWatchFiles(kernel));
286
+ log.info(`[watch] watching ${count} file(s)`);
287
+ // start() resolves on its own only on boot error or one-shot completion
288
+ // without a hold; the hold keeps long-running and completed apps alive,
289
+ // so the cycle advances on a file change. Errors are reported, not thrown.
290
+ const startPromise = kernel.start().catch((err) => reportError(argv, err, log));
291
+ await changed;
292
+ kernel.cancel("reload");
293
+ kernel.forceIdle();
294
+ await startPromise;
295
+ }
296
+ catch (error) {
297
+ // Load failed before start(); report and wait for an edit before retrying.
298
+ reportError(argv, error, log);
299
+ await kernel.teardown();
300
+ await changed;
301
+ }
302
+ if (!stopping)
303
+ log.info(log.ok("[watch] reloading..."));
304
+ }
305
+ }
216
306
  export function runCommand(yargs) {
217
307
  return yargs.command(["run <path> [..]", "$0 <path> [..]"], "Run a Telo runtime from a manifest file or directory", (y) => y
218
308
  .positional("path", {
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telorun/cli",
3
- "version": "0.24.1",
3
+ "version": "0.25.0",
4
4
  "description": "Telo CLI - Command-line interface for the Telo runtime.",
5
5
  "keywords": [
6
6
  "telo",
@@ -34,9 +34,9 @@
34
34
  "dist"
35
35
  ],
36
36
  "dependencies": {
37
- "@telorun/analyzer": "0.22.0",
38
- "@telorun/ide-support": "0.4.22",
39
- "@telorun/kernel": "0.24.1",
37
+ "@telorun/analyzer": "0.23.0",
38
+ "@telorun/ide-support": "0.4.23",
39
+ "@telorun/kernel": "0.25.0",
40
40
  "@telorun/sdk": "0.23.0",
41
41
  "@telorun/templating": "0.8.0",
42
42
  "dotenv": "^17.4.0",