@xemahq/xema 0.1.4 → 0.2.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 (133) hide show
  1. package/README.md +64 -15
  2. package/dist/assets/boot-graph.json +72 -0
  3. package/dist/assets/core/distribution.lock.json +1244 -0
  4. package/dist/assets/core/images.lock.json +428 -0
  5. package/dist/assets/oss/distribution.lock.json +1978 -0
  6. package/dist/assets/oss/images.lock.json +594 -0
  7. package/dist/cli.d.ts.map +1 -1
  8. package/dist/cli.js +9 -1
  9. package/dist/cli.js.map +1 -1
  10. package/dist/commands/dev.d.ts.map +1 -1
  11. package/dist/commands/dev.js +36 -14
  12. package/dist/commands/dev.js.map +1 -1
  13. package/dist/commands/doctor.js +1 -1
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/down.d.ts +3 -0
  16. package/dist/commands/down.d.ts.map +1 -0
  17. package/dist/commands/down.js +54 -0
  18. package/dist/commands/down.js.map +1 -0
  19. package/dist/commands/logs.d.ts +3 -0
  20. package/dist/commands/logs.d.ts.map +1 -0
  21. package/dist/commands/logs.js +61 -0
  22. package/dist/commands/logs.js.map +1 -0
  23. package/dist/commands/serve.d.ts.map +1 -1
  24. package/dist/commands/serve.js +38 -8
  25. package/dist/commands/serve.js.map +1 -1
  26. package/dist/commands/status.d.ts +3 -0
  27. package/dist/commands/status.d.ts.map +1 -0
  28. package/dist/commands/status.js +41 -0
  29. package/dist/commands/status.js.map +1 -0
  30. package/dist/commands/up.d.ts +3 -0
  31. package/dist/commands/up.d.ts.map +1 -0
  32. package/dist/commands/up.js +44 -0
  33. package/dist/commands/up.js.map +1 -0
  34. package/dist/dev/infra-preflight.js +1 -1
  35. package/dist/dev/infra-preflight.js.map +1 -1
  36. package/dist/lib/command-registry.d.ts +1 -1
  37. package/dist/lib/command-registry.d.ts.map +1 -1
  38. package/dist/lib/command-registry.js +4 -0
  39. package/dist/lib/command-registry.js.map +1 -1
  40. package/dist/runtime/boot-graph-loader.d.ts +17 -0
  41. package/dist/runtime/boot-graph-loader.d.ts.map +1 -0
  42. package/dist/runtime/boot-graph-loader.js +40 -0
  43. package/dist/runtime/boot-graph-loader.js.map +1 -0
  44. package/dist/runtime/config/loader.d.ts +11 -0
  45. package/dist/runtime/config/loader.d.ts.map +1 -0
  46. package/dist/runtime/config/loader.js +38 -0
  47. package/dist/runtime/config/loader.js.map +1 -0
  48. package/dist/runtime/config/schema.d.ts +202 -0
  49. package/dist/runtime/config/schema.d.ts.map +1 -0
  50. package/dist/runtime/config/schema.js +125 -0
  51. package/dist/runtime/config/schema.js.map +1 -0
  52. package/dist/runtime/env-seeder.d.ts +17 -0
  53. package/dist/runtime/env-seeder.d.ts.map +1 -0
  54. package/dist/runtime/env-seeder.js +80 -0
  55. package/dist/runtime/env-seeder.js.map +1 -0
  56. package/dist/runtime/foreground.d.ts +8 -0
  57. package/dist/runtime/foreground.d.ts.map +1 -0
  58. package/dist/runtime/foreground.js +71 -0
  59. package/dist/runtime/foreground.js.map +1 -0
  60. package/dist/runtime/infra/infra-catalog.d.ts +19 -0
  61. package/dist/runtime/infra/infra-catalog.d.ts.map +1 -0
  62. package/dist/runtime/infra/infra-catalog.js +128 -0
  63. package/dist/runtime/infra/infra-catalog.js.map +1 -0
  64. package/dist/runtime/infra/infra-plan.d.ts +16 -0
  65. package/dist/runtime/infra/infra-plan.d.ts.map +1 -0
  66. package/dist/runtime/infra/infra-plan.js +44 -0
  67. package/dist/runtime/infra/infra-plan.js.map +1 -0
  68. package/dist/runtime/infra/infra-runner.d.ts +26 -0
  69. package/dist/runtime/infra/infra-runner.d.ts.map +1 -0
  70. package/dist/runtime/infra/infra-runner.js +135 -0
  71. package/dist/runtime/infra/infra-runner.js.map +1 -0
  72. package/dist/runtime/launch.d.ts +24 -0
  73. package/dist/runtime/launch.d.ts.map +1 -0
  74. package/dist/runtime/launch.js +116 -0
  75. package/dist/runtime/launch.js.map +1 -0
  76. package/dist/runtime/lock-loader.d.ts +26 -0
  77. package/dist/runtime/lock-loader.d.ts.map +1 -0
  78. package/dist/runtime/lock-loader.js +61 -0
  79. package/dist/runtime/lock-loader.js.map +1 -0
  80. package/dist/runtime/paths.d.ts +14 -0
  81. package/dist/runtime/paths.d.ts.map +1 -0
  82. package/dist/runtime/paths.js +109 -0
  83. package/dist/runtime/paths.js.map +1 -0
  84. package/dist/runtime/platform-services.d.ts +2 -0
  85. package/dist/runtime/platform-services.d.ts.map +1 -0
  86. package/dist/runtime/platform-services.js +8 -0
  87. package/dist/runtime/platform-services.js.map +1 -0
  88. package/dist/runtime/port-map.d.ts +3 -0
  89. package/dist/runtime/port-map.d.ts.map +1 -0
  90. package/dist/runtime/port-map.js +25 -0
  91. package/dist/runtime/port-map.js.map +1 -0
  92. package/dist/runtime/roster.d.ts +32 -0
  93. package/dist/runtime/roster.d.ts.map +1 -0
  94. package/dist/runtime/roster.js +106 -0
  95. package/dist/runtime/roster.js.map +1 -0
  96. package/dist/runtime/runner/container-runner.d.ts +14 -0
  97. package/dist/runtime/runner/container-runner.d.ts.map +1 -0
  98. package/dist/runtime/runner/container-runner.js +61 -0
  99. package/dist/runtime/runner/container-runner.js.map +1 -0
  100. package/dist/runtime/runner/docker-cli.d.ts +11 -0
  101. package/dist/runtime/runner/docker-cli.d.ts.map +1 -0
  102. package/dist/runtime/runner/docker-cli.js +53 -0
  103. package/dist/runtime/runner/docker-cli.js.map +1 -0
  104. package/dist/runtime/runner/health-probe.d.ts +2 -0
  105. package/dist/runtime/runner/health-probe.d.ts.map +1 -0
  106. package/dist/runtime/runner/health-probe.js +38 -0
  107. package/dist/runtime/runner/health-probe.js.map +1 -0
  108. package/dist/runtime/runner/helm-runner.d.ts +19 -0
  109. package/dist/runtime/runner/helm-runner.d.ts.map +1 -0
  110. package/dist/runtime/runner/helm-runner.js +70 -0
  111. package/dist/runtime/runner/helm-runner.js.map +1 -0
  112. package/dist/runtime/runner/native-runner.d.ts +9 -0
  113. package/dist/runtime/runner/native-runner.d.ts.map +1 -0
  114. package/dist/runtime/runner/native-runner.js +85 -0
  115. package/dist/runtime/runner/native-runner.js.map +1 -0
  116. package/dist/runtime/runner/service-runner.d.ts +23 -0
  117. package/dist/runtime/runner/service-runner.d.ts.map +1 -0
  118. package/dist/runtime/runner/service-runner.js +10 -0
  119. package/dist/runtime/runner/service-runner.js.map +1 -0
  120. package/dist/runtime/supervisor.d.ts +46 -0
  121. package/dist/runtime/supervisor.d.ts.map +1 -0
  122. package/dist/runtime/supervisor.js +77 -0
  123. package/dist/runtime/supervisor.js.map +1 -0
  124. package/dist/runtime/unit-type.d.ts +9 -0
  125. package/dist/runtime/unit-type.d.ts.map +1 -0
  126. package/dist/runtime/unit-type.js +19 -0
  127. package/dist/runtime/unit-type.js.map +1 -0
  128. package/dist/runtime/waves.d.ts +15 -0
  129. package/dist/runtime/waves.d.ts.map +1 -0
  130. package/dist/runtime/waves.js +77 -0
  131. package/dist/runtime/waves.js.map +1 -0
  132. package/package.json +9 -10
  133. package/xema.config.example.yaml +45 -0
@@ -1,27 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerCommand = registerCommand;
4
- const dev_orchestrator_1 = require("../dev/dev-orchestrator");
4
+ const env_defaults_1 = require("../dev/env-defaults");
5
+ const infra_preflight_1 = require("../dev/infra-preflight");
5
6
  const exit_codes_1 = require("../lib/exit-codes");
7
+ const schema_1 = require("../runtime/config/schema");
8
+ const foreground_1 = require("../runtime/foreground");
6
9
  function registerCommand(program) {
7
10
  program
8
11
  .command('dev')
9
- .summary('Boot Xema in single-binary mode (in-process)')
10
- .description('Boots Xema services for local development via a mix of in-process ' +
11
- 'and forked-worker modes. Probes Postgres / Redis / event-hub-api ' +
12
- 'first; exits with an actionable `docker compose up` message if ' +
13
- 'any are unreachable. Wires 29/29 candidate services into the ' +
14
- 'boot loop; per-service skip-mode tolerates individual failures.')
15
- .option('--kernel-port <port>', 'HTTP port for xema-kernel-server', (raw) => Number.parseInt(raw, 10))
16
- .option('--router-port <port>', 'HTTP port for xema-capability-router', (raw) => Number.parseInt(raw, 10))
12
+ .summary('Boot Xema for local development (native substrate)')
13
+ .description('Boots the lock-resolved roster as host processes (in-process Nest + ' +
14
+ 'forked Prisma services). Probes Postgres / Redis / event-hub-api first; ' +
15
+ 'exits with an actionable `docker compose up` message if any are down. ' +
16
+ 'Per-service skip-mode tolerates individual failures.')
17
+ .option('--edition <id>', 'Distribution edition (default: oss)')
18
+ .option('--web', 'Also start the host-shell frontend')
17
19
  .option('--skip-preflight', 'Skip the infra TCP probe (debugging only — masks real outages).')
18
20
  .action(async (opts) => {
19
21
  try {
20
- await (0, dev_orchestrator_1.runDevOrchestrator)({
21
- kernelPort: opts.kernelPort,
22
- routerPort: opts.routerPort,
23
- skipPreflight: opts.skipPreflight,
24
- });
22
+ await runDev(opts);
25
23
  }
26
24
  catch (err) {
27
25
  const message = err instanceof Error ? err.message : String(err);
@@ -29,4 +27,28 @@ function registerCommand(program) {
29
27
  }
30
28
  });
31
29
  }
30
+ async function runDev(opts) {
31
+ const applied = (0, env_defaults_1.applyDevEnvDefaults)();
32
+ console.log('xema dev — native single-binary composition (lock-driven)');
33
+ console.log('-'.repeat(60));
34
+ console.log(` Env defaults : ${String(applied.length)} applied (user values preserved)`);
35
+ if (opts.skipPreflight !== true) {
36
+ const report = await (0, infra_preflight_1.runInfraPreflight)();
37
+ if (!report.allReachable) {
38
+ console.error((0, infra_preflight_1.formatPreflightFailure)(report));
39
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.MissingDependency);
40
+ return;
41
+ }
42
+ console.log(` Pre-flight : OK (${String(report.results.length)} infra dependencies reachable)`);
43
+ }
44
+ else {
45
+ console.log(' Pre-flight : SKIPPED (--skip-preflight)');
46
+ }
47
+ console.log('');
48
+ const config = (0, schema_1.parseXemaConfig)({
49
+ edition: opts.edition ?? 'oss',
50
+ app: { substrate: schema_1.Substrate.Native, include: 'all' },
51
+ });
52
+ await (0, foreground_1.bringUpForeground)({ config, includeWeb: Boolean(opts.web), detach: false });
53
+ }
32
54
  //# sourceMappingURL=dev.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":";;AAsBA,0CA+CC;AArED,8DAA6D;AAC7D,kDAA8D;AAqB9D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,OAAO,CAAC,8CAA8C,CAAC;SACvD,WAAW,CACV,oEAAoE;QAClE,mEAAmE;QACnE,iEAAiE;QACjE,+DAA+D;QAC/D,iEAAiE,CACpE;SACA,MAAM,CACL,sBAAsB,EACtB,kCAAkC,EAClC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAClC;SACA,MAAM,CACL,sBAAsB,EACtB,sCAAsC,EACtC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAClC;SACA,MAAM,CACL,kBAAkB,EAClB,iEAAiE,CAClE;SACA,MAAM,CACL,KAAK,EAAE,IAIN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,IAAA,qCAAkB,EAAC;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GACX,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnD,IAAA,qBAAQ,EACN,4BAAe,CAAC,YAAY,EAC5B,oBAAoB,OAAO,EAAE,CAC9B,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":";;AAyBA,0CAqBC;AA9CD,sDAA0D;AAC1D,4DAAmF;AACnF,kDAA8D;AAC9D,qDAAsE;AACtE,sDAA0D;AAqB1D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,OAAO,CAAC,oDAAoD,CAAC;SAC7D,WAAW,CACV,sEAAsE;QACpE,0EAA0E;QAC1E,wEAAwE;QACxE,sDAAsD,CACzD;SACA,MAAM,CAAC,gBAAgB,EAAE,qCAAqC,CAAC;SAC/D,MAAM,CAAC,OAAO,EAAE,oCAAoC,CAAC;SACrD,MAAM,CAAC,kBAAkB,EAAE,iEAAiE,CAAC;SAC7F,MAAM,CAAC,KAAK,EAAE,IAAgB,EAAE,EAAE;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAgB;IAGpC,MAAM,OAAO,GAAG,IAAA,kCAAmB,GAAE,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;IAE1F,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAiB,GAAE,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,IAAA,wCAAsB,EAAC,MAAM,CAAC,CAAC,CAAC;YAC9C,IAAA,qBAAQ,EAAC,4BAAe,CAAC,iBAAiB,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;IACrG,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,MAAM,GAAG,IAAA,wBAAe,EAAC;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;QAC9B,GAAG,EAAE,EAAE,SAAS,EAAE,kBAAS,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;KACrD,CAAC,CAAC;IACH,MAAM,IAAA,8BAAiB,EAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACpF,CAAC"}
@@ -123,6 +123,6 @@ function printInfraReport(report) {
123
123
  console.log('');
124
124
  console.log('Note: `xema dev` wires 29/29 services into its candidate list — a mix');
125
125
  console.log('of in-process and forked-worker boot. Individual boot failures are');
126
- console.log('routed through skip-mode (see dev-orchestrator.ts header for details).');
126
+ console.log('routed through skip-mode (see native-runner.ts header for details).');
127
127
  }
128
128
  //# sourceMappingURL=doctor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":";;AA6BA,0CAqBC;AA0BD,8BAoCC;AAhHD,qCAA+C;AAC/C,qCAAkC;AAClC,yCAAiC;AAEjC,4DAKgC;AAChC,kDAA8D;AAmB9D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,OAAO,CAAC,qCAAqC,CAAC;SAC9C,WAAW,CACV,kEAAkE;QAChE,+DAA+D;QAC/D,gEAAgE;QAChE,mBAAmB,CACtB;SACA,MAAM,CACL,SAAS,EACT,uFAAuF,CACxF;SACA,MAAM,CAAC,KAAK,EAAE,IAAyB,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;QACD,IAAA,qBAAQ,EAAC,4BAAe,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACP,CAAC;AA0BM,KAAK,UAAU,SAAS,CAC7B,OAAyB,EAAE;IAE3B,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEvC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EACxC,CAAC,CACF,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACrC,OAAO,CAAC,GAAG,CACT,IAAI,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAC5D,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACzC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAiB,GAAE,CAAC;QACzC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,EAAE;QACF,MAAM,EAAE,EAAE;YACR,CAAC,CAAC,IAAI,GAAG,cAAc;YACvB,CAAC,CAAC,IAAI,GAAG,+BAA+B;KAC3C,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,GAAG,GAAG,IAAA,gBAAI,EAAC,IAAA,iBAAO,GAAE,EAAE,OAAO,CAAC,CAAC;IACrC,IAAI,CAAC,IAAA,oBAAU,EAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,IAAI;YACR,MAAM,EAAE,gEAAgE,GAAG,EAAE;SAC9E,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,kBAAQ,EAAC,GAAG,CAAC,CAAC;IAC3B,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE;QACtB,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE;YACxB,CAAC,CAAC,cAAc,GAAG,EAAE;YACrB,CAAC,CAAC,kCAAkC,GAAG,EAAE;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB;IAC9B,MAAM,IAAI,GAAG,IAAA,gBAAI,EAAC,IAAA,iBAAO,GAAE,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC;IACpE,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,IAAI;YACR,MAAM,EAAE,yBAAyB,IAAI,kCAAkC;SACxE,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;IAC5B,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACnB,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,cAAc,IAAI,EAAE;YAC3C,CAAC,CAAC,6BAA6B,IAAI,EAAE;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA4B;IACpD,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,GAAG,4CAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,0BAAQ,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EACjE,EAAE,CACH,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC;QACzB,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7C,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,CAAC,CAAC,SAAS;YACrB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,IAAI,aAAa,iCAAiC,GAAG,CAAC,kBAAkB,IAAI,CAAC;QAClG,OAAO,CAAC,GAAG,CACT,IAAI,MAAM,KAAK,IAAA,0BAAQ,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO;aAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC;aAC3C,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,mCAAmC,CACrF,CAAC;QACF,OAAO,CAAC,GAAG,CACT,2CAA2C,YAAY,EAAE,CAC1D,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,uEAAuE,CACxE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,oEAAoE,CACrE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,wEAAwE,CACzE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function registerCommand(program: Command): void;
3
+ //# sourceMappingURL=down.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"down.d.ts","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAczC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkBtD"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCommand = registerCommand;
4
+ const exit_codes_1 = require("../lib/exit-codes");
5
+ const schema_1 = require("../runtime/config/schema");
6
+ const docker_cli_1 = require("../runtime/runner/docker-cli");
7
+ function registerCommand(program) {
8
+ program
9
+ .command('down')
10
+ .summary('Stop everything xema up started (container substrate)')
11
+ .description('Stop + remove all launcher-owned containers (services + managed infra). ' +
12
+ 'Non-destructive by default; --purge also deletes the named data volumes ' +
13
+ '(Postgres, object store, search, workspace pools, …).')
14
+ .option('--purge', 'Also delete persistent data volumes (DESTRUCTIVE)')
15
+ .action(async (opts) => {
16
+ try {
17
+ await runDown(opts);
18
+ }
19
+ catch (err) {
20
+ const message = err instanceof Error ? err.message : String(err);
21
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema down failed: ${message}`);
22
+ }
23
+ });
24
+ }
25
+ async function runDown(opts) {
26
+ const docker = new docker_cli_1.DockerCli();
27
+ if (!(await docker.available())) {
28
+ console.log('No container runtime reachable — nothing to stop (native services stop with `xema up`).');
29
+ return;
30
+ }
31
+ const containers = await docker.launcherContainers();
32
+ if (containers.length === 0) {
33
+ console.log('No launcher-owned containers found.');
34
+ }
35
+ else {
36
+ console.log(`Stopping ${String(containers.length)} container(s)...`);
37
+ for (const name of containers) {
38
+ await docker.runQuiet(['rm', '-f', name]);
39
+ console.log(` removed ${name}`);
40
+ }
41
+ }
42
+ if (opts.purge) {
43
+ console.log('Purging data volumes...');
44
+ for (const component of Object.values(schema_1.InfraComponent)) {
45
+ const volume = `xema-${component}-data`;
46
+ await docker.runQuiet(['volume', 'rm', volume]);
47
+ console.log(` removed volume ${volume}`);
48
+ }
49
+ }
50
+ else {
51
+ console.log('Data volumes preserved (use --purge to delete them).');
52
+ }
53
+ }
54
+ //# sourceMappingURL=down.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"down.js","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":";;AAkBA,0CAkBC;AApCD,kDAA8D;AAC9D,qDAA0D;AAC1D,6DAAyD;AAgBzD,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,OAAO,CAAC,uDAAuD,CAAC;SAChE,WAAW,CACV,0EAA0E;QACxE,0EAA0E;QAC1E,uDAAuD,CAC1D;SACA,MAAM,CAAC,SAAS,EAAE,mDAAmD,CAAC;SACtE,MAAM,CAAC,KAAK,EAAE,IAAiB,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,qBAAqB,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,IAAiB;IACtC,MAAM,MAAM,GAAG,IAAI,sBAAS,EAAE,CAAC;IAC/B,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,yFAAyF,CAAC,CAAC;QACvG,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;IACrD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACrE,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,uBAAc,CAAC,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,QAAQ,SAAS,OAAO,CAAC;YACxC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACtE,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function registerCommand(program: Command): void;
3
+ //# sourceMappingURL=logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CActD"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCommand = registerCommand;
4
+ const node_child_process_1 = require("node:child_process");
5
+ const exit_codes_1 = require("../lib/exit-codes");
6
+ const docker_cli_1 = require("../runtime/runner/docker-cli");
7
+ function registerCommand(program) {
8
+ program
9
+ .command('logs')
10
+ .argument('[service]', 'Service/container name to show logs for')
11
+ .summary('Show logs for a launcher-owned workload')
12
+ .option('-f, --follow', 'Follow log output')
13
+ .action(async (service, opts) => {
14
+ try {
15
+ await runLogs(service, opts);
16
+ }
17
+ catch (err) {
18
+ const message = err instanceof Error ? err.message : String(err);
19
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema logs failed: ${message}`);
20
+ }
21
+ });
22
+ }
23
+ async function runLogs(service, opts) {
24
+ const docker = new docker_cli_1.DockerCli();
25
+ if (!(await docker.available())) {
26
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.MissingDependency, 'No container runtime reachable.');
27
+ return;
28
+ }
29
+ const containers = await docker.launcherContainers();
30
+ if (!service) {
31
+ if (containers.length === 0) {
32
+ console.log('No launcher-owned workloads running.');
33
+ return;
34
+ }
35
+ console.log('Pick a service to show logs for:');
36
+ for (const name of containers) {
37
+ console.log(` ${name}`);
38
+ }
39
+ console.log('');
40
+ console.log('Usage: xema logs <service> [-f]');
41
+ return;
42
+ }
43
+ if (!containers.includes(service)) {
44
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.NotFound, `No launcher-owned container named "${service}".`);
45
+ return;
46
+ }
47
+ await streamLogs(service, Boolean(opts.follow));
48
+ }
49
+ function streamLogs(service, follow) {
50
+ return new Promise((resolve, reject) => {
51
+ const args = ['logs'];
52
+ if (follow) {
53
+ args.push('-f');
54
+ }
55
+ args.push(service);
56
+ const child = (0, node_child_process_1.spawn)('docker', args, { stdio: 'inherit' });
57
+ child.on('error', reject);
58
+ child.on('exit', () => resolve());
59
+ });
60
+ }
61
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":";;AAgBA,0CAcC;AA9BD,2DAA2C;AAE3C,kDAA8D;AAC9D,6DAAyD;AAazD,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,WAAW,EAAE,yCAAyC,CAAC;SAChE,OAAO,CAAC,yCAAyC,CAAC;SAClD,MAAM,CAAC,cAAc,EAAE,mBAAmB,CAAC;SAC3C,MAAM,CAAC,KAAK,EAAE,OAA2B,EAAE,IAAiB,EAAE,EAAE;QAC/D,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,qBAAqB,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,OAA2B,EAAE,IAAiB;IACnE,MAAM,MAAM,GAAG,IAAI,sBAAS,EAAE,CAAC;IAC/B,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;QAChC,IAAA,qBAAQ,EAAC,4BAAe,CAAC,iBAAiB,EAAE,iCAAiC,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;IACrD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,IAAA,qBAAQ,EAAC,4BAAe,CAAC,QAAQ,EAAE,sCAAsC,OAAO,IAAI,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IACD,MAAM,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,UAAU,CAAC,OAAe,EAAE,MAAe;IAClD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,IAAA,0BAAK,EAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1D,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoBtD"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmBtD"}
@@ -2,17 +2,47 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerCommand = registerCommand;
4
4
  const exit_codes_1 = require("../lib/exit-codes");
5
+ const loader_1 = require("../runtime/config/loader");
6
+ const schema_1 = require("../runtime/config/schema");
7
+ const foreground_1 = require("../runtime/foreground");
5
8
  function registerCommand(program) {
6
9
  program
7
10
  .command('serve')
8
- .summary('Boot Xema as separate processes (STUB)')
9
- .description('Multi-process self-host mode (plan v4.3 §6 Phase J.3 deferred ' +
10
- 'to Phase O). Currently a stub: prints the planned profile + ' +
11
- 'exits with NotImplemented so CI scripts can branch.')
12
- .requiredOption('--profile <profile>', 'Deployment profile: single-instance | cluster')
13
- .action((opts) => {
14
- (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.NotImplemented, `xema serve --profile=${opts.profile} is not implemented yet.\n` +
15
- 'Tracked: plan v4.3 §6 Phase J.3 + Phase O (per-repo CI + Helm).');
11
+ .summary('Boot Xema as separate processes (self-host)')
12
+ .description('Multi-process self-host launcher. --profile selects the substrate: ' +
13
+ 'single-instance (native host processes) or cluster (containers).')
14
+ .requiredOption('--profile <profile>', 'Deployment profile: single-instance | cluster | appliance')
15
+ .option('--config <path>', 'Path to xema.config.yaml')
16
+ .option('--web', 'Also start the host-shell frontend')
17
+ .action(async (opts) => {
18
+ try {
19
+ await runServe(opts);
20
+ }
21
+ catch (err) {
22
+ const message = err instanceof Error ? err.message : String(err);
23
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema serve failed: ${message}`);
24
+ }
16
25
  });
17
26
  }
27
+ async function runServe(opts) {
28
+ const substrate = profileToSubstrate(opts.profile);
29
+ const loaded = (0, loader_1.loadXemaConfig)({ explicit: opts.config });
30
+ const config = { ...loaded.config, app: { ...loaded.config.app, substrate } };
31
+ console.log(`xema serve — profile=${opts.profile} (substrate=${substrate})`);
32
+ console.log(` config: ${loaded.source}`);
33
+ console.log('');
34
+ await (0, foreground_1.bringUpForeground)({ config, includeWeb: Boolean(opts.web), detach: false });
35
+ }
36
+ function profileToSubstrate(profile) {
37
+ if (profile === 'single-instance') {
38
+ return schema_1.Substrate.Native;
39
+ }
40
+ if (profile === 'cluster') {
41
+ return schema_1.Substrate.Container;
42
+ }
43
+ if (profile === 'appliance') {
44
+ return schema_1.Substrate.Helm;
45
+ }
46
+ throw new Error(`Unknown --profile "${profile}". Valid values: single-instance | cluster | appliance.`);
47
+ }
18
48
  //# sourceMappingURL=serve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":";;AAaA,0CAoBC;AAjCD,kDAA8D;AAa9D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,OAAO,CAAC,wCAAwC,CAAC;SACjD,WAAW,CACV,kEAAkE;QAChE,8DAA8D;QAC9D,qDAAqD,CACxD;SACA,cAAc,CACb,qBAAqB,EACrB,+CAA+C,CAChD;SACA,MAAM,CAAC,CAAC,IAAyB,EAAE,EAAE;QACpC,IAAA,qBAAQ,EACN,4BAAe,CAAC,cAAc,EAC9B,wBAAwB,IAAI,CAAC,OAAO,4BAA4B;YAC9D,iEAAiE,CACpE,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":";;AAyBA,0CAmBC;AA5CD,kDAA8D;AAC9D,qDAA0D;AAC1D,qDAAqD;AACrD,sDAA0D;AAsB1D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,OAAO,CAAC,6CAA6C,CAAC;SACtD,WAAW,CACV,qEAAqE;QACnE,kEAAkE,CACrE;SACA,cAAc,CAAC,qBAAqB,EAAE,2DAA2D,CAAC;SAClG,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;SACrD,MAAM,CAAC,OAAO,EAAE,oCAAoC,CAAC;SACrD,MAAM,CAAC,KAAK,EAAE,IAAkB,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,sBAAsB,OAAO,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,IAAkB;IACxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAA,uBAAc,EAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC;IAE9E,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,OAAO,eAAe,SAAS,GAAG,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,IAAA,8BAAiB,EAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAe;IACzC,IAAI,OAAO,KAAK,iBAAiB,EAAE,CAAC;QAClC,OAAO,kBAAS,CAAC,MAAM,CAAC;IAC1B,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,kBAAS,CAAC,SAAS,CAAC;IAC7B,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,kBAAS,CAAC,IAAI,CAAC;IACxB,CAAC;IACD,MAAM,IAAI,KAAK,CACb,sBAAsB,OAAO,yDAAyD,CACvF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function registerCommand(program: Command): void;
3
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAatD"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCommand = registerCommand;
4
+ const exit_codes_1 = require("../lib/exit-codes");
5
+ const docker_cli_1 = require("../runtime/runner/docker-cli");
6
+ function registerCommand(program) {
7
+ program
8
+ .command('status')
9
+ .summary('Show launcher-owned workloads and their health')
10
+ .description('List the containers xema up started (services + managed infra) with status.')
11
+ .action(async () => {
12
+ try {
13
+ await runStatus();
14
+ }
15
+ catch (err) {
16
+ const message = err instanceof Error ? err.message : String(err);
17
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema status failed: ${message}`);
18
+ }
19
+ });
20
+ }
21
+ async function runStatus() {
22
+ const docker = new docker_cli_1.DockerCli();
23
+ if (!(await docker.available())) {
24
+ console.log('No container runtime reachable. (Native services report status only within `xema up`.)');
25
+ return;
26
+ }
27
+ const out = await docker.runQuiet([
28
+ 'ps',
29
+ '-a',
30
+ '--filter',
31
+ `label=${docker_cli_1.LAUNCHER_LABEL}`,
32
+ '--format',
33
+ 'table {{.Names}}\t{{.Status}}\t{{.Ports}}\t{{.Label "' + docker_cli_1.LAUNCHER_LABEL + '"}}',
34
+ ]);
35
+ if (out.trim().length === 0) {
36
+ console.log('No launcher-owned workloads running.');
37
+ return;
38
+ }
39
+ console.log(out.trimEnd());
40
+ }
41
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":";;AAWA,0CAaC;AAxBD,kDAA8D;AAC9D,6DAAyE;AAUzE,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,OAAO,CAAC,gDAAgD,CAAC;SACzD,WAAW,CAAC,6EAA6E,CAAC;SAC1F,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,CAAC;YACH,MAAM,SAAS,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,uBAAuB,OAAO,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,SAAS;IACtB,MAAM,MAAM,GAAG,IAAI,sBAAS,EAAE,CAAC;IAC/B,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,wFAAwF,CAAC,CAAC;QACtG,OAAO;IACT,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS,2BAAc,EAAE;QACzB,UAAU;QACV,uDAAuD,GAAG,2BAAc,GAAG,KAAK;KACjF,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function registerCommand(program: Command): void;
3
+ //# sourceMappingURL=up.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"up.d.ts","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsBtD"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCommand = registerCommand;
4
+ const exit_codes_1 = require("../lib/exit-codes");
5
+ const loader_1 = require("../runtime/config/loader");
6
+ const foreground_1 = require("../runtime/foreground");
7
+ function registerCommand(program) {
8
+ program
9
+ .command('up')
10
+ .summary('Boot the Xema platform with one command')
11
+ .description('Resolve the distribution lock + xema.config.yaml into an effective roster, ' +
12
+ 'bring up managed infra, and supervise the service waves over the configured ' +
13
+ 'substrate (container | native). Foreground by default.')
14
+ .option('--config <path>', 'Path to xema.config.yaml')
15
+ .option('--edition <id>', 'Distribution edition override (e.g. oss, core)')
16
+ .option('--web', 'Also start the host-shell frontend')
17
+ .option('--all', 'Start everything including the frontend')
18
+ .option('--detach', 'Leave container workloads running and return (container substrate only)')
19
+ .action(async (opts) => {
20
+ try {
21
+ await runUp(opts);
22
+ }
23
+ catch (err) {
24
+ const message = err instanceof Error ? err.message : String(err);
25
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema up failed: ${message}`);
26
+ }
27
+ });
28
+ }
29
+ async function runUp(opts) {
30
+ const loaded = (0, loader_1.loadXemaConfig)({ explicit: opts.config });
31
+ const config = { ...loaded.config };
32
+ if (opts.edition) {
33
+ config.edition = opts.edition;
34
+ }
35
+ const includeWeb = Boolean(opts.web) || Boolean(opts.all);
36
+ console.log('xema up — one-command launcher');
37
+ console.log('-'.repeat(60));
38
+ console.log(` config : ${loaded.source}`);
39
+ console.log(` edition : ${config.edition}`);
40
+ console.log(` substrate: ${config.app.substrate}`);
41
+ console.log('');
42
+ await (0, foreground_1.bringUpForeground)({ config, includeWeb, detach: Boolean(opts.detach) });
43
+ }
44
+ //# sourceMappingURL=up.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"up.js","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":";;AAqBA,0CAsBC;AA3CD,kDAA8D;AAC9D,qDAA0D;AAC1D,sDAA0D;AAmB1D,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC,yCAAyC,CAAC;SAClD,WAAW,CACV,6EAA6E;QAC3E,8EAA8E;QAC9E,wDAAwD,CAC3D;SACA,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;SACrD,MAAM,CAAC,gBAAgB,EAAE,gDAAgD,CAAC;SAC1E,MAAM,CAAC,OAAO,EAAE,oCAAoC,CAAC;SACrD,MAAM,CAAC,OAAO,EAAE,yCAAyC,CAAC;SAC1D,MAAM,CAAC,UAAU,EAAE,yEAAyE,CAAC;SAC7F,MAAM,CAAC,KAAK,EAAE,IAAe,EAAE,EAAE;QAChC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAA,qBAAQ,EAAC,4BAAe,CAAC,YAAY,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,IAAe;IAClC,MAAM,MAAM,GAAG,IAAA,uBAAc,EAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAChC,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE1D,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,IAAA,8BAAiB,EAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAChF,CAAC"}
@@ -122,7 +122,7 @@ function formatPreflightFailure(report) {
122
122
  lines.push('Note: `xema dev` wires 29/29 services into its candidate list (mix');
123
123
  lines.push('of in-process + forked-worker) — see Phase J in the plan-of-record.');
124
124
  lines.push('Individual services that fail to boot are routed through skip-mode');
125
- lines.push('(see `dev-orchestrator.ts` header for the forked-worker root cause).');
125
+ lines.push('(see `native-runner.ts` header for the forked-worker root cause).');
126
126
  return lines.join('\n');
127
127
  }
128
128
  function labelFor(kind) {
@@ -1 +1 @@
1
- {"version":3,"file":"infra-preflight.js","sourceRoot":"","sources":["../../src/dev/infra-preflight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"infra-preflight.js","sourceRoot":"","sources":["../../src/dev/infra-preflight.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Command } from 'commander';
2
2
  export type RegisterCommand = (program: Command) => void;
3
- export declare const XEMA_CLI_COMMAND_NAMES: readonly ["dev", "serve", "biome", "run", "shell", "objects", "doctor"];
3
+ export declare const XEMA_CLI_COMMAND_NAMES: readonly ["up", "down", "status", "logs", "dev", "serve", "biome", "run", "shell", "objects", "doctor"];
4
4
  export type XemaCliCommandName = (typeof XEMA_CLI_COMMAND_NAMES)[number];
5
5
  //# sourceMappingURL=command-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-registry.d.ts","sourceRoot":"","sources":["../../src/lib/command-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAYzD,eAAO,MAAM,sBAAsB,yEAQzB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"command-registry.d.ts","sourceRoot":"","sources":["../../src/lib/command-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAYzD,eAAO,MAAM,sBAAsB,yGAYzB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -2,6 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.XEMA_CLI_COMMAND_NAMES = void 0;
4
4
  exports.XEMA_CLI_COMMAND_NAMES = [
5
+ 'up',
6
+ 'down',
7
+ 'status',
8
+ 'logs',
5
9
  'dev',
6
10
  'serve',
7
11
  'biome',
@@ -1 +1 @@
1
- {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/lib/command-registry.ts"],"names":[],"mappings":";;;AAqBa,QAAA,sBAAsB,GAAG;IACpC,KAAK;IACL,OAAO;IACP,OAAO;IACP,KAAK;IACL,OAAO;IACP,SAAS;IACT,QAAQ;CACA,CAAC"}
1
+ {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/lib/command-registry.ts"],"names":[],"mappings":";;;AAqBa,QAAA,sBAAsB,GAAG;IACpC,IAAI;IACJ,MAAM;IACN,QAAQ;IACR,MAAM;IACN,KAAK;IACL,OAAO;IACP,OAAO;IACP,KAAK;IACL,OAAO;IACP,SAAS;IACT,QAAQ;CACA,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type ArtifactResolution } from './paths';
2
+ export interface BootGraphServiceNode {
3
+ readonly tier: string;
4
+ readonly startupRequires: readonly string[];
5
+ }
6
+ export interface BootGraph {
7
+ readonly tiers: Readonly<Record<string, number>>;
8
+ readonly infraServices: ReadonlySet<string>;
9
+ readonly services: ReadonlyMap<string, BootGraphServiceNode>;
10
+ readonly resolution: ArtifactResolution;
11
+ }
12
+ export interface LoadBootGraphOptions {
13
+ readonly explicit?: string | undefined;
14
+ readonly envVar?: string | undefined;
15
+ }
16
+ export declare function loadBootGraph(opts?: LoadBootGraphOptions): BootGraph;
17
+ //# sourceMappingURL=boot-graph-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boot-graph-loader.d.ts","sourceRoot":"","sources":["../../src/runtime/boot-graph-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAwB,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAUxE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAC7D,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;CACzC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,wBAAgB,aAAa,CAAC,IAAI,GAAE,oBAAyB,GAAG,SAAS,CAmCxE"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadBootGraph = loadBootGraph;
4
+ const node_fs_1 = require("node:fs");
5
+ const paths_1 = require("./paths");
6
+ function loadBootGraph(opts = {}) {
7
+ const resolution = (0, paths_1.resolveBootGraphPath)({ explicit: opts.explicit, envVar: opts.envVar });
8
+ const raw = readJson(resolution.path);
9
+ if (typeof raw.tiers !== 'object' || raw.tiers === null) {
10
+ throw new Error(`Invalid boot-graph.json at ${resolution.path}: missing tiers object.`);
11
+ }
12
+ if (!Array.isArray(raw.infraServices)) {
13
+ throw new Error(`Invalid boot-graph.json at ${resolution.path}: missing infraServices[] array.`);
14
+ }
15
+ if (typeof raw.services !== 'object' || raw.services === null) {
16
+ throw new Error(`Invalid boot-graph.json at ${resolution.path}: missing services object.`);
17
+ }
18
+ const services = new Map();
19
+ for (const [name, node] of Object.entries(raw.services)) {
20
+ const n = node;
21
+ if (typeof n.tier !== 'string') {
22
+ throw new Error(`Invalid boot-graph.json: service "${name}" has no tier.`);
23
+ }
24
+ const requires = Array.isArray(n.startupRequires)
25
+ ? (n.startupRequires.filter((r) => typeof r === 'string'))
26
+ : [];
27
+ services.set(name, { tier: n.tier, startupRequires: requires });
28
+ }
29
+ return {
30
+ tiers: raw.tiers,
31
+ infraServices: new Set(raw.infraServices.filter((s) => typeof s === 'string')),
32
+ services,
33
+ resolution,
34
+ };
35
+ }
36
+ function readJson(path) {
37
+ const text = (0, node_fs_1.readFileSync)(path, 'utf8');
38
+ return JSON.parse(text);
39
+ }
40
+ //# sourceMappingURL=boot-graph-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boot-graph-loader.js","sourceRoot":"","sources":["../../src/runtime/boot-graph-loader.ts"],"names":[],"mappings":";;AA6BA,sCAmCC;AAhED,qCAAuC;AAEvC,mCAAwE;AA2BxE,SAAgB,aAAa,CAAC,OAA6B,EAAE;IAC3D,MAAM,UAAU,GAAG,IAAA,4BAAoB,EAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1F,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAInC,CAAC;IACF,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,8BAA8B,UAAU,CAAC,IAAI,yBAAyB,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,8BAA8B,UAAU,CAAC,IAAI,kCAAkC,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,8BAA8B,UAAU,CAAC,IAAI,4BAA4B,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;IACzD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAmC,CAAC,EAAE,CAAC;QACnF,MAAM,CAAC,GAAG,IAAqD,CAAC;QAChE,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,gBAAgB,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC/C,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;YACvE,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,KAA+B;QAC1C,aAAa,EAAE,IAAI,GAAG,CAAE,GAAG,CAAC,aAA2B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;QAC1G,QAAQ;QACR,UAAU;KACX,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,IAAI,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;AACrC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type XemaConfig } from './schema';
2
+ export interface LoadConfigOptions {
3
+ readonly explicit?: string | undefined;
4
+ readonly cwd?: string;
5
+ }
6
+ export interface LoadedConfig {
7
+ readonly config: XemaConfig;
8
+ readonly source: string;
9
+ }
10
+ export declare function loadXemaConfig(opts?: LoadConfigOptions): LoadedConfig;
11
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/runtime/config/loader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAS5D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,cAAc,CAAC,IAAI,GAAE,iBAAsB,GAAG,YAAY,CAmBzE"}