@cat-factory/local-server 0.63.0 → 0.64.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.
@@ -30,6 +30,19 @@ export interface LocalContainerRunnerTransportOptions {
30
30
  fetchImpl?: typeof fetch;
31
31
  /** How long to wait for the container's endpoint + `/health` after start. Default 60s. */
32
32
  readyTimeoutMs?: number;
33
+ /**
34
+ * The harness version this backend is matched to (the tag of {@link RECOMMENDED_HARNESS_IMAGE}).
35
+ * When set, a freshly-healthy container is version-checked against it and a mismatch fails the
36
+ * dispatch loudly (see {@link verifyHarnessVersion}). Undefined ⇒ no check.
37
+ */
38
+ expectedVersion?: string;
39
+ /**
40
+ * The operator pinned a custom image (not the matched default), so a version mismatch is a
41
+ * WARNING rather than a hard stop — they opted into running a different harness.
42
+ */
43
+ allowVersionMismatch?: boolean;
44
+ /** Where a soft (custom-override) version warning is surfaced. Default: no-op. */
45
+ onVersionWarning?: (message: string) => void;
33
46
  /** Per-HTTP-call timeout. Default 30s. */
34
47
  requestTimeoutMs?: number;
35
48
  /**
@@ -90,6 +103,11 @@ export declare class LocalContainerRunnerTransport implements RunnerTransport {
90
103
  private readonly fetchImpl;
91
104
  private readonly readyTimeoutMs;
92
105
  private readonly requestTimeoutMs;
106
+ private readonly expectedVersion?;
107
+ private readonly allowVersionMismatch;
108
+ private readonly onVersionWarning?;
109
+ /** Set once the running harness's version has been verified, so we check only once. */
110
+ private versionVerified;
93
111
  /** Poll cadence for a one-shot inline job (see {@link runInline}). */
94
112
  private readonly inlinePollIntervalMs;
95
113
  private readonly privilegedTestJobs;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalContainerRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalContainerRunnerTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalContainerRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalContainerRunnerTransport.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EAGL,KAAK,eAAe,EAQrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAG7B,MAAM,qBAAqB,CAAA;AAsD5B,mFAAmF;AACnF,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,WAAW,oCAAoC;IACnD,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAA;IACjC;;;;;;OAMG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,mFAAmF;IACnF,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,8FAA8F;AAC9F,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAA;IAChC,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAA;IACb,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAA;IACd,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,wEAAwE;IACxE,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gGAAgG;IAChG,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,yDAAyD;IACzD,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAiBD,qBAAa,6BAA8B,YAAW,eAAe;IACnE,wEAAwE;IACxE,QAAQ,CAAC,OAAO,qBAAoB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAQ;IAGjC,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAA2B;IAC7D,uFAAuF;IACvF,OAAO,CAAC,eAAe,CAAQ;IAC/B,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAM;IAC3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,aAAa,CAAQ;IAE7B,qFAAqF;IACrF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiE;IAEvF,0FAA0F;IAC1F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAE3C;;;;OAIG;IACH,OAAO,CAAC,aAAa,CAAI;IAEzB,YAAY,OAAO,EAAE,oCAAoC,EA4BxD;IAED;;;OAGG;IACH,OAAO,CAAC,aAAa;IAgBrB;;;;;;;;;OASG;IACH,aAAa,CAAC,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAS5C;IAED,0FAA0F;YAC5E,aAAa;IAK3B,4FAA4F;IAC5F,IAAI,YAAY,iEAEf;IAED,0FAA0F;IAC1F,OAAO,KAAK,cAAc,GAEzB;IAED,sFAAsF;IACtF,OAAO,CAAC,eAAe;IAIjB,QAAQ,CACZ,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,GAAE,kBAA4B,EAClC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,IAAI,CAAC,CASf;YAEa,cAAc;IA6CtB,IAAI,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CA8BpD;IAED;;;;;OAKG;IACG,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ9C;IAED;;;;;;OAMG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAOlC;IAED;;;;;;;;OAQG;IACG,gBAAgB,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAUxF;IAID;;;;;;;;;;;OAWG;IACG,SAAS,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyBrE;IAED,kFAAkF;YACpE,WAAW;YAgCX,cAAc;IAe5B,mEAAmE;IACnE,OAAO,CAAC,OAAO;YAWD,UAAU;YA4BV,aAAa;IAe3B,oFAAoF;YACtE,aAAa;IAiC3B,yEAAyE;YAC3D,WAAW;IAqBzB;;;;;;;;OAQG;YACW,WAAW;IAoBzB;;;;OAIG;YACW,gBAAgB;IAO9B,0FAA0F;YAC5E,QAAQ;IAWtB,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,iBAAiB;IAOzB,8EAA8E;IAC9E,OAAO,CAAC,UAAU;IAQlB,wFAAwF;YAC1E,OAAO;YAcP,eAAe;YA6Bf,aAAa;IA2C3B;;;;;OAKG;YACW,cAAc;CAa7B;AA0BD;;;;;;;GAOG;AACH,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,QAAQ,CAAC,EAAE,aAAa,GACvB,6BAA6B,CAwC/B"}
@@ -2,11 +2,13 @@ import { execFile } from 'node:child_process';
2
2
  import { randomBytes } from 'node:crypto';
3
3
  import { promisify } from 'node:util';
4
4
  import { resolveDockerResources } from '@cat-factory/contracts';
5
+ import { logger } from '@cat-factory/server';
5
6
  import { EVICTION_ERROR, delay, harnessHealthy, harnessUrl, pollInlineJob, pollHarnessJob, postHarnessJob, waitForHarnessHealth, } from './harnessHttp.js';
6
7
  import { createRuntimeAdapter, DockerRuntimeAdapter, } from './runtimes/index.js';
7
8
  import { requireHarnessSharedSecret } from './config.js';
8
9
  import { harnessAllowedHosts } from './github.js';
9
- import { resolveHarnessImage } from './harnessImage.js';
10
+ import { RECOMMENDED_HARNESS_IMAGE, resolveHarnessImage } from './harnessImage.js';
11
+ import { recommendedHarnessVersion, verifyHarnessVersion } from './harnessVersion.js';
10
12
  const execFileAsync = promisify(execFile);
11
13
  /**
12
14
  * The default {@link ContainerExec}: run the runtime binary via `execFile` and, on a
@@ -42,6 +44,11 @@ export class LocalContainerRunnerTransport {
42
44
  fetchImpl;
43
45
  readyTimeoutMs;
44
46
  requestTimeoutMs;
47
+ expectedVersion;
48
+ allowVersionMismatch;
49
+ onVersionWarning;
50
+ /** Set once the running harness's version has been verified, so we check only once. */
51
+ versionVerified = false;
45
52
  /** Poll cadence for a one-shot inline job (see {@link runInline}). */
46
53
  inlinePollIntervalMs = 400;
47
54
  privilegedTestJobs;
@@ -78,6 +85,9 @@ export class LocalContainerRunnerTransport {
78
85
  this.fetchImpl = options.fetchImpl ?? fetch;
79
86
  this.readyTimeoutMs = options.readyTimeoutMs ?? 60_000;
80
87
  this.requestTimeoutMs = options.requestTimeoutMs ?? 30_000;
88
+ this.expectedVersion = options.expectedVersion;
89
+ this.allowVersionMismatch = options.allowVersionMismatch ?? false;
90
+ this.onVersionWarning = options.onVersionWarning;
81
91
  this.privilegedTestJobs = options.privilegedTestJobs ?? true;
82
92
  this.poolSize = 0;
83
93
  this.poolMax = 0;
@@ -482,8 +492,11 @@ export class LocalContainerRunnerTransport {
482
492
  try {
483
493
  this.scheduleIdleEviction(await this.startMember(false));
484
494
  }
485
- catch {
486
- // a failed pre-warm is logged-and-skipped; the pool fills on demand
495
+ catch (err) {
496
+ // A failed pre-warm is skipped (the pool fills a member on demand instead), but
497
+ // surface WHY: a version-handshake mismatch throws here too, and swallowing it
498
+ // silently would hide the misconfiguration until the first real dispatch.
499
+ logger.warn(`Local harness pool pre-warm skipped a member: ${err instanceof Error ? err.message : String(err)}`);
487
500
  }
488
501
  }));
489
502
  }
@@ -573,14 +586,14 @@ export class LocalContainerRunnerTransport {
573
586
  await delay(250);
574
587
  }
575
588
  }
576
- waitForHealth(endpoint, containerId) {
589
+ async waitForHealth(endpoint, containerId) {
577
590
  // Reuse the shared `/health` poll loop (it checks liveness BEFORE each probe, so a dead
578
591
  // container fails fast instead of waiting out a slow `/health`). The container-specific
579
592
  // bits are injected: `isDead` consults the runtime, and the error messages are lazy thunks
580
593
  // that fold in the container's own boot logs — composed ONLY on the failure branch so a
581
594
  // healthy boot never pays the extra `logs` CLI call. The old behaviour spun the whole ready
582
595
  // timeout against a dead container, then threw a generic, root-cause-less error.
583
- return waitForHarnessHealth({
596
+ await waitForHarnessHealth({
584
597
  fetchImpl: this.fetchImpl,
585
598
  endpoint,
586
599
  readyTimeoutMs: this.readyTimeoutMs,
@@ -593,6 +606,23 @@ export class LocalContainerRunnerTransport {
593
606
  deadError: () => this.startupFailure(containerId, 'exited before the harness became healthy'),
594
607
  timeoutError: () => this.startupFailure(containerId, `harness at ${endpoint.host}:${endpoint.port} did not become healthy before the start timeout`),
595
608
  });
609
+ // Safety net: the container is up, but is it the harness this backend expects? Every local
610
+ // container runs the SAME image, so verify once — a mismatch (a stale mutable tag serving old
611
+ // code, an image that predates the version handshake) fails THIS dispatch loudly with an
612
+ // actionable message instead of surfacing later as a cryptic git/agent error mid-run.
613
+ if (!this.versionVerified) {
614
+ await verifyHarnessVersion({
615
+ fetchImpl: this.fetchImpl,
616
+ endpoint,
617
+ secret: this.sharedSecret,
618
+ requestTimeoutMs: this.requestTimeoutMs,
619
+ expected: this.expectedVersion,
620
+ custom: this.allowVersionMismatch,
621
+ source: { ref: this.image, kind: 'image' },
622
+ onWarn: this.onVersionWarning,
623
+ });
624
+ this.versionVerified = true;
625
+ }
596
626
  }
597
627
  /**
598
628
  * Compose a fail-fast container-start error: the run's container id, what went wrong, the
@@ -663,6 +693,12 @@ export function createLocalContainerTransportFromEnv(env, settings) {
663
693
  adapter: createRuntimeAdapter(env),
664
694
  sharedSecret: requireHarnessSharedSecret(env),
665
695
  network: env.LOCAL_DOCKER_NETWORK?.trim() || undefined,
696
+ // Version handshake: check the running harness against the matched version, and treat a
697
+ // mismatch as a hard stop UNLESS the operator pinned a custom image (then it's a warning,
698
+ // like the boot-time custom-image notice in refreshHarnessImage).
699
+ expectedVersion: recommendedHarnessVersion(),
700
+ allowVersionMismatch: image !== RECOMMENDED_HARNESS_IMAGE,
701
+ onVersionWarning: (message) => logger.warn(message),
666
702
  // Default on: the Tester stands its docker-compose infra up via Docker-in-Docker,
667
703
  // which needs a privileged job container. Set to `false` for runtimes that run
668
704
  // nested containers without it (e.g. rootless Podman).
@@ -1 +1 @@
1
- {"version":3,"file":"LocalContainerRunnerTransport.js","sourceRoot":"","sources":["../src/LocalContainerRunnerTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalContainerRunnerTransport.js","sourceRoot":"","sources":["../src/LocalContainerRunnerTransport.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,19 @@ export interface LocalProcessRunnerTransportOptions {
33
33
  spawnImpl?: typeof spawn;
34
34
  /** Injectable free-port picker — defaults to an ephemeral OS port (overridable in tests). */
35
35
  pickPort?: () => Promise<number>;
36
+ /**
37
+ * The harness version this backend is matched to (the tag of `RECOMMENDED_HARNESS_IMAGE`).
38
+ * When set, a freshly-healthy harness is version-checked against it; a mismatch fails the
39
+ * dispatch loudly. Undefined ⇒ no check.
40
+ */
41
+ expectedVersion?: string;
42
+ /**
43
+ * The operator pointed `LOCAL_HARNESS_ENTRY` at a custom build, so a version mismatch is a
44
+ * WARNING rather than a hard stop.
45
+ */
46
+ allowVersionMismatch?: boolean;
47
+ /** Where a soft (custom-override) version warning is surfaced. Default: no-op. */
48
+ onVersionWarning?: (message: string) => void;
36
49
  /** How long to wait for the harness `/health` after spawn. Default 30s. */
37
50
  readyTimeoutMs?: number;
38
51
  /** Per-HTTP-call timeout. Default 30s. */
@@ -52,6 +65,9 @@ export declare class LocalProcessRunnerTransport implements RunnerTransport {
52
65
  private readonly pickPort;
53
66
  private readonly readyTimeoutMs;
54
67
  private readonly requestTimeoutMs;
68
+ private readonly expectedVersion?;
69
+ private readonly allowVersionMismatch;
70
+ private readonly onVersionWarning?;
55
71
  /** The single long-lived harness process, started lazily and reused across all runs. */
56
72
  private proc;
57
73
  private starting;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalProcessRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG7D,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAA;AA4B5B,MAAM,WAAW,kCAAkC;IACjD;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IACjC,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,sFAAsF;IACtF,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAeD,qBAAa,2BAA4B,YAAW,eAAe;IACjE,uFAAuF;IACvF,QAAQ,CAAC,OAAO,kBAAiB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IAEzC,wFAAwF;IACxF,OAAO,CAAC,IAAI,CAAoE;IAChF,OAAO,CAAC,QAAQ,CAA6E;IAC7F,mFAAmF;IACnF,OAAO,CAAC,OAAO,CAAQ;IACvB;yFACqF;IACrF,OAAO,CAAC,aAAa,CAA0B;IAE/C,YAAY,OAAO,EAAE,kCAAkC,EAYtD;IAEK,QAAQ,CACZ,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,GAAE,kBAA4B,GACjC,OAAO,CAAC,IAAI,CAAC,CAYf;IAEK,IAAI,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CAapD;IAED;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB9B;YAIa,aAAa;YAeb,YAAY;IAyD1B,OAAO,CAAC,aAAa;CAYtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAclE;AAED;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,2BAA2B,CAY7B"}
1
+ {"version":3,"file":"LocalProcessRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG7D,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAA;AA8B5B,MAAM,WAAW,kCAAkC;IACjD;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IACjC,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,sFAAsF;IACtF,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAeD,qBAAa,2BAA4B,YAAW,eAAe;IACjE,uFAAuF;IACvF,QAAQ,CAAC,OAAO,kBAAiB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAA2B;IAE7D,wFAAwF;IACxF,OAAO,CAAC,IAAI,CAAoE;IAChF,OAAO,CAAC,QAAQ,CAA6E;IAC7F,mFAAmF;IACnF,OAAO,CAAC,OAAO,CAAQ;IACvB;yFACqF;IACrF,OAAO,CAAC,aAAa,CAA0B;IAE/C,YAAY,OAAO,EAAE,kCAAkC,EAetD;IAEK,QAAQ,CACZ,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,GAAE,kBAA4B,GACjC,OAAO,CAAC,IAAI,CAAC,CAYf;IAEK,IAAI,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CAapD;IAED;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB9B;YAIa,aAAa;YAeb,YAAY;YAyDZ,aAAa;CAyB5B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAclE;AAED;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,2BAA2B,CAiB7B"}
@@ -1,8 +1,10 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { createRequire } from 'node:module';
3
3
  import { createServer } from 'node:net';
4
+ import { logger } from '@cat-factory/server';
4
5
  import { sanitizedChildEnv } from './childEnv.js';
5
6
  import { requireHarnessSharedSecret } from './config.js';
7
+ import { recommendedHarnessVersion, verifyHarnessVersion } from './harnessVersion.js';
6
8
  import { EVICTION_ERROR, pollHarnessJob, postHarnessJob, waitForHarnessHealth, } from './harnessHttp.js';
7
9
  // The NATIVE local runner backend (opt-in via `LOCAL_NATIVE_AGENTS`): instead of a Docker
8
10
  // container per run, it runs the SAME executor-harness as a long-lived HOST PROCESS on
@@ -45,6 +47,9 @@ export class LocalProcessRunnerTransport {
45
47
  pickPort;
46
48
  readyTimeoutMs;
47
49
  requestTimeoutMs;
50
+ expectedVersion;
51
+ allowVersionMismatch;
52
+ onVersionWarning;
48
53
  /** The single long-lived harness process, started lazily and reused across all runs. */
49
54
  proc;
50
55
  starting;
@@ -65,6 +70,9 @@ export class LocalProcessRunnerTransport {
65
70
  this.pickPort = options.pickPort ?? ephemeralPort;
66
71
  this.readyTimeoutMs = options.readyTimeoutMs ?? 30_000;
67
72
  this.requestTimeoutMs = options.requestTimeoutMs ?? 30_000;
73
+ this.expectedVersion = options.expectedVersion;
74
+ this.allowVersionMismatch = options.allowVersionMismatch ?? false;
75
+ this.onVersionWarning = options.onVersionWarning;
68
76
  }
69
77
  async dispatch(ref, spec, kind = 'agent') {
70
78
  const proc = await this.ensureProcess();
@@ -212,8 +220,8 @@ export class LocalProcessRunnerTransport {
212
220
  }
213
221
  return handle;
214
222
  }
215
- waitForHealth(port, handle) {
216
- return waitForHarnessHealth({
223
+ async waitForHealth(port, handle) {
224
+ await waitForHarnessHealth({
217
225
  fetchImpl: this.fetchImpl,
218
226
  endpoint: endpointFor(port),
219
227
  readyTimeoutMs: this.readyTimeoutMs,
@@ -223,6 +231,19 @@ export class LocalProcessRunnerTransport {
223
231
  deadError: 'the native harness process exited before becoming healthy',
224
232
  timeoutError: `Timed out waiting for the native harness on 127.0.0.1:${port} to become healthy`,
225
233
  });
234
+ // Safety net: verify the spawned harness matches the version this backend expects, failing
235
+ // the dispatch loudly on a skew (e.g. an outdated installed @cat-factory/executor-harness)
236
+ // instead of surfacing it later as a cryptic git/agent error.
237
+ await verifyHarnessVersion({
238
+ fetchImpl: this.fetchImpl,
239
+ endpoint: endpointFor(port),
240
+ secret: this.sharedSecret,
241
+ requestTimeoutMs: this.requestTimeoutMs,
242
+ expected: this.expectedVersion,
243
+ custom: this.allowVersionMismatch,
244
+ source: { ref: this.harnessEntry, kind: 'native' },
245
+ onWarn: this.onVersionWarning,
246
+ });
226
247
  }
227
248
  }
228
249
  /**
@@ -269,6 +290,11 @@ export function createLocalProcessTransportFromEnv(env) {
269
290
  ...(nodeArgs ? { nodeArgs } : {}),
270
291
  sharedSecret: requireHarnessSharedSecret(env),
271
292
  ...(allowedHosts ? { env: { GITHUB_ALLOWED_HOSTS: allowedHosts } } : {}),
293
+ // Version handshake: check the spawned harness against the matched version. An explicit
294
+ // LOCAL_HARNESS_ENTRY is a deliberate custom build, so a mismatch there is a warning.
295
+ expectedVersion: recommendedHarnessVersion(),
296
+ allowVersionMismatch: !!env.LOCAL_HARNESS_ENTRY?.trim(),
297
+ onVersionWarning: (message) => logger.warn(message),
272
298
  });
273
299
  }
274
300
  //# sourceMappingURL=LocalProcessRunnerTransport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalProcessRunnerTransport.js","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalProcessRunnerTransport.js","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,13 @@ export declare function pollInlineJob(opts: {
68
68
  }): Promise<InlineJobView>;
69
69
  /** A single quick `/health` probe (no retry); false on any error/non-OK. */
70
70
  export declare function harnessHealthy(fetchImpl: typeof fetch, endpoint: HarnessEndpoint, requestTimeoutMs: number): Promise<boolean>;
71
+ /**
72
+ * The `version` a harness self-reports on `/health`, or undefined when it doesn't (an old
73
+ * harness predating the field, or any error). Used by the version handshake (see
74
+ * harnessVersion.ts) to detect a stale/mismatched executor. Never throws — an undefined
75
+ * result is itself meaningful (treated as a stale signal by the caller).
76
+ */
77
+ export declare function fetchHarnessVersion(fetchImpl: typeof fetch, endpoint: HarnessEndpoint, secret: string, requestTimeoutMs: number): Promise<string | undefined>;
71
78
  /**
72
79
  * An error message that may be composed lazily (only on the failure branch). The container
73
80
  * transport's messages fold in a tail of the container's own logs — an extra CLI call we
@@ -1 +1 @@
1
- {"version":3,"file":"harnessHttp.d.ts","sourceRoot":"","sources":["../src/harnessHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAUxD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,iDAAiD,CAAA;AAK5E,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,UAAU,aAAc,eAAe,QAAQ,MAAM,KAAG,MAClB,CAAA;AAEnD,eAAO,MAAM,KAAK,OAAQ,MAAM,KAAG,OAAO,CAAC,IAAI,CACU,CAAA;AAWzD,6FAA6F;AAC7F,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,OAAO,KAAK,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,OAAO,KAAK,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACzC,GAAG,OAAO,CAAC,aAAa,CAAC,CAoBzB;AAED,kGAAkG;AAClG,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IAChC,KAAK,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACxD;AAED,mGAAmG;AACnG,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAA;IACpC,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,SAAS,EAAE,OAAO,KAAK,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACzC,GAAG,OAAO,CAAC,aAAa,CAAC,CAoBzB;AAED,4EAA4E;AAC5E,wBAAsB,cAAc,CAClC,SAAS,EAAE,OAAO,KAAK,EACvB,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,OAAO,CAAC,CAUlB;AAED;;;;;GAKG;AACH,KAAK,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;AAK1D;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,SAAS,EAAE,OAAO,KAAK,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACzC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,YAAY,EAAE,SAAS,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB"}
1
+ {"version":3,"file":"harnessHttp.d.ts","sourceRoot":"","sources":["../src/harnessHttp.ts"],"names":[],"mappings":"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"}
@@ -104,6 +104,28 @@ export async function harnessHealthy(fetchImpl, endpoint, requestTimeoutMs) {
104
104
  return false;
105
105
  }
106
106
  }
107
+ /**
108
+ * The `version` a harness self-reports on `/health`, or undefined when it doesn't (an old
109
+ * harness predating the field, or any error). Used by the version handshake (see
110
+ * harnessVersion.ts) to detect a stale/mismatched executor. Never throws — an undefined
111
+ * result is itself meaningful (treated as a stale signal by the caller).
112
+ */
113
+ export async function fetchHarnessVersion(fetchImpl, endpoint, secret, requestTimeoutMs) {
114
+ try {
115
+ const res = await fetchImpl(harnessUrl(endpoint, '/health'), {
116
+ method: 'GET',
117
+ headers: { [SECRET_HEADER]: secret },
118
+ signal: AbortSignal.timeout(Math.min(requestTimeoutMs, 5_000)),
119
+ });
120
+ if (!res.ok)
121
+ return undefined;
122
+ const body = (await res.json().catch(() => ({})));
123
+ return typeof body.version === 'string' && body.version.trim() ? body.version.trim() : undefined;
124
+ }
125
+ catch {
126
+ return undefined;
127
+ }
128
+ }
107
129
  const resolveLazyError = async (e) => typeof e === 'function' ? await e() : e;
108
130
  /**
109
131
  * Poll `/health` until OK or the deadline, throwing on timeout (or if `isDead` fires). Both
@@ -1 +1 @@
1
- {"version":3,"file":"harnessHttp.js","sourceRoot":"","sources":["../src/harnessHttp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harnessHttp.js","sourceRoot":"","sources":["../src/harnessHttp.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * `@cat-factory/executor-harness`'s version (the value CI tags the published image with, and
4
4
  * the same tag `deploy/backend` pins). Bump it whenever the harness image bumps.
5
5
  */
6
- export declare const RECOMMENDED_HARNESS_IMAGE = "ghcr.io/kibertoad/cat-factory-executor:1.39.3";
6
+ export declare const RECOMMENDED_HARNESS_IMAGE = "ghcr.io/kibertoad/cat-factory-executor:1.41.0";
7
7
  /**
8
8
  * The effective harness image ref: an explicit `LOCAL_HARNESS_IMAGE` wins (a custom build, a
9
9
  * different pin, or a mutable tag), else the backend-matched {@link RECOMMENDED_HARNESS_IMAGE}.
@@ -22,7 +22,7 @@ import { isOffValue } from './envFlags.js';
22
22
  * `@cat-factory/executor-harness`'s version (the value CI tags the published image with, and
23
23
  * the same tag `deploy/backend` pins). Bump it whenever the harness image bumps.
24
24
  */
25
- export const RECOMMENDED_HARNESS_IMAGE = 'ghcr.io/kibertoad/cat-factory-executor:1.39.3';
25
+ export const RECOMMENDED_HARNESS_IMAGE = 'ghcr.io/kibertoad/cat-factory-executor:1.41.0';
26
26
  /**
27
27
  * The effective harness image ref: an explicit `LOCAL_HARNESS_IMAGE` wins (a custom build, a
28
28
  * different pin, or a mutable tag), else the backend-matched {@link RECOMMENDED_HARNESS_IMAGE}.
@@ -0,0 +1,64 @@
1
+ import { type HarnessEndpoint } from './harnessHttp.js';
2
+ /** What was actually launched, for an actionable remediation message. */
3
+ export interface HarnessVersionSource {
4
+ /** The image ref (container transport) or harness entry path (native transport). */
5
+ ref: string;
6
+ kind: 'image' | 'native';
7
+ }
8
+ export type HarnessVersionDecision = {
9
+ level: 'ok';
10
+ }
11
+ /** No matched version to check against — nothing to enforce. */
12
+ | {
13
+ level: 'skip';
14
+ message: string;
15
+ }
16
+ /** Mismatch, but the operator opted into a custom harness, so advise rather than block. */
17
+ | {
18
+ level: 'warn';
19
+ message: string;
20
+ }
21
+ /** Mismatch on a stock (matched) deployment — refuse to dispatch. */
22
+ | {
23
+ level: 'fail';
24
+ message: string;
25
+ };
26
+ /**
27
+ * The version string embedded in an image ref's tag, or undefined when there is no concrete
28
+ * version tag to compare (a digest pin, a mutable `:latest`/`:main`/`:edge`, or a bare local
29
+ * build). Only a tag STARTING WITH A DIGIT is treated as a version — a named tag is not one.
30
+ */
31
+ export declare function parseImageVersion(ref: string): string | undefined;
32
+ /** The harness version this backend build is matched to (from {@link RECOMMENDED_HARNESS_IMAGE}). */
33
+ export declare function recommendedHarnessVersion(): string | undefined;
34
+ /**
35
+ * Decide whether a running harness's reported version is acceptable. Pure, so the policy is
36
+ * unit-tested without any HTTP. A custom override downgrades a mismatch to a warning (the
37
+ * operator deliberately pinned a different harness); a stock deployment hard-fails so the
38
+ * skew can't silently corrupt runs. A missing reported version is itself a mismatch — an old
39
+ * harness predating the handshake — treated the same as a wrong one.
40
+ */
41
+ export declare function decideHarnessVersion(opts: {
42
+ reported: string | undefined;
43
+ expected: string | undefined;
44
+ custom: boolean;
45
+ source: HarnessVersionSource;
46
+ }): HarnessVersionDecision;
47
+ /**
48
+ * Verify the running harness at `endpoint` matches the expected version, throwing (a loud,
49
+ * actionable Error) on a hard mismatch and calling `onWarn` on a soft (custom-override) one.
50
+ * A no-op when there is no expected version to check against. Called by both local transports
51
+ * once a freshly-started harness becomes healthy, so a skew fails the FIRST dispatch with a
52
+ * clear message rather than deep inside a git operation.
53
+ */
54
+ export declare function verifyHarnessVersion(opts: {
55
+ fetchImpl: typeof fetch;
56
+ endpoint: HarnessEndpoint;
57
+ secret: string;
58
+ requestTimeoutMs: number;
59
+ expected: string | undefined;
60
+ custom: boolean;
61
+ source: HarnessVersionSource;
62
+ onWarn?: (message: string) => void;
63
+ }): Promise<void>;
64
+ //# sourceMappingURL=harnessVersion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harnessVersion.d.ts","sourceRoot":"","sources":["../src/harnessVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAW5E,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAA;CACzB;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE;AACjB,gEAAgE;GAC9D;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACpC,2FAA2F;GACzF;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACpC,qEAAqE;GACnE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAEtC;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOjE;AAED,qGAAqG;AACrG,wBAAgB,yBAAyB,IAAI,MAAM,GAAG,SAAS,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,oBAAoB,CAAA;CAC7B,GAAG,sBAAsB,CAyBzB;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,SAAS,EAAE,OAAO,KAAK,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,oBAAoB,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB"}
@@ -0,0 +1,73 @@
1
+ import { fetchHarnessVersion } from './harnessHttp.js';
2
+ import { RECOMMENDED_HARNESS_IMAGE } from './harnessImage.js';
3
+ /**
4
+ * The version string embedded in an image ref's tag, or undefined when there is no concrete
5
+ * version tag to compare (a digest pin, a mutable `:latest`/`:main`/`:edge`, or a bare local
6
+ * build). Only a tag STARTING WITH A DIGIT is treated as a version — a named tag is not one.
7
+ */
8
+ export function parseImageVersion(ref) {
9
+ const noDigest = ref.split('@')[0] ?? ref;
10
+ const lastColon = noDigest.lastIndexOf(':');
11
+ const lastSlash = noDigest.lastIndexOf('/');
12
+ if (lastColon <= lastSlash)
13
+ return undefined; // no tag segment
14
+ const tag = noDigest.slice(lastColon + 1);
15
+ return /^\d[\w.\-+]*$/.test(tag) ? tag : undefined;
16
+ }
17
+ /** The harness version this backend build is matched to (from {@link RECOMMENDED_HARNESS_IMAGE}). */
18
+ export function recommendedHarnessVersion() {
19
+ return parseImageVersion(RECOMMENDED_HARNESS_IMAGE);
20
+ }
21
+ /**
22
+ * Decide whether a running harness's reported version is acceptable. Pure, so the policy is
23
+ * unit-tested without any HTTP. A custom override downgrades a mismatch to a warning (the
24
+ * operator deliberately pinned a different harness); a stock deployment hard-fails so the
25
+ * skew can't silently corrupt runs. A missing reported version is itself a mismatch — an old
26
+ * harness predating the handshake — treated the same as a wrong one.
27
+ */
28
+ export function decideHarnessVersion(opts) {
29
+ const { reported, expected, custom, source } = opts;
30
+ if (!expected) {
31
+ return { level: 'skip', message: 'no matched harness version to check against' };
32
+ }
33
+ if (reported && reported === expected)
34
+ return { level: 'ok' };
35
+ const running = reported
36
+ ? `reports version ${reported}`
37
+ : 'did not report a version (it predates the version handshake and is almost certainly stale)';
38
+ const remediation = source.kind === 'image'
39
+ ? `Re-pull it (e.g. \`docker pull ${source.ref}\`), or unset/point LOCAL_HARNESS_IMAGE at the matching version, then restart.`
40
+ : `Update @cat-factory/executor-harness (or rebuild the dist that LOCAL_HARNESS_ENTRY points at: ${source.ref}), then restart.`;
41
+ const message = `Executor harness version mismatch: this backend is matched to harness ${expected}, but the ` +
42
+ `running executor (${source.ref}) ${running}. ${remediation}`;
43
+ if (custom) {
44
+ return {
45
+ level: 'warn',
46
+ message: `${message} A custom harness override is set, so this is a warning, not a hard stop — ensure it is compatible.`,
47
+ };
48
+ }
49
+ return { level: 'fail', message };
50
+ }
51
+ /**
52
+ * Verify the running harness at `endpoint` matches the expected version, throwing (a loud,
53
+ * actionable Error) on a hard mismatch and calling `onWarn` on a soft (custom-override) one.
54
+ * A no-op when there is no expected version to check against. Called by both local transports
55
+ * once a freshly-started harness becomes healthy, so a skew fails the FIRST dispatch with a
56
+ * clear message rather than deep inside a git operation.
57
+ */
58
+ export async function verifyHarnessVersion(opts) {
59
+ if (!opts.expected)
60
+ return;
61
+ const reported = await fetchHarnessVersion(opts.fetchImpl, opts.endpoint, opts.secret, opts.requestTimeoutMs);
62
+ const decision = decideHarnessVersion({
63
+ reported,
64
+ expected: opts.expected,
65
+ custom: opts.custom,
66
+ source: opts.source,
67
+ });
68
+ if (decision.level === 'fail')
69
+ throw new Error(decision.message);
70
+ if (decision.level === 'warn')
71
+ opts.onWarn?.(decision.message);
72
+ }
73
+ //# sourceMappingURL=harnessVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harnessVersion.js","sourceRoot":"","sources":["../src/harnessVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,kBAAkB,CAAA;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AA0B7D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAA;IACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAI,SAAS,IAAI,SAAS;QAAE,OAAO,SAAS,CAAA,CAAC,iBAAiB;IAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;IACzC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;AACpD,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,yBAAyB;IACvC,OAAO,iBAAiB,CAAC,yBAAyB,CAAC,CAAA;AACrD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAKpC;IACC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,6CAA6C,EAAE,CAAA;IAClF,CAAC;IACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IAE7D,MAAM,OAAO,GAAG,QAAQ;QACtB,CAAC,CAAC,mBAAmB,QAAQ,EAAE;QAC/B,CAAC,CAAC,4FAA4F,CAAA;IAChG,MAAM,WAAW,GACf,MAAM,CAAC,IAAI,KAAK,OAAO;QACrB,CAAC,CAAC,kCAAkC,MAAM,CAAC,GAAG,gFAAgF;QAC9H,CAAC,CAAC,iGAAiG,MAAM,CAAC,GAAG,kBAAkB,CAAA;IACnI,MAAM,OAAO,GACX,yEAAyE,QAAQ,YAAY;QAC7F,qBAAqB,MAAM,CAAC,GAAG,KAAK,OAAO,KAAK,WAAW,EAAE,CAAA;IAE/D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO;YACL,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,GAAG,OAAO,qGAAqG;SACzH,CAAA;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACnC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAS1C;IACC,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAM;IAC1B,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CACxC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,gBAAgB,CACtB,CAAA;IACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC;QACpC,QAAQ;QACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC,CAAA;IACF,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAChE,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM;QAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;AAChE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/local-server",
3
- "version": "0.63.0",
3
+ "version": "0.64.1",
4
4
  "description": "Local-mode runtime facade for the Agent Architecture Board: the @cat-factory/node-server stack with agent jobs run as local Docker/Podman containers and GitHub accessed via a personal access token — a developer can run the whole product on their own machine.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,22 +26,22 @@
26
26
  "dependencies": {
27
27
  "@hono/node-server": "^2.0.8",
28
28
  "drizzle-orm": "1.0.0-rc.4",
29
- "@cat-factory/agents": "0.52.0",
29
+ "@cat-factory/agents": "0.52.1",
30
30
  "@cat-factory/contracts": "0.123.0",
31
- "@cat-factory/executor-harness": "1.39.3",
32
- "@cat-factory/gitlab": "0.7.42",
33
- "@cat-factory/integrations": "0.79.1",
34
- "@cat-factory/kernel": "0.115.0",
35
- "@cat-factory/node-server": "0.89.0",
36
- "@cat-factory/orchestration": "0.102.0",
37
- "@cat-factory/server": "0.106.0"
31
+ "@cat-factory/executor-harness": "1.41.0",
32
+ "@cat-factory/gitlab": "0.7.43",
33
+ "@cat-factory/integrations": "0.79.2",
34
+ "@cat-factory/kernel": "0.115.1",
35
+ "@cat-factory/node-server": "0.89.2",
36
+ "@cat-factory/orchestration": "0.102.2",
37
+ "@cat-factory/server": "0.106.2"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@types/node": "^26.1.0",
41
41
  "typescript": "7.0.1-rc",
42
42
  "vitest": "^4.1.9",
43
- "@cat-factory/conformance": "0.10.75",
44
- "@cat-factory/gates": "0.5.4"
43
+ "@cat-factory/conformance": "0.10.77",
44
+ "@cat-factory/gates": "0.5.5"
45
45
  },
46
46
  "scripts": {
47
47
  "build": "tsc -b tsconfig.build.json",