@pleri/olam-cli 0.1.14 → 0.1.21

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 (37) hide show
  1. package/dist/__tests__/auth-upgrade.test.js +236 -1
  2. package/dist/__tests__/auth-upgrade.test.js.map +1 -1
  3. package/dist/__tests__/install-root.test.d.ts +2 -0
  4. package/dist/__tests__/install-root.test.d.ts.map +1 -0
  5. package/dist/__tests__/install-root.test.js +119 -0
  6. package/dist/__tests__/install-root.test.js.map +1 -0
  7. package/dist/__tests__/upgrade.test.js +292 -2
  8. package/dist/__tests__/upgrade.test.js.map +1 -1
  9. package/dist/commands/__tests__/bootstrap.test.d.ts +2 -0
  10. package/dist/commands/__tests__/bootstrap.test.d.ts.map +1 -0
  11. package/dist/commands/__tests__/bootstrap.test.js +288 -0
  12. package/dist/commands/__tests__/bootstrap.test.js.map +1 -0
  13. package/dist/commands/__tests__/upgrade.rollback.test.js +1 -1
  14. package/dist/commands/__tests__/upgrade.swap.test.js +1 -1
  15. package/dist/commands/auth-upgrade.d.ts +41 -0
  16. package/dist/commands/auth-upgrade.d.ts.map +1 -1
  17. package/dist/commands/auth-upgrade.js +158 -6
  18. package/dist/commands/auth-upgrade.js.map +1 -1
  19. package/dist/commands/bootstrap.d.ts +95 -0
  20. package/dist/commands/bootstrap.d.ts.map +1 -0
  21. package/dist/commands/bootstrap.js +329 -0
  22. package/dist/commands/bootstrap.js.map +1 -0
  23. package/dist/commands/create.d.ts.map +1 -1
  24. package/dist/commands/create.js +19 -1
  25. package/dist/commands/create.js.map +1 -1
  26. package/dist/commands/upgrade.d.ts +76 -1
  27. package/dist/commands/upgrade.d.ts.map +1 -1
  28. package/dist/commands/upgrade.js +215 -8
  29. package/dist/commands/upgrade.js.map +1 -1
  30. package/dist/image-digests.json +8 -0
  31. package/dist/index.js +951 -201
  32. package/dist/index.js.map +1 -1
  33. package/dist/install-root.d.ts +74 -0
  34. package/dist/install-root.d.ts.map +1 -0
  35. package/dist/install-root.js +98 -0
  36. package/dist/install-root.js.map +1 -0
  37. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@
11
11
  * wait for /health
12
12
  */
13
13
  import type { Command } from 'commander';
14
+ import { type DockerImpl, type ImageDigests } from './bootstrap.js';
14
15
  export interface UpgradeOpts {
15
16
  readonly yes: boolean;
16
17
  readonly skipImage: boolean;
@@ -27,6 +28,13 @@ export interface UpgradeOpts {
27
28
  /** Phase 2c — C2: --history -n <N>; --history --json. */
28
29
  readonly historyN: number;
29
30
  readonly historyJson: boolean;
31
+ /**
32
+ * Phase C — C6: opt into the legacy source-build path
33
+ * (`bash build-*.sh` invoked through `resolveBuildScript()`). Only
34
+ * works when isDevMode() is true. Default false → CLI takes the
35
+ * pull-by-digest path that operators on installed CLIs need.
36
+ */
37
+ readonly fromSource: boolean;
30
38
  }
31
39
  /**
32
40
  * Check whether node_modules is in sync with package-lock.json.
@@ -74,6 +82,7 @@ export declare function parseUpgradeOpts(raw: {
74
82
  history?: boolean;
75
83
  n?: string | number;
76
84
  json?: boolean;
85
+ fromSource?: boolean;
77
86
  }): UpgradeOpts;
78
87
  /**
79
88
  * Extract the JS bundle hash from index.html.
@@ -140,7 +149,7 @@ export interface SmokeResult {
140
149
  *
141
150
  * Returns ok=true when:
142
151
  * - `docker create <image>` exits 0 (image manifest valid, layers downloadable).
143
- * - `docker inspect <image> --format '{{.Config.Labels.olam_build_sha}}'`
152
+ * - `docker inspect <image> --format '{{index .Config.Labels "olam.build.sha"}}'`
144
153
  * returns the expected `targetSha`.
145
154
  *
146
155
  * The container created by `docker create` is removed via `docker rm` even on
@@ -327,6 +336,72 @@ export declare function waitForVersionMatch(targetSha: string, timeoutMs?: numbe
327
336
  * which component is lagging.
328
337
  */
329
338
  export declare function formatVersionMismatch(targetSha: string, snapshot: VersionSnapshot | null): string;
339
+ /**
340
+ * Phase C — C6: default `olam upgrade` flow for installed CLIs.
341
+ *
342
+ * Mirrors `bootstrap.ts`'s parallel-pull-by-digest pattern, then swaps
343
+ * the running stack to the freshly-pulled images via
344
+ * `docker compose -f packages/host-cp/compose.yaml up -d --force-recreate`
345
+ * (host-cp + docker-socket-proxy) plus AuthContainerController for the
346
+ * auth-service container (which does not live in the compose file —
347
+ * matches the recreate path used elsewhere in this module).
348
+ *
349
+ * Reuses `pullImageWithRetry`, `loadImageDigests`, `realDocker`,
350
+ * `checkProtocolOverlap`, and `parseProtocolVersionsLabel` so retry +
351
+ * coalesce + handshake semantics stay identical to bootstrap. NOT a
352
+ * reimplementation — every primitive is imported.
353
+ *
354
+ * Exit codes:
355
+ * - 0 — stack swapped to new digests successfully.
356
+ * - EXIT_BOOTSTRAP_PULL_FAILED (3) — at least one image pull failed.
357
+ * - EXIT_PROTOCOL_MISMATCH (4) — handshake refused on no-overlap.
358
+ * - EXIT_GENERIC_ERROR (1) — daemon unreachable, recreate failed,
359
+ * auth recreate failed, etc.
360
+ */
361
+ export interface UpgradePullResult {
362
+ readonly exitCode: number;
363
+ readonly summary: string;
364
+ }
365
+ export interface UpgradePullDeps {
366
+ readonly docker?: DockerImpl;
367
+ readonly digests?: ImageDigests;
368
+ readonly registry?: string;
369
+ /**
370
+ * Compose driver. Default: real `runCompose` from host-cp.ts. Tests
371
+ * inject a stub to avoid spawning `docker compose`.
372
+ */
373
+ readonly runComposeImpl?: (args: readonly string[], composeFile: string, extraEnv: Record<string, string>) => {
374
+ ok: boolean;
375
+ stdout: string;
376
+ stderr: string;
377
+ };
378
+ /**
379
+ * Auth-service recreate driver. Default: stop + rm + controller.start().
380
+ * Tests inject a stub so AuthContainerController doesn't spawn docker.
381
+ */
382
+ readonly recreateAuth?: () => Promise<{
383
+ ok: boolean;
384
+ error?: string;
385
+ }>;
386
+ /**
387
+ * Path to packages/host-cp/compose.yaml. Defaults to <cwd>/packages/...
388
+ * Tests inject a tmp path; production reads from the operator's cwd
389
+ * (host-cp.ts's findComposeFile() falls through to cwd-rooted path).
390
+ */
391
+ readonly composeFile?: string;
392
+ /** Operator-state auth secret. Default: readAuthSecret(). */
393
+ readonly authSecret?: string | null;
394
+ /**
395
+ * Docker-tag driver. Default: real `dockerTag()` (spawnSync). Tests
396
+ * inject a stub so the swap step doesn't depend on a docker daemon
397
+ * being present.
398
+ */
399
+ readonly tagImpl?: (from: string, to: string) => {
400
+ ok: boolean;
401
+ error?: string;
402
+ };
403
+ }
404
+ export declare function runUpgradePullByDigest(deps?: UpgradePullDeps): Promise<UpgradePullResult>;
330
405
  export declare function registerUpgrade(program: Command): void;
331
406
  export {};
332
407
  //# sourceMappingURL=upgrade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBzC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yEAAyE;IACzE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yDAAyD;IACzD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAaxD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE;IAAE,WAAW,EAAE,OAAO,CAAA;CAAE,EAC9B,GAAG,EAAE,MAAM,GACV;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAQlD;AAED,+CAA+C;AAC/C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAWzF;AAED,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE;IACpC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,WAAW,CAoBd;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGlE;AAuDD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWzD;AAED,qEAAqE;AACrE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAUhD;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,IAAI,CAInF;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,CAgExE;AAED;;;;;;GAMG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,QAAQ,CAIxD,CAAC;AAEF,0CAA0C;AAC1C,UAAU,eAAe;IACvB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAiBvE;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kGAAkG;IAClG,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,8EAA8E;IAC9E,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,UAAU,CA2E3E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG;IAClE,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,aAAa,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvE,OAAO,EAAE,MAAM,CAAC;CACjB,CAeA;AA8BD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3G,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAChH,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3G,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,SAAS,SAAS,EAClB,cAAc,SAAQ,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAA;CAAE,CAAC,CAyBjE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,eAAe,GAAG,IAAI,GAC/B,MAAM,CAYR;AAktBD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgDtD"}
1
+ {"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@
13
13
  import * as fs from 'node:fs';
14
14
  import * as path from 'node:path';
15
15
  import { spawnSync } from 'node:child_process';
16
+ import ora from 'ora';
16
17
  import pc from 'picocolors';
17
18
  import { printError, printSuccess, printInfo, printWarning, printHeader } from '../output.js';
18
19
  import { buildComposeEnv, readAuthSecret, runCompose } from './host-cp.js';
@@ -20,6 +21,10 @@ import { acquireLock, releaseLock, formatRefusalMessage, LOCK_FILE_PATH } from '
20
21
  import { appendUpgradeLog } from './upgrade-log.js';
21
22
  import { handleHistory, parseHistoryOpts } from './upgrade-history.js';
22
23
  import { AuthContainerController } from '@olam/core/src/auth/index.js';
24
+ import { loadImageDigests, pullImageWithRetry, realDocker, } from './bootstrap.js';
25
+ import { EXIT_BOOTSTRAP_PULL_FAILED, EXIT_GENERIC_ERROR, EXIT_PROTOCOL_MISMATCH, } from '../exit-codes.js';
26
+ import { checkProtocolOverlap, parseProtocolVersionsLabel } from '../protocol-version.js';
27
+ import { isDevMode, MissingBuildScriptError } from '../install-root.js';
23
28
  const AUTH_HEALTH_URL = 'http://127.0.0.1:9999/health';
24
29
  /**
25
30
  * Check whether node_modules is in sync with package-lock.json.
@@ -93,6 +98,7 @@ export function parseUpgradeOpts(raw) {
93
98
  history: raw.history === true,
94
99
  historyN: Number.isFinite(historyN) && historyN > 0 ? historyN : 10,
95
100
  historyJson: raw.json === true,
101
+ fromSource: raw.fromSource === true,
96
102
  };
97
103
  }
98
104
  /**
@@ -208,7 +214,7 @@ export function checkRollbackSetExists(plan) {
208
214
  *
209
215
  * Returns ok=true when:
210
216
  * - `docker create <image>` exits 0 (image manifest valid, layers downloadable).
211
- * - `docker inspect <image> --format '{{.Config.Labels.olam_build_sha}}'`
217
+ * - `docker inspect <image> --format '{{index .Config.Labels "olam.build.sha"}}'`
212
218
  * returns the expected `targetSha`.
213
219
  *
214
220
  * The container created by `docker create` is removed via `docker rm` even on
@@ -231,7 +237,7 @@ export function smokeImage(image, targetSha) {
231
237
  }
232
238
  const containerId = (createResult.stdout ?? '').trim();
233
239
  // 2. docker inspect — read the OLAM_BUILD_SHA label.
234
- const inspectResult = spawnSync('docker', ['inspect', '--format', '{{index .Config.Labels "olam_build_sha"}}', image], {
240
+ const inspectResult = spawnSync('docker', ['inspect', '--format', '{{index .Config.Labels "olam.build.sha"}}', image], {
235
241
  encoding: 'utf-8',
236
242
  stdio: ['ignore', 'pipe', 'pipe'],
237
243
  });
@@ -257,7 +263,7 @@ export function smokeImage(image, targetSha) {
257
263
  image,
258
264
  ok: false,
259
265
  bakedSha: null,
260
- error: 'olam_build_sha label is missing or empty',
266
+ error: 'olam.build.sha label is missing or empty',
261
267
  };
262
268
  }
263
269
  // Allow either full 40-char SHA or "unknown" (build-host-cp.sh writes
@@ -499,7 +505,7 @@ async function waitForHealth(timeoutMs = 10_000) {
499
505
  * - { matched: false, snapshot: null } when /api/version/status is
500
506
  * unreachable for the entire timeout (host-cp didn't come back up).
501
507
  */
502
- export async function waitForVersionMatch(targetSha, timeoutMs = 60_000, pollIntervalMs = 1_000) {
508
+ export async function waitForVersionMatch(targetSha, timeoutMs = 90_000, pollIntervalMs = 1_000) {
503
509
  const deadline = Date.now() + timeoutMs;
504
510
  let lastSnapshot = null;
505
511
  while (Date.now() < deadline) {
@@ -627,6 +633,155 @@ function readBundleHash(cwd) {
627
633
  return null;
628
634
  return extractBundleHash(fs.readFileSync(indexPath, 'utf-8'));
629
635
  }
636
+ export async function runUpgradePullByDigest(deps = {}) {
637
+ const docker = deps.docker ?? realDocker;
638
+ const digests = deps.digests ?? loadImageDigests();
639
+ const registry = deps.registry ?? digests.$registry ?? 'ghcr.io/pleri';
640
+ printHeader('olam upgrade (pull-by-digest)');
641
+ // Step 1 — daemon smoke. Re-uses bootstrap's docker.info().
642
+ const infoSpinner = ora('Checking docker daemon').start();
643
+ const info = await docker.info();
644
+ if (info.exitCode !== 0) {
645
+ infoSpinner.fail('docker daemon not reachable');
646
+ process.stderr.write(`${pc.red('error')} docker info exited with ${info.exitCode}.\n` +
647
+ ' Ensure Docker Desktop / Colima / Rancher is running, then retry.\n');
648
+ return { exitCode: EXIT_GENERIC_ERROR, summary: 'docker daemon not reachable' };
649
+ }
650
+ infoSpinner.succeed('docker daemon reachable');
651
+ // Step 2 — parallel pull all 3 images by digest.
652
+ const imageRefs = [
653
+ { name: 'host-cp', ref: `${registry}/olam-host-cp@${digests['host-cp']}` },
654
+ { name: 'auth', ref: `${registry}/olam-auth@${digests.auth}` },
655
+ { name: 'devbox', ref: `${registry}/olam-devbox@${digests.devbox}` },
656
+ ];
657
+ const pullSpinner = ora('Pulling images (3 parallel)').start();
658
+ const pullStart = Date.now();
659
+ const pullResults = await Promise.all(imageRefs.map(async ({ name, ref }) => ({
660
+ name,
661
+ ref,
662
+ result: await pullImageWithRetry(ref, docker),
663
+ })));
664
+ const pullElapsed = ((Date.now() - pullStart) / 1000).toFixed(1);
665
+ const failed = pullResults.filter((r) => r.result.exitCode !== 0);
666
+ if (failed.length > 0) {
667
+ pullSpinner.fail(`Pull failed for ${failed.map((r) => r.name).join(', ')}`);
668
+ for (const f of failed) {
669
+ process.stderr.write(` ${pc.red(f.name)} (${f.ref}):\n` +
670
+ ` exit=${f.result.exitCode}\n` +
671
+ ` stderr: ${f.result.stderr.split('\n')[0] ?? '(empty)'}\n`);
672
+ }
673
+ process.stderr.write('\n Remedy: re-run after resolving network / GHCR availability.\n' +
674
+ ' For monorepo dev, `OLAM_DEV=1 olam upgrade --from-source` builds locally.\n');
675
+ return {
676
+ exitCode: EXIT_BOOTSTRAP_PULL_FAILED,
677
+ summary: `pull failed: ${failed.map((r) => r.name).join(', ')}`,
678
+ };
679
+ }
680
+ pullSpinner.succeed(`Pulled 3 images in ${pullElapsed}s`);
681
+ // Step 3 — protocol-version handshake on every image.
682
+ const handshakeSpinner = ora('Verifying olam.protocol.versions handshake').start();
683
+ for (const { name, ref } of imageRefs) {
684
+ const inspect = await docker.inspectLabel(ref, 'olam.protocol.versions');
685
+ if (inspect.exitCode !== 0) {
686
+ handshakeSpinner.fail(`Could not inspect ${name}`);
687
+ process.stderr.write(`${pc.red('error')} docker inspect ${ref} failed: ${inspect.stderr}\n`);
688
+ return { exitCode: EXIT_GENERIC_ERROR, summary: `inspect failed: ${name}` };
689
+ }
690
+ const labelValue = (inspect.stdout || '').trim();
691
+ const versions = parseProtocolVersionsLabel(labelValue === '<no value>' ? '' : labelValue);
692
+ const decision = checkProtocolOverlap(versions);
693
+ if (!decision.compatible) {
694
+ handshakeSpinner.fail(`Protocol mismatch on ${name}`);
695
+ process.stderr.write(`${pc.red('error')} ${decision.remedy}\n`);
696
+ return {
697
+ exitCode: EXIT_PROTOCOL_MISMATCH,
698
+ summary: `protocol mismatch: ${name}`,
699
+ };
700
+ }
701
+ }
702
+ handshakeSpinner.succeed('Protocol handshake passed (all 3 images)');
703
+ // Step 4 — re-tag pulled-by-digest images to the canonical local tags
704
+ // that compose.yaml + AuthContainerController expect. Pulling by
705
+ // digest only writes a content-addressed reference; compose / the
706
+ // controller key on `olam-host-cp:latest` and `olam-auth:local`
707
+ // respectively, so we tag explicitly.
708
+ const tagPlan = [
709
+ { from: imageRefs[0].ref, to: 'olam-host-cp:latest', name: 'host-cp' },
710
+ { from: imageRefs[1].ref, to: 'olam-auth:local', name: 'auth' },
711
+ { from: imageRefs[2].ref, to: 'olam-devbox:latest', name: 'devbox' },
712
+ ];
713
+ const tagSpinner = ora('Tagging digests → canonical local refs').start();
714
+ const tagger = deps.tagImpl ?? dockerTag;
715
+ for (const t of tagPlan) {
716
+ const r = tagger(t.from, t.to);
717
+ if (!r.ok) {
718
+ tagSpinner.fail(`docker tag failed for ${t.name}`);
719
+ process.stderr.write(`${pc.red('error')} ${r.error ?? 'docker tag failed'}\n`);
720
+ return { exitCode: EXIT_GENERIC_ERROR, summary: `tag failed: ${t.name}` };
721
+ }
722
+ }
723
+ tagSpinner.succeed('Re-tagged 3 images to canonical refs');
724
+ // Step 5 — recreate host-cp via docker compose. Auth-service is NOT in
725
+ // compose.yaml (runs via AuthContainerController.start), so we recreate
726
+ // it separately in step 6.
727
+ const composeFile = deps.composeFile ?? path.join(process.cwd(), 'packages/host-cp/compose.yaml');
728
+ const authSecret = deps.authSecret ?? readAuthSecret();
729
+ const composeRunner = deps.runComposeImpl ?? runCompose;
730
+ const composeSpinner = ora('docker compose recreate host-cp').start();
731
+ const composeResult = composeRunner(['up', '-d', '--force-recreate', 'host-cp'], composeFile, buildComposeEnv(authSecret));
732
+ if (!composeResult.ok) {
733
+ composeSpinner.fail('compose recreate failed');
734
+ process.stderr.write(`${pc.red('error')} docker compose up --force-recreate host-cp failed:\n` +
735
+ ` ${composeResult.stderr.split('\n').slice(0, 3).join('\n ')}\n`);
736
+ return { exitCode: EXIT_GENERIC_ERROR, summary: 'compose recreate failed' };
737
+ }
738
+ composeSpinner.succeed('host-cp recreated');
739
+ // Step 6 — recreate auth-service.
740
+ const authSpinner = ora('recreate auth-service').start();
741
+ const authRecreate = deps.recreateAuth ?? defaultRecreateAuthForUpgrade;
742
+ const authResult = await authRecreate();
743
+ if (!authResult.ok) {
744
+ authSpinner.fail('auth-service recreate failed');
745
+ process.stderr.write(`${pc.red('error')} ${authResult.error ?? 'unknown failure'}\n`);
746
+ return { exitCode: EXIT_GENERIC_ERROR, summary: 'auth recreate failed' };
747
+ }
748
+ authSpinner.succeed('auth-service running on new image');
749
+ printSuccess('Upgrade complete (pull-by-digest)');
750
+ printInfo('host-cp', `running (${digests['host-cp'].slice(0, 19)}…)`);
751
+ printInfo('auth', `running (${digests.auth.slice(0, 19)}…)`);
752
+ printInfo('devbox', `pulled (${digests.devbox.slice(0, 19)}…)`);
753
+ return { exitCode: 0, summary: 'stack upgraded' };
754
+ }
755
+ /**
756
+ * Default auth-recreate driver for the pull-by-digest upgrade path.
757
+ * Mirrors recreateAuthService() defined later in this file but trimmed
758
+ * to a UpgradePullDeps.recreateAuth-shaped result.
759
+ */
760
+ async function defaultRecreateAuthForUpgrade() {
761
+ try {
762
+ spawnSync('docker', ['stop', 'olam-auth'], {
763
+ encoding: 'utf-8',
764
+ stdio: ['ignore', 'ignore', 'ignore'],
765
+ });
766
+ spawnSync('docker', ['rm', 'olam-auth'], {
767
+ encoding: 'utf-8',
768
+ stdio: ['ignore', 'ignore', 'ignore'],
769
+ });
770
+ const controller = new AuthContainerController();
771
+ controller.start();
772
+ const healthy = await waitForAuthHealthLocal(15_000);
773
+ if (!healthy) {
774
+ return { ok: false, error: 'auth-service /health did not respond within 15s' };
775
+ }
776
+ return { ok: true };
777
+ }
778
+ catch (err) {
779
+ return {
780
+ ok: false,
781
+ error: err instanceof Error ? err.message : String(err),
782
+ };
783
+ }
784
+ }
630
785
  // ── Main handler ──────────────────────────────────────────────────
631
786
  async function handleUpgrade(opts) {
632
787
  const cwd = process.cwd();
@@ -973,8 +1128,23 @@ async function runUpgradeStepsWithLockHeld(opts, cwd, logRow) {
973
1128
  { label: 'bash build-devbox.sh', relPath: 'packages/adapters/src/docker/build-devbox.sh', tee: true },
974
1129
  { label: 'bash build-host-cp.sh', relPath: 'packages/adapters/src/docker/build-host-cp.sh', tee: false },
975
1130
  ];
1131
+ // Phase B6: resolve each build script via installRoot + dev-mode check.
1132
+ // Outside dev mode, surface the named remedy and exit cleanly. The
1133
+ // pull-by-digest default path (no --from-source flag) lands in C6.
1134
+ const { resolveBuildScript, MissingBuildScriptError } = await import('../install-root.js');
976
1135
  for (const step of buildScripts) {
977
- const scriptPath = path.join(cwd, step.relPath);
1136
+ let scriptPath;
1137
+ try {
1138
+ scriptPath = resolveBuildScript({ scriptRelPath: step.relPath });
1139
+ }
1140
+ catch (err) {
1141
+ if (err instanceof MissingBuildScriptError) {
1142
+ printError(err.message);
1143
+ process.exitCode = 1;
1144
+ return;
1145
+ }
1146
+ throw err;
1147
+ }
978
1148
  if (step.tee) {
979
1149
  // Live-tee variant: stdio: 'inherit' so docker build's apt/bundle/npm
980
1150
  // progress reaches the operator's terminal in real-time. No stdout
@@ -1133,9 +1303,15 @@ async function runUpgradeStepsWithLockHeld(opts, cwd, logRow) {
1133
1303
  // captured target. This is the success criterion for the entire upgrade —
1134
1304
  // round-trips through Phase 1's detection path so the SPA banner clears
1135
1305
  // automatically once the polling loop succeeds.
1306
+ //
1307
+ // Phase 2.5 polish: 60s wasn't enough on first dogfood — host-cp's /health
1308
+ // came back instantly but /api/version/status needed >60s to start serving
1309
+ // (cold-boot of express handler chain + first registry-stat reads). 90s
1310
+ // gives reliable headroom without making the warn-path feel slow when
1311
+ // host-cp is genuinely stuck.
1136
1312
  process.stdout.write(` ${pc.dim('verify /version/status round-trip'.padEnd(34))}`);
1137
1313
  const versionStart = Date.now();
1138
- const versionMatch = await waitForVersionMatch(_targetSha, 60_000);
1314
+ const versionMatch = await waitForVersionMatch(_targetSha, 90_000);
1139
1315
  const versionDurationMs = Date.now() - versionStart;
1140
1316
  const versionDur = `${(versionDurationMs / 1000).toFixed(1)}s`;
1141
1317
  process.stdout.write(`${versionMatch.matched ? pc.green('✓') : pc.yellow('?')} ${versionDur}\n`);
@@ -1171,7 +1347,9 @@ function printTimings(timings) {
1171
1347
  export function registerUpgrade(program) {
1172
1348
  program
1173
1349
  .command('upgrade')
1174
- .description('Self-upgrade the local Olam dev stack (pull + rebuild + restart all three components)')
1350
+ .description('Upgrade the local Olam stack to the CLI\'s pinned image digests. ' +
1351
+ 'Default: pull pre-built images from ghcr.io and recreate containers. ' +
1352
+ 'Use --from-source for the legacy monorepo build path (requires OLAM_DEV=1).')
1175
1353
  .option('-y, --yes', 'Skip the confirmation prompt')
1176
1354
  .option('--skip-image', 'Skip docker image rebuild + container recreate (source rebuild only)')
1177
1355
  .option('--skip-install', 'Skip npm install entirely (use existing node_modules as-is). ' +
@@ -1187,8 +1365,37 @@ export function registerUpgrade(program) {
1187
1365
  ' No upgrade is performed.')
1188
1366
  .option('-n <count>', 'Number of history rows to print (default 10)', '10')
1189
1367
  .option('--json', 'Emit history as JSONL instead of a table')
1368
+ .option('--from-source', 'Build host-cp + auth + devbox from monorepo source (legacy path).\n' +
1369
+ ' Requires OLAM_DEV=1 + a `packages/` sibling at the install root.\n' +
1370
+ ' Default (no flag): pull pre-built images from ghcr.io by digest.')
1190
1371
  .action(async (opts) => {
1191
- await handleUpgrade(parseUpgradeOpts(opts));
1372
+ const parsed = parseUpgradeOpts(opts);
1373
+ // Phase C — C6: --from-source gates the legacy build path. Default
1374
+ // pull-by-digest path lands installed-CLI operators on a fresh
1375
+ // image set without a monorepo clone.
1376
+ if (parsed.fromSource) {
1377
+ if (!isDevMode()) {
1378
+ printError(new MissingBuildScriptError('packages/adapters/src/docker/build-*.sh').message);
1379
+ process.exitCode = 1;
1380
+ return;
1381
+ }
1382
+ await handleUpgrade(parsed);
1383
+ return;
1384
+ }
1385
+ // --history is read-only; honour it on the default path too so
1386
+ // operators don't have to remember --from-source just to read the log.
1387
+ if (parsed.history) {
1388
+ handleHistory(parseHistoryOpts({ n: parsed.historyN, json: parsed.historyJson }));
1389
+ return;
1390
+ }
1391
+ try {
1392
+ const result = await runUpgradePullByDigest();
1393
+ process.exitCode = result.exitCode;
1394
+ }
1395
+ catch (err) {
1396
+ printError(err instanceof Error ? err.message : String(err));
1397
+ process.exitCode = EXIT_GENERIC_ERROR;
1398
+ }
1192
1399
  });
1193
1400
  }
1194
1401
  //# sourceMappingURL=upgrade.js.map