@xemahq/xema 0.4.0 → 0.5.1

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
@@ -193,6 +193,36 @@ What a biome *does* (services, skills, capabilities, agents) is wholly open —
193
193
  only the bundle *shape* is standardized, so every author builds the same way and
194
194
  any source resolves the same way.
195
195
 
196
+ ## Compose a distribution — `xema dist build`
197
+
198
+ Build **your own platform**: take a base edition's first-party biomes and add
199
+ the ones you bring (your git repos / workspace dirs). The composition is
200
+ validated by the real distribution resolver (dependency closure + trust +
201
+ operator rules), then written as a distribution + a launch config:
202
+
203
+ ```bash
204
+ xema dist build --id acme-platform --base oss \
205
+ --git acme=https://github.com/acme/xema-biomes.git \
206
+ --source local=./my-biomes \
207
+ --config-out acme.config.yaml
208
+ # or read sources from an existing config: --config xema.config.yaml
209
+ # --no-allow-third-party rejects non-first-party biomes (default: allowed)
210
+ ```
211
+
212
+ It writes `~/.xema/distributions/<id>/{xema-distribution.json,distribution.lock.json}`
213
+ (the composed recipe + resolved record) and, with `--config-out`, a
214
+ `xema.config.yaml` (base edition + your sources). Then:
215
+
216
+ ```bash
217
+ xema dev --config acme.config.yaml # native — your biomes run from source
218
+ xema up --edition acme-platform # first-party biomes by edition (your composition)
219
+ ```
220
+
221
+ Your composed distribution also shows up as an edition in `xema init` and
222
+ `xema up --edition <id>`. User biomes are `third-party` by origin and launch via
223
+ the source registry (which resolves their source roots); building container
224
+ images for your own biomes is a separate step.
225
+
196
226
  ## Author biomes & run capabilities
197
227
 
198
228
  ```bash
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCpC,wBAAgB,YAAY,IAAI,OAAO,CA2BtC;AAED,wBAAsB,IAAI,CAAC,IAAI,GAAE,aAAa,CAAC,MAAM,CAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpF"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsCpC,wBAAgB,YAAY,IAAI,OAAO,CA4BtC;AAED,wBAAsB,IAAI,CAAC,IAAI,GAAE,aAAa,CAAC,MAAM,CAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpF"}
package/dist/cli.js CHANGED
@@ -9,6 +9,7 @@ const commander_1 = require("commander");
9
9
  const apply_1 = require("./commands/apply");
10
10
  const biome_1 = require("./commands/biome");
11
11
  const dev_1 = require("./commands/dev");
12
+ const dist_1 = require("./commands/dist");
12
13
  const doctor_1 = require("./commands/doctor");
13
14
  const down_1 = require("./commands/down");
14
15
  const export_1 = require("./commands/export");
@@ -45,6 +46,7 @@ function buildProgram() {
45
46
  (0, status_1.registerCommand)(program);
46
47
  (0, logs_1.registerCommand)(program);
47
48
  (0, dev_1.registerCommand)(program);
49
+ (0, dist_1.registerCommand)(program);
48
50
  (0, serve_1.registerCommand)(program);
49
51
  (0, biome_1.registerCommand)(program);
50
52
  (0, plan_1.registerCommand)(program);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.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=dist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dist.d.ts","sourceRoot":"","sources":["../../src/commands/dist.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4BzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6BtD"}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCommand = registerCommand;
4
+ const node_fs_1 = require("node:fs");
5
+ const node_os_1 = require("node:os");
6
+ const node_path_1 = require("node:path");
7
+ const yaml_1 = require("yaml");
8
+ const exit_codes_1 = require("../lib/exit-codes");
9
+ const loader_1 = require("../runtime/config/loader");
10
+ const compose_1 = require("../runtime/distribution/compose");
11
+ const paths_1 = require("../runtime/paths");
12
+ const credentials_1 = require("../runtime/sources/credentials");
13
+ const git_1 = require("../runtime/sources/kinds/git");
14
+ const schema_1 = require("../runtime/sources/schema");
15
+ const DEFAULT_BASE = 'oss';
16
+ const DEFAULT_OUT_DIR = (0, node_path_1.join)((0, node_os_1.homedir)(), '.xema', 'distributions');
17
+ function collect(value, previous) {
18
+ return [...previous, value];
19
+ }
20
+ function registerCommand(program) {
21
+ const dist = program.command('dist').summary('Compose a distribution (build your own platform)');
22
+ dist
23
+ .command('build')
24
+ .summary('Compose a distribution from a base edition + your own biomes')
25
+ .description('Seed a base edition (--base) with its first-party biomes, add your own ' +
26
+ 'biomes from git/workspace sources (--git / --source, or a --config ' +
27
+ 'sources: block), resolve + validate the whole set with the distribution ' +
28
+ 'resolver, and write the distribution (xema-distribution.json + ' +
29
+ 'distribution.lock.json) plus a launch xema.config.yaml.')
30
+ .requiredOption('--id <name>', 'Id for the composed distribution (kebab-case)')
31
+ .option('--base <edition>', `Base edition to extend (default: ${DEFAULT_BASE})`)
32
+ .option('--git <name=url>', 'Add a git biome source (repeatable)', collect, [])
33
+ .option('--source <name=path>', 'Add a local biome dir / workspace (repeatable)', collect, [])
34
+ .option('--config <path>', 'Read additional biome sources from a xema.config.yaml')
35
+ .option('--no-allow-third-party', 'Reject third-party (user) biomes (first-party only)')
36
+ .option('--out-dir <dir>', `Where to write the distribution (default: ${DEFAULT_OUT_DIR})`)
37
+ .option('--config-out <path>', 'Also write a launch xema.config.yaml referencing it')
38
+ .action((opts) => {
39
+ try {
40
+ runDistBuild(opts);
41
+ }
42
+ catch (err) {
43
+ const message = err instanceof Error ? err.message : String(err);
44
+ (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, `xema dist build failed: ${message}`);
45
+ }
46
+ });
47
+ }
48
+ function runDistBuild(opts) {
49
+ const id = opts.id;
50
+ if (id === undefined || !/^[a-z][a-z0-9-]*$/.test(id)) {
51
+ return (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.ConfigurationError, `--id must be lowercase kebab-case (got "${String(id)}").`);
52
+ }
53
+ const base = opts.base ?? DEFAULT_BASE;
54
+ const log = (line) => console.log(` ${line}`);
55
+ const specs = [
56
+ ...(opts.git ?? []).map((s) => gitSpecFrom(s)),
57
+ ...(opts.source ?? []).map((s) => workspaceSpecFrom(s)),
58
+ ...sourcesFromConfig(opts.config),
59
+ ];
60
+ const credentials = new credentials_1.CredentialResolver();
61
+ const userSources = specs.map((spec) => resolveSourceRoot(spec, credentials, log));
62
+ const allowThirdParty = opts.allowThirdParty !== false;
63
+ console.log(`xema dist build — composing "${id}" from base "${base}"`);
64
+ console.log('-'.repeat(60));
65
+ const result = (0, compose_1.composeDistribution)({
66
+ id,
67
+ baseEdition: base,
68
+ userSources,
69
+ allowThirdParty,
70
+ resolvedAt: new Date().toISOString(),
71
+ });
72
+ const outDir = (0, node_path_1.resolve)(process.cwd(), opts.outDir ?? DEFAULT_OUT_DIR, id);
73
+ (0, node_fs_1.mkdirSync)(outDir, { recursive: true });
74
+ (0, node_fs_1.writeFileSync)((0, node_path_1.join)(outDir, 'xema-distribution.json'), `${JSON.stringify(result.definition, null, 2)}\n`, 'utf8');
75
+ (0, node_fs_1.writeFileSync)((0, node_path_1.join)(outDir, 'distribution.lock.json'), `${JSON.stringify(result.lock, null, 2)}\n`, 'utf8');
76
+ if (opts.configOut !== undefined) {
77
+ const configPath = (0, node_path_1.resolve)(process.cwd(), opts.configOut);
78
+ (0, node_fs_1.writeFileSync)(configPath, renderLaunchConfig(base, specs), 'utf8');
79
+ }
80
+ console.log('');
81
+ console.log(`✓ Composed "${id}": ${String(result.lock.biomes.length)} biome(s) ` +
82
+ `(${String(result.baseBiomeCount)} base + ${String(result.userBiomeCount)} user` +
83
+ `${result.overridden.length > 0 ? `, ${String(result.overridden.length)} overridden` : ''}).`);
84
+ console.log(` distribution → ${outDir}/`);
85
+ if (opts.configOut !== undefined) {
86
+ console.log(` launch config → ${(0, node_path_1.resolve)(process.cwd(), opts.configOut)}`);
87
+ console.log('');
88
+ console.log(`Next: xema dev --config ${opts.configOut} (native — user biomes run from source)`);
89
+ }
90
+ else {
91
+ console.log('');
92
+ console.log(`Next: xema up --edition ${id} (add a launch config with --config-out for your git biomes)`);
93
+ }
94
+ }
95
+ function resolveSourceRoot(spec, credentials, log) {
96
+ if (spec.kind === schema_1.SourceKind.Workspace) {
97
+ const root = spec.root !== undefined ? (0, node_path_1.resolve)(process.cwd(), spec.root) : (0, paths_1.findMonorepoRoot)();
98
+ if (root === null) {
99
+ return (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.ConfigurationError, `source "${spec.name}": no root (not in a monorepo and no path given).`);
100
+ }
101
+ return { name: spec.name, root };
102
+ }
103
+ if (spec.kind === schema_1.SourceKind.Git) {
104
+ log(`cloning ${spec.url}${spec.ref !== undefined ? `@${spec.ref}` : ''} …`);
105
+ return { name: spec.name, root: (0, git_1.checkoutGitSource)(spec, credentials, log) };
106
+ }
107
+ return (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.ConfigurationError, `source "${spec.name}" (${spec.kind}) can't seed a composition — use workspace or git ` +
108
+ `(npm/oci are install-time).`);
109
+ }
110
+ function gitSpecFrom(raw) {
111
+ const { name, value } = splitNameValue(raw, '--git');
112
+ return { name, kind: schema_1.SourceKind.Git, url: value };
113
+ }
114
+ function workspaceSpecFrom(raw) {
115
+ const { name, value } = splitNameValue(raw, '--source');
116
+ return { name, kind: schema_1.SourceKind.Workspace, root: value };
117
+ }
118
+ function splitNameValue(raw, flag) {
119
+ const eq = raw.indexOf('=');
120
+ if (eq <= 0) {
121
+ return (0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.ConfigurationError, `${flag} expects <name>=<value>, got "${raw}".`);
122
+ }
123
+ return { name: raw.slice(0, eq).trim(), value: raw.slice(eq + 1).trim() };
124
+ }
125
+ function sourcesFromConfig(configPath) {
126
+ if (configPath === undefined) {
127
+ return [];
128
+ }
129
+ const loaded = (0, loader_1.loadXemaConfig)({ explicit: configPath });
130
+ return loaded.config.sources.filter((s) => s.kind === schema_1.SourceKind.Workspace || s.kind === schema_1.SourceKind.Git);
131
+ }
132
+ function renderLaunchConfig(baseEdition, sources) {
133
+ const config = {
134
+ edition: baseEdition,
135
+ app: { substrate: 'native' },
136
+ sources,
137
+ };
138
+ const header = '# xema.config.yaml — generated by `xema dist build`\n' +
139
+ `# Base edition "${baseEdition}" + your biome sources (launched natively from source).\n\n`;
140
+ return header + (0, yaml_1.stringify)(config, { aliasDuplicateObjects: false });
141
+ }
142
+ //# sourceMappingURL=dist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dist.js","sourceRoot":"","sources":["../../src/commands/dist.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuBtD"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBzC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuBtD"}
@@ -8,6 +8,7 @@ const yaml_1 = require("yaml");
8
8
  const exit_codes_1 = require("../lib/exit-codes");
9
9
  const init_presets_1 = require("../runtime/config/init-presets");
10
10
  const paths_1 = require("../runtime/paths");
11
+ const schema_1 = require("../runtime/sources/schema");
11
12
  const DEFAULT_OUTPUT = 'xema.config.yaml';
12
13
  const DEFAULT_PRESET = init_presets_1.InitPreset.LocalContainer;
13
14
  function registerCommand(program) {
@@ -54,6 +55,13 @@ async function runInit(opts) {
54
55
  else {
55
56
  console.log(` • ${meta.nextStep}`);
56
57
  }
58
+ const sources = resolved.inputs.sources ?? [];
59
+ if (sources.length > 0) {
60
+ console.log('');
61
+ console.log(`Added ${String(sources.length)} biome source(s). They run on the NATIVE substrate ` +
62
+ '(a git clone is source, not an image) — use `xema dev`. Check them with ' +
63
+ '`xema doctor --sources`. For a validated custom distribution: `xema dist build`.');
64
+ }
57
65
  console.log('');
58
66
  console.log('Tune it later: infra modes (managed | external <url> | disabled), app.substrate,');
59
67
  console.log('app.include, and a `sources:` block for extra biome registries (see `xema doctor --sources`).');
@@ -112,12 +120,45 @@ async function runWizard(opts) {
112
120
  if (meta.supportsWeb) {
113
121
  web = await promptYesNo(rl, 'Start the web host shell?', false);
114
122
  }
115
- return { preset, inputs: { edition, web, ...urls } };
123
+ const sources = await promptUserBiomes(rl);
124
+ return {
125
+ preset,
126
+ inputs: { edition, web, ...urls, ...(sources.length > 0 ? { sources } : {}) },
127
+ };
116
128
  }
117
129
  finally {
118
130
  rl.close();
119
131
  }
120
132
  }
133
+ async function promptUserBiomes(rl) {
134
+ console.log('');
135
+ console.log('Biomes come from the chosen edition. You can also add your OWN biomes');
136
+ console.log('(git repos) — or compose a full custom distribution with `xema dist build`.');
137
+ if (!(await promptYesNo(rl, 'Add your own biome git repo(s) now?', false))) {
138
+ return [];
139
+ }
140
+ const sources = [];
141
+ for (;;) {
142
+ const url = (await rl.question(' Git URL (https://…, Enter to stop): ')).trim();
143
+ if (url.length === 0) {
144
+ break;
145
+ }
146
+ const name = await promptText(rl, ' Source name (kebab)', `biomes-${String(sources.length + 1)}`);
147
+ const ref = (await rl.question(' Ref / tag / branch (Enter for default): ')).trim();
148
+ const tokenEnv = (await rl.question(' Token env-var NAME (Enter if public): ')).trim();
149
+ sources.push({
150
+ name,
151
+ kind: schema_1.SourceKind.Git,
152
+ url,
153
+ ...(ref.length > 0 ? { ref } : {}),
154
+ ...(tokenEnv.length > 0 ? { authTokenEnv: tokenEnv } : {}),
155
+ });
156
+ if (!(await promptYesNo(rl, ' Add another?', false))) {
157
+ break;
158
+ }
159
+ }
160
+ return sources;
161
+ }
121
162
  async function promptExternalInfra(rl, preset) {
122
163
  const out = {};
123
164
  out.postgresUrl = await promptText(rl, ' Postgres URL', init_presets_1.DEFAULT_LOCAL_URLS.postgres);
@@ -158,7 +199,10 @@ async function promptEdition(rl, def) {
158
199
  return promptText(rl, 'Distribution edition', def);
159
200
  }
160
201
  const ordered = available.includes(def) ? [def, ...available.filter((e) => e !== def)] : [def, ...available];
161
- const idx = await promptChoice(rl, 'Distribution edition (defined by xema-distributions)', ordered.map((e) => ({ label: e })));
202
+ const idx = await promptChoice(rl, 'Distribution edition (which biomes make up the platform)', ordered.map((e) => {
203
+ const hint = init_presets_1.EDITION_DESCRIPTIONS[e];
204
+ return hint !== undefined ? { label: e, hint } : { label: e };
205
+ }));
162
206
  return ordered[idx] ?? def;
163
207
  }
164
208
  async function promptText(rl, question, def) {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;AAuCA,0CAuBC;AA9DD,qCAAoD;AACpD,yCAAmD;AACnD,qDAAyE;AAEzE,+BAAkD;AAElD,kDAA8D;AAC9D,iEAQwC;AACxC,4CAAyD;AAoBzD,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAC1C,MAAM,cAAc,GAAG,yBAAU,CAAC,cAAc,CAAC;AAEjD,SAAgB,eAAe,CAAC,OAAgB;IAC9C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,OAAO,CAAC,uDAAuD,CAAC;SAChE,WAAW,CACV,yEAAyE;QACvE,4BAA4B,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB;QACzE,qDAAqD,CACxD;SACA,MAAM,CAAC,iBAAiB,EAAE,WAAW,2BAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;SAChE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,cAAc,GAAG,CAAC;SACrE,MAAM,CAAC,gBAAgB,EAAE,qCAAqC,CAAC;SAC/D,MAAM,CAAC,OAAO,EAAE,0DAA0D,CAAC;SAC3E,MAAM,CAAC,OAAO,EAAE,uEAAuE,CAAC;SACxF,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC;SACtD,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,UAAU,GAAG,IAAA,mBAAW,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC;IAC7E,IAAI,IAAA,oBAAU,EAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAClD,OAAO,IAAA,qBAAQ,EACb,4BAAe,CAAC,kBAAkB,EAClC,GAAG,UAAU,oFAAoF,CAClG,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACpD,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAA,gCAAiB,EAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,2BAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE3C,IAAA,uBAAa,EAAC,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,MAAM,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,+FAA+F,CAAC,CAAC;AAC/G,CAAC;AAQD,KAAK,UAAU,sBAAsB,CAAC,IAAiB;IAErD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAA,8BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,IAAA,qBAAQ,EACb,4BAAe,CAAC,kBAAkB,EAClC,qBAAqB,IAAI,CAAC,MAAM,aAAa,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACxE,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACnD,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACnE,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAClE,OAAO,IAAA,qBAAQ,EACb,4BAAe,CAAC,kBAAkB,EAClC,sEAAsE;YACpE,IAAI,2BAAY,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAC5C,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAGD,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,SAAS,GAAG,IAAA,6BAAqB,GAAE,CAAC;IAC1C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CACT,eAAe,OAAO,yCAAyC;YAC7D,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,uDAAuD;YAC/E,2CAA2C,CAC9C,CAAC;IACJ,CAAC;AACH,CAAC;AAGD,SAAS,eAAe,CAAC,IAAiB;IACxC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;QAC9B,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI;KACvB,CAAC;AACJ,CAAC;AAGD,KAAK,UAAU,SAAS,CAAC,IAAiB;IACxC,MAAM,EAAE,GAAG,IAAA,0BAAe,EAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,2BAAY,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,EAAE,EACF,0BAA0B,EAC1B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,CAAC,GAAG,2BAAY,CAAC,CAAC,CAAC,CAAC;YAC1B,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC;QACjD,MAAM,IAAI,GAAG,2BAAY,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;QAE/D,IAAI,IAAI,GAAuB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;YACvF,IAAI,GAAG,MAAM,mBAAmB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;QAC5B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;IACvD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAWD,KAAK,UAAU,mBAAmB,CAAC,EAAa,EAAE,MAAkB;IAClE,MAAM,GAAG,GAAuB,EAAE,CAAC;IACnC,GAAG,CAAC,WAAW,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,iCAAkB,CAAC,QAAQ,CAAC,CAAC;IACtF,IAAI,MAAM,KAAK,yBAAU,CAAC,aAAa,EAAE,CAAC;QACxC,GAAG,CAAC,QAAQ,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,aAAa,EAAE,iCAAkB,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC;IACD,GAAG,CAAC,WAAW,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,iCAAkB,CAAC,QAAQ,CAAC,CAAC;IACtF,GAAG,CAAC,aAAa,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,kBAAkB,EAAE,iCAAkB,CAAC,aAAa,CAAC,CAAC;IAC/F,IAAI,MAAM,KAAK,yBAAU,CAAC,QAAQ,EAAE,CAAC;QACnC,GAAG,CAAC,cAAc,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,oBAAoB,EAAE,iCAAkB,CAAC,WAAW,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,EAAa,EACb,QAAgB,EAChB,KAAsD;IAEtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;IACH,SAAS,CAAC;QACR,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACnF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,yCAAyC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChF,CAAC;AACH,CAAC;AAQD,KAAK,UAAU,aAAa,CAAC,EAAa,EAAE,GAAW;IACrD,MAAM,SAAS,GAAG,IAAA,6BAAqB,GAAE,CAAC;IAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAC,EAAE,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IAC7G,MAAM,GAAG,GAAG,MAAM,YAAY,CAC5B,EAAE,EACF,sDAAsD,EACtD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CACnC,CAAC;IACF,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;AAC7B,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,EAAa,EAAE,QAAgB,EAAE,GAAW;IACpE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,EAAa,EAAE,QAAgB,EAAE,GAAY;IACtE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IACvC,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,KAAK,CAAC;AACtC,CAAC;AAGD,SAAS,gBAAgB,CAAC,MAAkB,EAAE,MAA+B;IAC3E,MAAM,IAAI,GAAG,2BAAY,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG;QACb,oBAAoB;QACpB,0CAA0C,MAAM,EAAE;QAClD,KAAK,IAAI,CAAC,WAAW,EAAE;QACvB,GAAG;QACH,WAAW,IAAI,CAAC,QAAQ,EAAE;QAC1B,+EAA+E;QAC/E,8CAA8C;QAC9C,2EAA2E;QAC3E,EAAE;QACF,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAIb,OAAO,MAAM,GAAG,IAAA,gBAAa,EAAC,MAAM,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { Substrate } from './schema';
2
+ import type { SourceSpec } from '../sources/schema';
3
+ export declare const EDITION_DESCRIPTIONS: Readonly<Record<string, string>>;
2
4
  export declare enum InitPreset {
3
5
  LocalMonolith = "local-monolith",
4
6
  LocalContainer = "local-container",
@@ -21,6 +23,7 @@ export interface PresetInputs {
21
23
  readonly keycloakUrl?: string;
22
24
  readonly keycloakRealm?: string;
23
25
  readonly objectStoreUrl?: string;
26
+ readonly sources?: readonly SourceSpec[];
24
27
  }
25
28
  export interface PresetMeta {
26
29
  readonly preset: InitPreset;
@@ -1 +1 @@
1
- {"version":3,"file":"init-presets.d.ts","sourceRoot":"","sources":["../../../src/runtime/config/init-presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,SAAS,EAAmB,MAAM,UAAU,CAAC;AAW/E,oBAAY,UAAU;IAEpB,aAAa,mBAAmB;IAEhC,cAAc,oBAAoB;IAElC,QAAQ,cAAc;IAEtB,SAAS,cAAc;CACxB;AAED,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAK7C,CAAC;AAGF,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAGX,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAE9B,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAErC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CA2CjE,CAAC;AAGF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAEhE;AAUD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAInG"}
1
+ {"version":3,"file":"init-presets.d.ts","sourceRoot":"","sources":["../../../src/runtime/config/init-presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,SAAS,EAAmB,MAAM,UAAU,CAAC;AAE/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOpD,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjE,CAAC;AAWF,oBAAY,UAAU;IAEpB,aAAa,mBAAmB;IAEhC,cAAc,oBAAoB;IAElC,QAAQ,cAAc;IAEtB,SAAS,cAAc;CACxB;AAED,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAK7C,CAAC;AAGF,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAGX,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAEjC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAE9B,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IAErC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CA2CjE,CAAC;AAGF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAEhE;AAUD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASnG"}
@@ -1,9 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PRESET_METAS = exports.DEFAULT_LOCAL_URLS = exports.INIT_PRESETS = exports.InitPreset = void 0;
3
+ exports.PRESET_METAS = exports.DEFAULT_LOCAL_URLS = exports.INIT_PRESETS = exports.InitPreset = exports.EDITION_DESCRIPTIONS = void 0;
4
4
  exports.parseInitPreset = parseInitPreset;
5
5
  exports.buildPresetConfig = buildPresetConfig;
6
6
  const schema_1 = require("./schema");
7
+ exports.EDITION_DESCRIPTIONS = {
8
+ core: 'minimal floor — kernel + system + base tiers + init services (no platform biomes)',
9
+ oss: 'full open-source platform — core + all platform-tier biomes (most common)',
10
+ cloud: 'core + platform tier, tuned for a hosted/cloud deployment',
11
+ 'appliance-base': 'core + platform for the on-prem appliance build',
12
+ 'xema-internal': 'cloud + operator/fleet-management biomes (internal)',
13
+ };
7
14
  var InitPreset;
8
15
  (function (InitPreset) {
9
16
  InitPreset["LocalMonolith"] = "local-monolith";
@@ -71,6 +78,9 @@ function parseInitPreset(value) {
71
78
  const MANAGED = { mode: schema_1.InfraMode.Managed };
72
79
  function buildPresetConfig(preset, inputs) {
73
80
  const config = buildMinimal(preset, inputs);
81
+ if (inputs.sources !== undefined && inputs.sources.length > 0) {
82
+ config.sources = inputs.sources;
83
+ }
74
84
  (0, schema_1.parseXemaConfig)(config);
75
85
  return config;
76
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init-presets.js","sourceRoot":"","sources":["../../../src/runtime/config/init-presets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-presets.js","sourceRoot":"","sources":["../../../src/runtime/config/init-presets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { DiscoveredBiome } from '../sources/manifest-walk';
2
+ import type { AvailableBiome } from '@xemahq/distribution-resolver';
3
+ import type { LockedBiome } from '@xemahq/kernel-contracts/distribution';
4
+ export declare function lockedBiomeToAvailable(b: LockedBiome): AvailableBiome;
5
+ export declare function discoveredBiomeToAvailable(b: DiscoveredBiome, sourceName: string): AvailableBiome;
6
+ export declare function mergeAvailableBiomes(base: readonly AvailableBiome[], user: readonly AvailableBiome[]): {
7
+ biomes: AvailableBiome[];
8
+ overridden: string[];
9
+ };
10
+ //# sourceMappingURL=available-biome.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"available-biome.d.ts","sourceRoot":"","sources":["../../../src/runtime/distribution/available-biome.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAWzE,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,WAAW,GAAG,cAAc,CAarE;AASD,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,cAAc,CAmBjG;AAOD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,SAAS,cAAc,EAAE,EAC/B,IAAI,EAAE,SAAS,cAAc,EAAE,GAC9B;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAapD"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lockedBiomeToAvailable = lockedBiomeToAvailable;
4
+ exports.discoveredBiomeToAvailable = discoveredBiomeToAvailable;
5
+ exports.mergeAvailableBiomes = mergeAvailableBiomes;
6
+ const biome_1 = require("@xemahq/kernel-contracts/biome");
7
+ function lockedBiomeToAvailable(b) {
8
+ return {
9
+ id: b.id,
10
+ version: b.version,
11
+ tier: b.tier,
12
+ target: b.target,
13
+ origin: b.origin,
14
+ audience: b.audience ?? biome_1.BiomeAudience.Org,
15
+ requires: b.requiresServerBiomes ?? [],
16
+ repo: b.repo,
17
+ path: b.path,
18
+ services: b.services,
19
+ };
20
+ }
21
+ function discoveredBiomeToAvailable(b, sourceName) {
22
+ const manifest = b.manifest;
23
+ const trustTier = 'trustTier' in manifest.xema ? manifest.xema.trustTier : undefined;
24
+ return {
25
+ id: b.id,
26
+ version: b.version,
27
+ tier: b.tier,
28
+ target: b.target === 'server' ? biome_1.BiomeTarget.Server : biome_1.BiomeTarget.Web,
29
+ origin: trustTier ?? biome_1.BiomeOrigin.ThirdParty,
30
+ audience: (0, biome_1.getBiomeAudience)(manifest),
31
+ requires: b.requires,
32
+ repo: `source:${sourceName}`,
33
+ path: b.biomeDir.length > 0 ? b.biomeDir : '.',
34
+ services: b.services.map((s) => s.name),
35
+ };
36
+ }
37
+ function mergeAvailableBiomes(base, user) {
38
+ const byId = new Map();
39
+ for (const b of base) {
40
+ byId.set(b.id, b);
41
+ }
42
+ const overridden = [];
43
+ for (const b of user) {
44
+ if (byId.has(b.id)) {
45
+ overridden.push(b.id);
46
+ }
47
+ byId.set(b.id, b);
48
+ }
49
+ return { biomes: [...byId.values()], overridden };
50
+ }
51
+ //# sourceMappingURL=available-biome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"available-biome.js","sourceRoot":"","sources":["../../../src/runtime/distribution/available-biome.ts"],"names":[],"mappings":";;AAsBA,wDAaC;AASD,gEAmBC;AAOD,oDAgBC;AAtFD,0DAOwC;AAexC,SAAgB,sBAAsB,CAAC,CAAc;IACnD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,qBAAa,CAAC,GAAG;QACzC,QAAQ,EAAE,CAAC,CAAC,oBAAoB,IAAI,EAAE;QACtC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAC;AACJ,CAAC;AASD,SAAgB,0BAA0B,CAAC,CAAkB,EAAE,UAAkB;IAC/E,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAyB,CAAC;IAG7C,MAAM,SAAS,GAAG,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,IAAI,EAAE,CAAC,CAAC,IAAiB;QACzB,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAW,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAW,CAAC,GAAG;QACpE,MAAM,EAAE,SAAS,IAAI,mBAAW,CAAC,UAAU;QAC3C,QAAQ,EAAE,IAAA,wBAAgB,EAAC,QAAQ,CAAC;QACpC,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,IAAI,EAAE,UAAU,UAAU,EAAE;QAG5B,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG;QAC9C,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;KACxC,CAAC;AACJ,CAAC;AAOD,SAAgB,oBAAoB,CAClC,IAA+B,EAC/B,IAA+B;IAE/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC;AACpD,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { Distribution, DistributionLock } from '@xemahq/kernel-contracts/distribution';
2
+ export interface UserBiomeSource {
3
+ readonly name: string;
4
+ readonly root: string;
5
+ }
6
+ export interface ComposeInput {
7
+ readonly id: string;
8
+ readonly displayName?: string;
9
+ readonly baseEdition: string;
10
+ readonly userSources: readonly UserBiomeSource[];
11
+ readonly allowThirdParty: boolean;
12
+ readonly resolvedAt: string;
13
+ }
14
+ export interface ComposeResult {
15
+ readonly definition: Distribution;
16
+ readonly lock: DistributionLock;
17
+ readonly baseBiomeCount: number;
18
+ readonly userBiomeCount: number;
19
+ readonly overridden: readonly string[];
20
+ }
21
+ export declare function composeDistribution(input: ComposeInput): ComposeResult;
22
+ //# sourceMappingURL=compose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../../src/runtime/distribution/compose.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAG5F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAE3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,WAAW,EAAE,SAAS,eAAe,EAAE,CAAC;IAEjD,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAElC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAWD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,aAAa,CAqDtE"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.composeDistribution = composeDistribution;
4
+ const distribution_resolver_1 = require("@xemahq/distribution-resolver");
5
+ const biome_1 = require("@xemahq/kernel-contracts/biome");
6
+ const lock_loader_1 = require("../lock-loader");
7
+ const available_biome_1 = require("./available-biome");
8
+ const manifest_walk_1 = require("../sources/manifest-walk");
9
+ function composeDistribution(input) {
10
+ const { lock: baseLock } = (0, lock_loader_1.loadDistributionLock)({ edition: input.baseEdition });
11
+ const baseBiomes = baseLock.biomes.map(available_biome_1.lockedBiomeToAvailable);
12
+ const userBiomes = [];
13
+ for (const source of input.userSources) {
14
+ const { biomes } = (0, manifest_walk_1.walkBiomeManifests)(source.root);
15
+ for (const b of biomes) {
16
+ userBiomes.push((0, available_biome_1.discoveredBiomeToAvailable)(b, source.name));
17
+ }
18
+ }
19
+ const { biomes: pool, overridden } = (0, available_biome_1.mergeAvailableBiomes)(baseBiomes, userBiomes);
20
+ const definition = {
21
+ schemaVersion: 1,
22
+ id: input.id,
23
+ displayName: input.displayName ?? input.id,
24
+ description: `Custom distribution composed from "${input.baseEdition}" + ${String(input.userSources.length)} user source(s).`,
25
+ include: pool.map((b) => ({ biome: b.id })),
26
+ trustPolicy: {
27
+ allow: input.allowThirdParty
28
+ ? [biome_1.BiomeOrigin.FirstParty, biome_1.BiomeOrigin.ThirdParty]
29
+ : [biome_1.BiomeOrigin.FirstParty],
30
+ },
31
+ platformServices: baseLock.platformServices.map((ps) => ({ name: ps.name, tier: ps.tier })),
32
+ };
33
+ const resolved = (0, distribution_resolver_1.resolveDistribution)(definition, pool, { resolvedAt: input.resolvedAt });
34
+ const requiresById = new Map(pool.map((b) => [b.id, b.requires]));
35
+ const lock = {
36
+ ...resolved,
37
+ biomes: resolved.biomes.map((b) => ({
38
+ ...b,
39
+ requiresServerBiomes: requiresById.get(b.id) ?? [],
40
+ })),
41
+ };
42
+ return {
43
+ definition,
44
+ lock,
45
+ baseBiomeCount: baseBiomes.length,
46
+ userBiomeCount: userBiomes.length,
47
+ overridden,
48
+ };
49
+ }
50
+ //# sourceMappingURL=compose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../../src/runtime/distribution/compose.ts"],"names":[],"mappings":";;AAmDA,kDAqDC;AAxGD,yEAAyF;AACzF,0DAA6D;AAE7D,gDAAsD;AACtD,uDAI2B;AAC3B,4DAA8D;AA0C9D,SAAgB,mBAAmB,CAAC,KAAmB;IACrD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAA,kCAAoB,EAAC,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAChF,MAAM,UAAU,GAAqB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAsB,CAAC,CAAC;IAEjF,MAAM,UAAU,GAAqB,EAAE,CAAC;IACxC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAkB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,IAAA,4CAA0B,EAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAoB,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAElF,MAAM,UAAU,GAAiB;QAC/B,aAAa,EAAE,CAAC;QAChB,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE;QAC1C,WAAW,EAAE,sCAAsC,KAAK,CAAC,WAAW,OAAO,MAAM,CAC/E,KAAK,CAAC,WAAW,CAAC,MAAM,CACzB,kBAAkB;QAInB,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,WAAW,EAAE;YACX,KAAK,EAAE,KAAK,CAAC,eAAe;gBAC1B,CAAC,CAAC,CAAC,mBAAW,CAAC,UAAU,EAAE,mBAAW,CAAC,UAAU,CAAC;gBAClD,CAAC,CAAC,CAAC,mBAAW,CAAC,UAAU,CAAC;SAC7B;QACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;KAC5F,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAA,2CAAmB,EAAC,UAAU,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IAIzF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,IAAI,GAAqB;QAC7B,GAAG,QAAQ;QACX,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,GAAG,CAAC;YACJ,oBAAoB,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE;SACnD,CAAC,CAAC;KACJ,CAAC;IAEF,OAAO;QACL,UAAU;QACV,IAAI;QACJ,cAAc,EAAE,UAAU,CAAC,MAAM;QACjC,cAAc,EAAE,UAAU,CAAC,MAAM;QACjC,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -2,8 +2,9 @@ export declare function findMonorepoRoot(startDir?: string): string | null;
2
2
  export declare function listAvailableEditions(): string[];
3
3
  export interface ArtifactResolution {
4
4
  readonly path: string;
5
- readonly source: 'flag' | 'env' | 'vendored' | 'monorepo';
5
+ readonly source: 'flag' | 'env' | 'user' | 'vendored' | 'monorepo';
6
6
  }
7
+ export declare function userDistributionsDir(): string;
7
8
  export interface ResolveArtifactOptions {
8
9
  readonly explicit?: string | undefined;
9
10
  readonly envVar?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/runtime/paths.ts"],"names":[],"mappings":"AAqBA,wBAAgB,gBAAgB,CAAC,QAAQ,GAAE,MAAkB,GAAG,MAAM,GAAG,IAAI,CAY5E;AAgBD,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAQhD;AAmBD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,CAAC;CAC3D;AAED,MAAM,WAAW,sBAAsB;IAErC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAcD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,CA2B5F;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,CAwBrF;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,GAAG,kBAAkB,CAwBtG"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/runtime/paths.ts"],"names":[],"mappings":"AAsBA,wBAAgB,gBAAgB,CAAC,QAAQ,GAAE,MAAkB,GAAG,MAAM,GAAG,IAAI,CAY5E;AAgBD,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAShD;AAmBD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;CACpE;AAGD,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,MAAM,WAAW,sBAAsB;IAErC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAcD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,CAiC5F;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,CAwBrF;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,GAAG,kBAAkB,CAwBtG"}
@@ -2,10 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findMonorepoRoot = findMonorepoRoot;
4
4
  exports.listAvailableEditions = listAvailableEditions;
5
+ exports.userDistributionsDir = userDistributionsDir;
5
6
  exports.resolveDistributionLockPath = resolveDistributionLockPath;
6
7
  exports.resolveImageLockPath = resolveImageLockPath;
7
8
  exports.resolveBootGraphPath = resolveBootGraphPath;
8
9
  const node_fs_1 = require("node:fs");
10
+ const node_os_1 = require("node:os");
9
11
  const node_path_1 = require("node:path");
10
12
  const MONOREPO_ROOT_MARKERS = ['pnpm-workspace.yaml', 'repos-infra/xema-distributions'];
11
13
  function findMonorepoRoot(startDir = __dirname) {
@@ -31,6 +33,7 @@ function listAvailableEditions() {
31
33
  collectEditionsFrom((0, node_path_1.join)(monorepo, 'repos-infra', 'xema-distributions'), editions);
32
34
  }
33
35
  collectEditionsFrom(vendoredAssetsDir(), editions);
36
+ collectEditionsFrom(userDistributionsDir(), editions);
34
37
  return [...editions].sort();
35
38
  }
36
39
  function collectEditionsFrom(dir, into) {
@@ -50,6 +53,9 @@ function collectEditionsFrom(dir, into) {
50
53
  }
51
54
  }
52
55
  }
56
+ function userDistributionsDir() {
57
+ return (0, node_path_1.join)((0, node_os_1.homedir)(), '.xema', 'distributions');
58
+ }
53
59
  function firstExisting(candidates) {
54
60
  for (const c of candidates) {
55
61
  if ((0, node_fs_1.existsSync)(c.path)) {
@@ -67,6 +73,10 @@ function resolveDistributionLockPath(opts) {
67
73
  if (opts.envVar) {
68
74
  candidates.push({ path: absolutize(opts.envVar), source: 'env' });
69
75
  }
76
+ candidates.push({
77
+ path: (0, node_path_1.join)(userDistributionsDir(), opts.edition, 'distribution.lock.json'),
78
+ source: 'user',
79
+ });
70
80
  if (monorepo) {
71
81
  candidates.push({
72
82
  path: (0, node_path_1.join)(monorepo, 'repos-infra/xema-distributions', opts.edition, 'distribution.lock.json'),
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/runtime/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/runtime/paths.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,9 @@
1
1
  import { type LockIndex } from '../../roster';
2
+ import type { CredentialResolver } from '../credentials';
2
3
  import type { GitSource } from '../schema';
3
4
  import type { SourceResolveContext } from '../types';
5
+ type LogFn = (line: string) => void;
4
6
  export declare function resolveGitSource(spec: GitSource, ctx: SourceResolveContext): LockIndex | null;
7
+ export declare function checkoutGitSource(spec: GitSource, credentials: CredentialResolver, log?: LogFn): string;
8
+ export {};
5
9
  //# sourceMappingURL=git.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../../../src/runtime/sources/kinds/git.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAmBrD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,CAmB7F"}
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../../../src/runtime/sources/kinds/git.ts"],"names":[],"mappings":"AAKA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAGrD,KAAK,KAAK,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAmBpC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,CAgB7F;AAOD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,EACf,WAAW,EAAE,kBAAkB,EAC/B,GAAG,CAAC,EAAE,KAAK,GACV,MAAM,CAMR"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveGitSource = resolveGitSource;
4
+ exports.checkoutGitSource = checkoutGitSource;
4
5
  const node_child_process_1 = require("node:child_process");
5
6
  const node_fs_1 = require("node:fs");
6
7
  const node_os_1 = require("node:os");
@@ -16,20 +17,24 @@ function resolveGitSource(spec, ctx) {
16
17
  `(a clone is source, not an image; use native substrate for git biomes).`);
17
18
  return null;
18
19
  }
19
- const token = ctx.credentials.resolve(spec.authTokenEnv, spec.name);
20
- const ref = spec.ref ?? 'HEAD';
21
- const dir = (0, node_path_1.join)(GIT_CACHE_DIR, spec.name);
22
- ensureClone(spec, dir, ref, token, ctx);
20
+ const dir = checkoutGitSource(spec, ctx.credentials, ctx.log);
23
21
  const { biomes } = (0, manifest_walk_1.walkBiomeManifests)(dir);
24
22
  const serverBiomes = biomes.filter((b) => b.target === 'server' && b.services.length > 0);
25
- ctx.log?.(`source "${spec.name}" (git): ${String(serverBiomes.length)} biome(s) from ${spec.url}@${ref}`);
23
+ ctx.log?.(`source "${spec.name}" (git): ${String(serverBiomes.length)} biome(s) from ${spec.url}@${spec.ref ?? 'HEAD'}`);
26
24
  return (0, roster_1.indexFromDiscoveredBiomes)(serverBiomes, { sourceName: spec.name, sourceRoot: dir });
27
25
  }
28
- function ensureClone(spec, dir, ref, token, ctx) {
26
+ function checkoutGitSource(spec, credentials, log) {
27
+ const token = credentials.resolve(spec.authTokenEnv, spec.name);
28
+ const ref = spec.ref ?? 'HEAD';
29
+ const dir = (0, node_path_1.join)(GIT_CACHE_DIR, spec.name);
30
+ ensureClone(spec, dir, ref, token, log);
31
+ return dir;
32
+ }
33
+ function ensureClone(spec, dir, ref, token, log) {
29
34
  if ((0, node_fs_1.existsSync)((0, node_path_1.join)(dir, REF_MARKER))) {
30
35
  const cached = (0, node_fs_1.readFileSync)((0, node_path_1.join)(dir, REF_MARKER), 'utf8').trim();
31
36
  if (cached === ref) {
32
- ctx.log?.(`source "${spec.name}" (git): reusing cached clone (${ref}).`);
37
+ log?.(`source "${spec.name}" (git): reusing cached clone (${ref}).`);
33
38
  return;
34
39
  }
35
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../../../src/runtime/sources/kinds/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../../../../src/runtime/sources/kinds/git.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/xema",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Xema OS global CLI (plan v4.3 §6 Phase J). Single binary day-0 onboarding: `npm i -g @xemahq/xema && xema dev` boots the whole stack; `xema biome scaffold` / `install` / `publish` / `lint` author and ship biomes; `xema run <capability>` invokes through the local capability-router. Multi-platform: works without pnpm or any monorepo clone.",
6
6
  "type": "commonjs",
@@ -21,6 +21,7 @@
21
21
  "@nestjs/common": "11.1.13",
22
22
  "@nestjs/core": "11.1.13",
23
23
  "@nestjs/platform-express": "11.1.13",
24
+ "@xemahq/distribution-resolver": "^0.1.1",
24
25
  "@xemahq/kernel-contracts": "^0.22.0",
25
26
  "@xemahq/kernel-state-runtime": "^0.1.5",
26
27
  "@xemahq/service-registry-nest": "^0.1.9",