@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.
- package/dist/LocalContainerRunnerTransport.d.ts +18 -0
- package/dist/LocalContainerRunnerTransport.d.ts.map +1 -1
- package/dist/LocalContainerRunnerTransport.js +41 -5
- package/dist/LocalContainerRunnerTransport.js.map +1 -1
- package/dist/LocalProcessRunnerTransport.d.ts +16 -0
- package/dist/LocalProcessRunnerTransport.d.ts.map +1 -1
- package/dist/LocalProcessRunnerTransport.js +28 -2
- package/dist/LocalProcessRunnerTransport.js.map +1 -1
- package/dist/harnessHttp.d.ts +7 -0
- package/dist/harnessHttp.d.ts.map +1 -1
- package/dist/harnessHttp.js +22 -0
- package/dist/harnessHttp.js.map +1 -1
- package/dist/harnessImage.d.ts +1 -1
- package/dist/harnessImage.js +1 -1
- package/dist/harnessVersion.d.ts +64 -0
- package/dist/harnessVersion.d.ts.map +1 -0
- package/dist/harnessVersion.js +73 -0
- package/dist/harnessVersion.js.map +1 -0
- package/package.json +11 -11
|
@@ -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":"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;
|
|
1
|
+
{"version":3,"file":"LocalContainerRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalContainerRunnerTransport.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
-
//
|
|
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
|
-
|
|
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":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAQrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EACL,cAAc,EAGd,KAAK,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAIL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAClF,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAErF,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAEzC;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,MAAc;IACjC,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,OAAO,MAAM,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAA;QAC3E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,GAA6D,CAAA;YACvE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,eAAe,CAAA;YACrF,MAAM,IAAI,KAAK,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,MAAM,EAAE,CAAC,CAAA;QACrE,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAuID,MAAM,OAAO,6BAA6B;IACxC,wEAAwE;IAC/D,OAAO,GAAG,iBAAiB,CAAA;IACnB,OAAO,CAAyB;IAChC,KAAK,CAAQ;IACb,YAAY,CAAQ;IACpB,OAAO,CAAS;IACjC,yFAAyF;IACzF,uFAAuF;IAC/E,QAAQ,CAAwB;IACvB,IAAI,CAAe;IACnB,SAAS,CAAc;IACvB,cAAc,CAAQ;IACtB,gBAAgB,CAAQ;IACxB,eAAe,CAAS;IACxB,oBAAoB,CAAS;IAC7B,gBAAgB,CAA4B;IAC7D,uFAAuF;IAC/E,eAAe,GAAG,KAAK,CAAA;IAC/B,sEAAsE;IACrD,oBAAoB,GAAG,GAAG,CAAA;IAC1B,kBAAkB,CAAS;IACpC,QAAQ,CAAQ;IAChB,OAAO,CAAQ;IACf,WAAW,CAAQ;IACnB,aAAa,CAAQ;IAE7B,qFAAqF;IACpE,KAAK,GAAG,IAAI,GAAG,EAAuD,CAAA;IAEvF,0FAA0F;IACzE,OAAO,GAAiB,EAAE,CAAA;IAE3C;;;;OAIG;IACK,aAAa,GAAG,CAAC,CAAA;IAEzB,YAAY,OAA6C;QACvD,IAAI,CAAC,OAAO;YACV,OAAO,CAAC,OAAO;gBACf,IAAI,oBAAoB,CAAC;oBACvB,EAAE,EAAE,QAAQ;oBACZ,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,sBAAsB;oBACjC,cAAc,EAAE,IAAI;oBACpB,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;iBACd,CAAC,CAAA;QACJ,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAA;QACjC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC5D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAA;QAC3C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,MAAM,CAAA;QACtD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,MAAM,CAAA;QAC1D,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,KAAK,CAAA;QACjE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;QAChD,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAA;QAC5D,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;QACjB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAChB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,OAAO,CAAA;QAC5B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,IAKrB;QACC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAA;QAC3D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QACjF,qFAAqF;QACrF,uFAAuF;QACvF,kFAAkF;QAClF,uFAAuF;QACvF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC1F,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,QAAwB;QACpC,IAAI,CAAC,aAAa,CAAC;YACjB,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI;YAC9B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS;YACzC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO;YACpC,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS;SACzC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;QAC1C,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,0FAA0F;IAClF,KAAK,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACrB,IAAI,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;IACnD,CAAC;IAED,4FAA4F;IAC5F,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAA;IAClC,CAAC;IAED,0FAA0F;IAC1F,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAA;IAC/D,CAAC;IAED,sFAAsF;IAC9E,eAAe,CAAC,KAAa;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,GAAiB,EACjB,IAA6B,EAC7B,IAAI,GAAuB,OAAO,EAClC,OAA+B;QAE/B,mFAAmF;QACnF,mFAAmF;QACnF,oFAAoF;QACpF,gFAAgF;QAChF,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAChF,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACnF,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QACpE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACtD,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,GAAiB,EACjB,IAA6B,EAC7B,IAAwB,EACxB,OAA+B;QAE/B,mFAAmF;QACnF,oFAAoF;QACpF,wCAAwC;QACxC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;QACvB,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,mFAAmF;YACnF,+EAA+E;YAC/E,2DAA2D;YAC3D,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAC9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;gBACpD,KAAK;gBACL,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,gFAAgF;gBAChF,mFAAmF;gBACnF,mFAAmF;gBACnF,kFAAkF;gBAClF,sFAAsF;gBACtF,4EAA4E;gBAC5E,UAAU,EAAE,IAAI,CAAC,kBAAkB;gBACnC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,YAAY,EAAE,OAAO,EAAE,YAAY;oBACjC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,YAAY,CAAC;oBAC9C,CAAC,CAAC,SAAS;aACd,CAAC,CAAA;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;YACxD,QAAQ,GAAG,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAA;YACvC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YAC/B,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QACjD,CAAC;QAED,sFAAsF;QACtF,oFAAoF;QACpF,kCAAkC;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAiB;QAC1B,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC9C,+EAA+E;QAC/E,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;QAEhE,uFAAuF;QACvF,mFAAmF;QACnF,sDAAsD;QACtD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,SAAS,EAAE,IAAI,CAAC,gBAAgB;YAChC,KAAK,EAAE,iBAAiB;YACxB,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;oBAAE,OAAO,KAAK,CAAA;gBAC/E,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAC5B,OAAO,IAAI,CAAA;YACb,CAAC;SACF,CAAC,CAAA;QACF,uFAAuF;QACvF,qFAAqF;QACrF,+DAA+D;QAC/D,OAAO;YACL,GAAG,IAAI;YACP,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE;SAC1F,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,GAAiB;QAC7B,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAEnE,MAAM,WAAW,GACf,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;QAC3F,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW;YAAE,OAAM;QACxB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IACnD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;YAC7B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAC1B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CAAC,UAAgD;QACrE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QACzD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC5E,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAA;IACvB,CAAC;IAED,4EAA4E;IAE5E;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,SAAS,CAAC,GAA2B;QACzC,sFAAsF;QACtF,2EAA2E;QAC3E,MAAM,KAAK,GAAG,UAAU,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;QACxD,MAAM,KAAK,GAAG,GAAG,KAAK,MAAM,CAAA;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACzD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACzB,IAAI,EAAE,QAAQ;gBACd,KAAK;gBACL,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,YAAY,EAAE,GAAG,CAAC,MAAM;gBACxB,UAAU,EAAE,GAAG,CAAC,MAAM;gBACtB,GAAG,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC,CAAA;YACF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1D,CAAC;gBAAS,CAAC;YACT,sFAAsF;YACtF,wFAAwF;YACxF,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAED,kFAAkF;IAC1E,KAAK,CAAC,WAAW,CACvB,MAAkB,EAClB,KAAa,EACb,MAA+B;QAE/B,SAAS,CAAC;YACR,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;YACpE,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ,EAAE,MAAM;gBAChB,KAAK;gBACL,MAAM,EAAE,IAAI,CAAC,YAAY;gBACzB,SAAS,EAAE,IAAI,CAAC,gBAAgB;gBAChC,MAAM,EAAE,KAAK,IAAI,EAAE;oBACjB,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC;wBAAE,OAAO,KAAK,CAAA;oBAC7E,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;oBACvB,OAAO,IAAI,CAAA;gBACb,CAAC;aACF,CAAC,CAAA;YACF,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;gBACjF,OAAO,IAAI,CAAC,MAAM,CAAA;YACpB,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAA;YAC9D,CAAC;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IAED,2EAA2E;IAEnE,KAAK,CAAC,cAAc,CAC1B,GAAiB,EACjB,IAA6B,EAC7B,IAAwB;QAExB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/B,qFAAqF;QACrF,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;QAC/D,IAAI,CAAC,MAAM;YAAE,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAClE,IAAI,OAAO;YAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAA;QAClC,wFAAwF;QACxF,sEAAsE;QACtE,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAA;IACzE,CAAC;IAED,mEAAmE;IAC3D,OAAO,CAAC,QAAyB,EAAE,IAA6B;QACtE,OAAO,cAAc,CAAC;YACpB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;YACR,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,gBAAgB;YAChC,KAAK,EAAE,iBAAiB;SACzB,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,GAAiB;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;QACjE,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;QAC9D,sFAAsF;QACtF,uFAAuF;QACvF,sFAAsF;QACtF,6EAA6E;QAC7E,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,SAAS,EAAE,IAAI,CAAC,gBAAgB;YAChC,KAAK,EAAE,iBAAiB;YACxB,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC;oBAAE,OAAO,KAAK,CAAA;gBAC7E,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;gBACvB,OAAO,IAAI,CAAA;YACb,CAAC;SACF,CAAC,CAAA;QACF,sFAAsF;QACtF,uFAAuF;QACvF,OAAO;YACL,GAAG,IAAI;YACP,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;SACtF,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,GAAiB;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;QACjE,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAA;QAC3B,qFAAqF;QACrF,kFAAkF;QAClF,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;YACvB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;YACxD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACjC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;IACvB,CAAC;IAED,oFAAoF;IAC5E,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,OAA2B;QACpE,oFAAoF;QACpF,sEAAsE;QACtE,SAAS,CAAC;YACR,MAAM,IAAI,GACR,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACvC,IAAI,CAAC,IAAI;gBAAE,MAAK;YAChB,4EAA4E;YAC5E,gFAAgF;YAChF,qFAAqF;YACrF,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;YACrB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YAC5B,IAAI,MAAM,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC;gBAAE,OAAO,IAAI,CAAA;YAClF,6DAA6D;YAC7D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACrB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACxD,CAAC;QACD,uFAAuF;QACvF,0FAA0F;QAC1F,2FAA2F;QAC3F,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,CAAA;QAC1E,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,MAAkB,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC5C,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,aAAa,EAAE,CAAA;QACtB,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAA;QACvB,OAAO,MAAM,CAAA;IACf,CAAC;IAED,yEAAyE;IACjE,KAAK,CAAC,WAAW,CAAC,SAAkB;QAC1C,MAAM,EAAE,GAAG,QAAQ,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;QACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;YACpD,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,oFAAoF;YACpF,iFAAiF;YACjF,8EAA8E;YAC9E,UAAU,EAAE,IAAI,CAAC,kBAAkB;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,QAAQ;YAClB,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAA;QACxD,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAe,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,CAAA;QACtE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzB,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,WAAW;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAA;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,aAAa,CAAA;QAC5D,IAAI,OAAO,IAAI,CAAC;YAAE,OAAM;QACxB,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE;YACzC,IAAI,CAAC;gBACH,IAAI,CAAC,oBAAoB,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YAC1D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,gFAAgF;gBAChF,+EAA+E;gBAC/E,0EAA0E;gBAC1E,MAAM,CAAC,IAAI,CACT,iDAAiD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpG,CAAA;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;QACzE,KAAK,MAAM,WAAW,IAAI,GAAG,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;IAED,0FAA0F;IAClF,KAAK,CAAC,QAAQ;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QACpD,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAA;QACxC,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,MAAM,IAAI,CAAC;gBAAE,MAAK;YACtB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;YACvB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;YACxD,MAAM,EAAE,CAAA;QACV,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,MAAkB;QAC7C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC;YAAE,OAAM;QACnC,MAAM,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YACjC,iDAAiD;YACjD,IAAI,MAAM,CAAC,QAAQ;gBAAE,OAAM;YAC3B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;YACvB,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAChF,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QACtB,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAA;IAC5B,CAAC;IAEO,iBAAiB,CAAC,MAAkB;QAC1C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC9B,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;QAC9B,CAAC;IACH,CAAC;IAED,8EAA8E;IACtE,UAAU,CAAC,MAAkB;QACnC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACtC,IAAI,CAAC,KAAK,CAAC,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACzC,CAAC;IAED,2EAA2E;IAE3E,wFAAwF;IAChF,KAAK,CAAC,OAAO,CACnB,KAAa;QAEb,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;QACzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC7D,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QACpE,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAC/B,MAAM,QAAQ,GAAG,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAA;QAC7C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC/B,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,WAAmB;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,CAAA;QACjD,IAAI,SAAkB,CAAA;QACtB,SAAS,CAAC;YACR,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjF,SAAS,GAAG,GAAG,CAAA;gBACf,OAAO,SAAS,CAAA;YAClB,CAAC,CAAC,CAAA;YACF,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAA;YAC7B,mFAAmF;YACnF,6EAA6E;YAC7E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;gBAC5D,MAAM,IAAI,KAAK,CACb,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,qCAAqC,EAAE,SAAS,CAAC,CACzF,CAAA;YACH,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,MAAM,IAAI,CAAC,cAAc,CACvB,WAAW,EACX,sDAAsD,EACtD,SAAS,CACV,CACF,CAAA;YACH,CAAC;YACD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,QAA2B,EAAE,WAAmB;QAC1E,wFAAwF;QACxF,wFAAwF;QACxF,2FAA2F;QAC3F,wFAAwF;QACxF,4FAA4F;QAC5F,iFAAiF;QACjF,MAAM,oBAAoB,CAAC;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;YACR,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,0FAA0F;YAC1F,4FAA4F;YAC5F,4FAA4F;YAC5F,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAC3E,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,0CAA0C,CAAC;YAC7F,YAAY,EAAE,GAAG,EAAE,CACjB,IAAI,CAAC,cAAc,CACjB,WAAW,EACX,cAAc,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,kDAAkD,CAC/F;SACJ,CAAC,CAAA;QACF,2FAA2F;QAC3F,8FAA8F;QAC9F,yFAAyF;QACzF,sFAAsF;QACtF,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,oBAAoB,CAAC;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ;gBACR,MAAM,EAAE,IAAI,CAAC,YAAY;gBACzB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,QAAQ,EAAE,IAAI,CAAC,eAAe;gBAC9B,MAAM,EAAE,IAAI,CAAC,oBAAoB;gBACjC,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;gBAC1C,MAAM,EAAE,IAAI,CAAC,gBAAgB;aAC9B,CAAC,CAAA;YACF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC7B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,cAAc,CAC1B,WAAmB,EACnB,IAAY,EACZ,SAAmB;QAEnB,MAAM,KAAK,GAAG,CAAC,aAAa,WAAW,IAAI,IAAI,GAAG,CAAC,CAAA;QACnD,MAAM,MAAM,GACV,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACrF,IAAI,MAAM,CAAC,IAAI,EAAE;YAAE,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAC7D,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACrE,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;QAChD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;CACF;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,QAAwB;IAChD,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,CAAA;IACnC,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,IAAI,QAAQ,EAAE,aAAa;QAAE,GAAG,CAAC,sBAAsB,GAAG,QAAQ,CAAC,aAAa,CAAA;IAChF,IAAI,QAAQ,EAAE,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,mFAAmF;AACnF,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,SAAS,CAAA;IAC/D,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAA2C,CAAA;IACnE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC9F,OAAO,GAAG,KAAK,IAAI,IAAI,EAAE,CAAA;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oCAAoC,CAClD,GAAsB,EACtB,QAAwB;IAExB,+FAA+F;IAC/F,8FAA8F;IAC9F,0FAA0F;IAC1F,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACtC,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAA;IAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC3C,kFAAkF;IAClF,sFAAsF;IACtF,0FAA0F;IAC1F,8EAA8E;IAC9E,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,YAAY;QAAE,QAAQ,CAAC,oBAAoB,GAAG,YAAY,CAAA;IAC9D,OAAO,IAAI,6BAA6B,CAAC;QACvC,KAAK;QACL,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;QAClC,YAAY,EAAE,0BAA0B,CAAC,GAAG,CAAC;QAC7C,OAAO,EAAE,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,SAAS;QACtD,wFAAwF;QACxF,0FAA0F;QAC1F,kEAAkE;QAClE,eAAe,EAAE,yBAAyB,EAAE;QAC5C,oBAAoB,EAAE,KAAK,KAAK,yBAAyB;QACzD,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QACnD,kFAAkF;QAClF,+EAA+E;QAC/E,uDAAuD;QACvD,kBAAkB,EAAE,GAAG,CAAC,iCAAiC,EAAE,IAAI,EAAE,KAAK,OAAO;QAC7E,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,oFAAoF;QACpF,uFAAuF;QACvF,GAAG,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,WAAW,EAAE,IAAI,CAAC,OAAO;gBACzB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClD,aAAa,EAAE,IAAI,CAAC,SAAS;aAC9B;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"LocalProcessRunnerTransport.d.ts","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
-
|
|
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":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAOvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EACL,cAAc,EAEd,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AAEzB,0FAA0F;AAC1F,uFAAuF;AACvF,sFAAsF;AACtF,2FAA2F;AAC3F,6FAA6F;AAC7F,0FAA0F;AAC1F,2FAA2F;AAC3F,0EAA0E;AAC1E,EAAE;AACF,2FAA2F;AAC3F,uFAAuF;AACvF,0FAA0F;AAC1F,gFAAgF;AAEhF,+EAA+E;AAC/E,MAAM,WAAW,GAAG,CAAC,IAAY,EAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"LocalProcessRunnerTransport.js","sourceRoot":"","sources":["../src/LocalProcessRunnerTransport.ts"],"names":[],"mappings":"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"}
|
package/dist/harnessHttp.d.ts
CHANGED
|
@@ -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":"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"}
|
|
1
|
+
{"version":3,"file":"harnessHttp.d.ts","sourceRoot":"","sources":["../src/harnessHttp.ts"],"names":[],"mappings":"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"}
|
package/dist/harnessHttp.js
CHANGED
|
@@ -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
|
package/dist/harnessHttp.js.map
CHANGED
|
@@ -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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"}
|
package/dist/harnessImage.d.ts
CHANGED
|
@@ -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.
|
|
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}.
|
package/dist/harnessImage.js
CHANGED
|
@@ -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.
|
|
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.
|
|
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.
|
|
29
|
+
"@cat-factory/agents": "0.52.1",
|
|
30
30
|
"@cat-factory/contracts": "0.123.0",
|
|
31
|
-
"@cat-factory/executor-harness": "1.
|
|
32
|
-
"@cat-factory/gitlab": "0.7.
|
|
33
|
-
"@cat-factory/integrations": "0.79.
|
|
34
|
-
"@cat-factory/kernel": "0.115.
|
|
35
|
-
"@cat-factory/node-server": "0.89.
|
|
36
|
-
"@cat-factory/orchestration": "0.102.
|
|
37
|
-
"@cat-factory/server": "0.106.
|
|
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.
|
|
44
|
-
"@cat-factory/gates": "0.5.
|
|
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",
|