@cleocode/contracts 2026.5.130 → 2026.5.132
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/__tests__/atomic-tools-contract.test.d.ts +14 -0
- package/dist/__tests__/atomic-tools-contract.test.d.ts.map +1 -0
- package/dist/__tests__/atomic-tools-contract.test.js +55 -0
- package/dist/__tests__/atomic-tools-contract.test.js.map +1 -0
- package/dist/__tests__/gateway-contract.test.d.ts +18 -0
- package/dist/__tests__/gateway-contract.test.d.ts.map +1 -0
- package/dist/__tests__/gateway-contract.test.js +187 -0
- package/dist/__tests__/gateway-contract.test.js.map +1 -0
- package/dist/__tests__/mvi.test.d.ts +17 -0
- package/dist/__tests__/mvi.test.d.ts.map +1 -0
- package/dist/__tests__/mvi.test.js +147 -0
- package/dist/__tests__/mvi.test.js.map +1 -0
- package/dist/__tests__/operation-def.test.js +1 -1
- package/dist/__tests__/operation-def.test.js.map +1 -1
- package/dist/boundary.d.ts +26 -0
- package/dist/boundary.d.ts.map +1 -1
- package/dist/boundary.js +44 -6
- package/dist/boundary.js.map +1 -1
- package/dist/branch-lock.d.ts +35 -1
- package/dist/branch-lock.d.ts.map +1 -1
- package/dist/branch-lock.js +23 -2
- package/dist/branch-lock.js.map +1 -1
- package/dist/daemon/__tests__/health-roundtrip.test.d.ts +13 -0
- package/dist/daemon/__tests__/health-roundtrip.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/health-roundtrip.test.js +69 -0
- package/dist/daemon/__tests__/health-roundtrip.test.js.map +1 -0
- package/dist/daemon/health.d.ts +108 -0
- package/dist/daemon/health.d.ts.map +1 -0
- package/dist/daemon/health.js +95 -0
- package/dist/daemon/health.js.map +1 -0
- package/dist/daemon/index.d.ts +24 -0
- package/dist/daemon/index.d.ts.map +1 -0
- package/dist/daemon/index.js +22 -0
- package/dist/daemon/index.js.map +1 -0
- package/dist/daemon/subsystem.d.ts +121 -0
- package/dist/daemon/subsystem.d.ts.map +1 -0
- package/dist/daemon/subsystem.js +28 -0
- package/dist/daemon/subsystem.js.map +1 -0
- package/dist/daemon-ipc/__tests__/daemon-ipc-freeze.test.d.ts +15 -0
- package/dist/daemon-ipc/__tests__/daemon-ipc-freeze.test.d.ts.map +1 -0
- package/dist/daemon-ipc/__tests__/daemon-ipc-freeze.test.js +40 -0
- package/dist/daemon-ipc/__tests__/daemon-ipc-freeze.test.js.map +1 -0
- package/dist/daemon-ipc/index.d.ts +44 -0
- package/dist/daemon-ipc/index.d.ts.map +1 -0
- package/dist/daemon-ipc/index.js +43 -0
- package/dist/daemon-ipc/index.js.map +1 -0
- package/dist/db-inventory.json +8 -8
- package/dist/dispatch/identity.d.ts +1 -1
- package/dist/dispatch/identity.d.ts.map +1 -1
- package/dist/dispatch/identity.js +3 -0
- package/dist/dispatch/identity.js.map +1 -1
- package/dist/dispatch/operation-def.d.ts +16 -0
- package/dist/dispatch/operation-def.d.ts.map +1 -1
- package/dist/dispatch/operations-registry.d.ts.map +1 -1
- package/dist/dispatch/operations-registry.js +133 -0
- package/dist/dispatch/operations-registry.js.map +1 -1
- package/dist/exit-codes.d.ts +1 -1
- package/dist/exit-codes.js +1 -1
- package/dist/gateway/rpc/__tests__/freeze.test.d.ts +20 -0
- package/dist/gateway/rpc/__tests__/freeze.test.d.ts.map +1 -0
- package/dist/gateway/rpc/__tests__/freeze.test.js +122 -0
- package/dist/gateway/rpc/__tests__/freeze.test.js.map +1 -0
- package/dist/gateway/rpc/index.d.ts +23 -0
- package/dist/gateway/rpc/index.d.ts.map +1 -0
- package/dist/gateway/rpc/index.js +22 -0
- package/dist/gateway/rpc/index.js.map +1 -0
- package/dist/gateway/rpc/messages.d.ts +263 -0
- package/dist/gateway/rpc/messages.d.ts.map +1 -0
- package/dist/gateway/rpc/messages.js +152 -0
- package/dist/gateway/rpc/messages.js.map +1 -0
- package/dist/gateway/rpc/version.d.ts +39 -0
- package/dist/gateway/rpc/version.d.ts.map +1 -0
- package/dist/gateway/rpc/version.js +39 -0
- package/dist/gateway/rpc/version.js.map +1 -0
- package/dist/gateway.d.ts +239 -0
- package/dist/gateway.d.ts.map +1 -0
- package/dist/gateway.js +171 -0
- package/dist/gateway.js.map +1 -0
- package/dist/goal.d.ts +314 -0
- package/dist/goal.d.ts.map +1 -0
- package/dist/goal.js +118 -0
- package/dist/goal.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/mvi.d.ts +209 -0
- package/dist/mvi.d.ts.map +1 -0
- package/dist/mvi.js +99 -0
- package/dist/mvi.js.map +1 -0
- package/dist/operations/attention.d.ts +114 -0
- package/dist/operations/attention.d.ts.map +1 -0
- package/dist/operations/attention.js +22 -0
- package/dist/operations/attention.js.map +1 -0
- package/dist/operations/focus.d.ts +25 -0
- package/dist/operations/focus.d.ts.map +1 -1
- package/dist/operations/index.d.ts +1 -0
- package/dist/operations/index.d.ts.map +1 -1
- package/dist/operations/index.js +1 -0
- package/dist/operations/index.js.map +1 -1
- package/dist/operations/session.d.ts +11 -0
- package/dist/operations/session.d.ts.map +1 -1
- package/dist/release/evidence-atoms.d.ts +3 -2
- package/dist/release/evidence-atoms.d.ts.map +1 -1
- package/dist/release/evidence-atoms.js +3 -2
- package/dist/release/evidence-atoms.js.map +1 -1
- package/dist/sdk-tool.d.ts +1 -1
- package/dist/sdk-tool.js +1 -1
- package/dist/supervisor-ipc/__tests__/freeze.test.d.ts +15 -0
- package/dist/supervisor-ipc/__tests__/freeze.test.d.ts.map +1 -0
- package/dist/supervisor-ipc/__tests__/freeze.test.js +159 -0
- package/dist/supervisor-ipc/__tests__/freeze.test.js.map +1 -0
- package/dist/supervisor-ipc/index.d.ts +15 -0
- package/dist/supervisor-ipc/index.d.ts.map +1 -0
- package/dist/supervisor-ipc/index.js +14 -0
- package/dist/supervisor-ipc/index.js.map +1 -0
- package/dist/supervisor-ipc/messages.d.ts +457 -0
- package/dist/supervisor-ipc/messages.d.ts.map +1 -0
- package/dist/supervisor-ipc/messages.js +312 -0
- package/dist/supervisor-ipc/messages.js.map +1 -0
- package/dist/supervisor-ipc/version.d.ts +29 -0
- package/dist/supervisor-ipc/version.d.ts.map +1 -0
- package/dist/supervisor-ipc/version.js +29 -0
- package/dist/supervisor-ipc/version.js.map +1 -0
- package/dist/task.d.ts +5 -5
- package/dist/tools/__tests__/composite.test.d.ts +14 -0
- package/dist/tools/__tests__/composite.test.d.ts.map +1 -0
- package/dist/tools/__tests__/composite.test.js +75 -0
- package/dist/tools/__tests__/composite.test.js.map +1 -0
- package/dist/tools/atomic.d.ts +195 -0
- package/dist/tools/atomic.d.ts.map +1 -0
- package/dist/tools/atomic.js +82 -0
- package/dist/tools/atomic.js.map +1 -0
- package/dist/tools/composite.d.ts +128 -0
- package/dist/tools/composite.d.ts.map +1 -0
- package/dist/tools/composite.js +88 -0
- package/dist/tools/composite.js.map +1 -0
- package/package.json +34 -2
- package/src/__tests__/__snapshots__/operations-registry.test.ts.snap +1 -1
- package/src/__tests__/atomic-tools-contract.test.ts +67 -0
- package/src/__tests__/gateway-contract.test.ts +219 -0
- package/src/__tests__/mvi.test.ts +175 -0
- package/src/__tests__/operation-def.test.ts +2 -1
- package/src/boundary.ts +76 -6
- package/src/branch-lock.ts +49 -2
- package/src/daemon/__tests__/health-roundtrip.test.ts +84 -0
- package/src/daemon/health.ts +121 -0
- package/src/daemon/index.ts +35 -0
- package/src/daemon/subsystem.ts +126 -0
- package/src/daemon-ipc/__tests__/daemon-ipc-freeze.test.ts +53 -0
- package/src/daemon-ipc/index.ts +90 -0
- package/src/db-inventory.json +8 -8
- package/src/dispatch/identity.ts +3 -0
- package/src/dispatch/operation-def.ts +16 -0
- package/src/dispatch/operations-registry.ts +140 -0
- package/src/exit-codes.ts +1 -1
- package/src/gateway/rpc/__tests__/freeze.test.ts +139 -0
- package/src/gateway/rpc/index.ts +43 -0
- package/src/gateway/rpc/messages.ts +187 -0
- package/src/gateway/rpc/version.ts +40 -0
- package/src/gateway.ts +252 -0
- package/src/goal.ts +348 -0
- package/src/index.ts +109 -0
- package/src/mvi.ts +236 -0
- package/src/operations/attention.ts +117 -0
- package/src/operations/focus.ts +26 -0
- package/src/operations/index.ts +1 -0
- package/src/operations/session.ts +11 -0
- package/src/release/evidence-atoms.ts +3 -2
- package/src/sdk-tool.ts +1 -1
- package/src/supervisor-ipc/__tests__/freeze.test.ts +180 -0
- package/src/supervisor-ipc/index.ts +62 -0
- package/src/supervisor-ipc/messages.ts +396 -0
- package/src/supervisor-ipc/version.ts +30 -0
- package/src/task.ts +5 -5
- package/src/tools/__tests__/composite.test.ts +88 -0
- package/src/tools/atomic.ts +274 -0
- package/src/tools/composite.ts +173 -0
package/dist/boundary.js
CHANGED
|
@@ -154,6 +154,23 @@ export const BOUNDARY_REGISTRY = [
|
|
|
154
154
|
amendments: [],
|
|
155
155
|
rationale: 'Conduit serde-types crate (681 LOC) — renamed from conduit-core to cleo-conduit-core (T10185, saga T10180) because conduit-core is squatted on crates.io. Stable contract surface consumed by cant-core, signaldock-protocol, signaldock-core, integration-tests, AND external /mnt/projects/signaldock-core + /mnt/projects/signaldock/backend via git deps. Mirrors @cleocode/contracts/conduit.ts. Forced KEEP+publish=true: deleting breaks production, and signaldock-protocol publish requires it.',
|
|
156
156
|
},
|
|
157
|
+
{
|
|
158
|
+
module: 'cleo-supervisor',
|
|
159
|
+
intent: 'scaffold-pending-consumer',
|
|
160
|
+
rustCore: 'crates/cleo-supervisor',
|
|
161
|
+
canonicalHome: 'cleocode',
|
|
162
|
+
plannedConsumerEta: '2026-06-30',
|
|
163
|
+
perfBudget: {
|
|
164
|
+
startup_max_ms: 200,
|
|
165
|
+
memory_max_mb: 15,
|
|
166
|
+
},
|
|
167
|
+
safetyBudget: {
|
|
168
|
+
panic_unwind: 'forbidden',
|
|
169
|
+
root_escape: 'forbidden',
|
|
170
|
+
},
|
|
171
|
+
amendments: ['adr-078-boundary-registry'],
|
|
172
|
+
rationale: 'Process supervisor bin+lib crate (R1 / T11252, SG-RUNTIME-UNIFICATION T11243): pidfile + tokio::process child spawn/monitor + SIGTERM-grace/SIGCHLD reaping (Unix) / Job Object (Windows) + exponential restart-backoff (30s cap) + tracing-appender log rotation. publish=false; distributed via napi-style Pattern P2 (GitHub Release + checked-in sha256 manifest) + Pattern P1 linux-x64-gnu fallback bundled in @cleocode/core — zero binary OIDC (D14prime). Consumes the frozen supervisor-ipc v1.0 contract (packages/contracts/src/supervisor-ipc); first consumer is R2 @cleocode/runtime/daemon (T11253). Idle-RSS budget 15MB.',
|
|
173
|
+
},
|
|
157
174
|
{
|
|
158
175
|
module: 'integration-tests',
|
|
159
176
|
intent: 'cpu-bound',
|
|
@@ -304,7 +321,7 @@ export const BOUNDARY_REGISTRY = [
|
|
|
304
321
|
root_escape: 'forbidden',
|
|
305
322
|
},
|
|
306
323
|
amendments: ['adr-087-worktree-ffi-topology'],
|
|
307
|
-
rationale: 'napi binding shim (515 LOC) for worktrunk-core, used by packages/core spawn-pipeline tests
|
|
324
|
+
rationale: 'napi binding shim (515 LOC) for worktrunk-core, used by packages/core spawn-pipeline tests and packages/core/src/scaffold/ensure-config.ts. The native .node binaries are bundled into @cleocode/worktree/native (Pattern P1) and fetched from the GitHub Release (Pattern P2); the per-platform packages/worktree-napi-* manifest packages were removed and are NOT published (D14prime / ADR-087, T11398). Internal-only.',
|
|
308
325
|
},
|
|
309
326
|
{
|
|
310
327
|
module: 'worktrunk-core',
|
|
@@ -529,9 +546,9 @@ export const BOUNDARY_REGISTRY = [
|
|
|
529
546
|
rationale: 'Envelope + A2A bridge (11,353 LOC) consumed by 6 packages. Rust core (lafs-core + lafs-napi) handles canonical envelope serialization; TS layer is A2A express bridge + envelope validation glue (2,600 LOC a2a/* uses JS-only @a2a-js/sdk).',
|
|
530
547
|
},
|
|
531
548
|
{
|
|
532
|
-
module: 'mcp
|
|
549
|
+
module: 'runtime/gateway/mcp',
|
|
533
550
|
intent: 'orchestration-glue',
|
|
534
|
-
tsWrapper: 'packages/mcp
|
|
551
|
+
tsWrapper: 'packages/runtime/src/gateway/mcp',
|
|
535
552
|
canonicalHome: 'cleocode',
|
|
536
553
|
perfBudget: {
|
|
537
554
|
latency_p50_ms: 100,
|
|
@@ -543,7 +560,7 @@ export const BOUNDARY_REGISTRY = [
|
|
|
543
560
|
network_egress: 'allowed',
|
|
544
561
|
},
|
|
545
562
|
amendments: [],
|
|
546
|
-
rationale: '
|
|
563
|
+
rationale: 'MCP transport adapter (R8 · T11259) — the standalone `packages/mcp-adapter` source was deleted and consolidated into `@cleocode/runtime/gateway/mcp` (R3-T4 · T11448). Routes every `tools/call` through the unified gateway (`source: "mcp"`) rather than calling `@cleocode/core` directly. Zero separate npm publish; the adapter ships as part of `@cleocode/runtime`.',
|
|
547
564
|
},
|
|
548
565
|
{
|
|
549
566
|
module: 'nexus',
|
|
@@ -576,6 +593,21 @@ export const BOUNDARY_REGISTRY = [
|
|
|
576
593
|
amendments: ['adr-067-project-root-resolution'],
|
|
577
594
|
rationale: 'XDG paths SSoT (588 LOC) consumed by 9 packages. Upgraded from data-manifest to orchestration-glue (T10295, T11026): the ID-aware resolver surface — resolveProjectByCwd + resolveCanonicalCleoDir — introduces projectId↔path lookup logic with cross-mount canonicalization and strict-mode enforcement. Still TS-only; no Rust port warranted.',
|
|
578
595
|
},
|
|
596
|
+
{
|
|
597
|
+
module: 'utils',
|
|
598
|
+
intent: 'orchestration-glue',
|
|
599
|
+
tsWrapper: 'packages/utils',
|
|
600
|
+
canonicalHome: 'cleocode',
|
|
601
|
+
perfBudget: {
|
|
602
|
+
latency_p50_ms: 5,
|
|
603
|
+
},
|
|
604
|
+
safetyBudget: {
|
|
605
|
+
panic_unwind: 'forbidden',
|
|
606
|
+
root_escape: 'forbidden',
|
|
607
|
+
},
|
|
608
|
+
amendments: [],
|
|
609
|
+
rationale: 'Pure zero-dependency helper leaf (formatBytes, ...) collapsed from duplicated inline copies. Zero cleocode deps; bundled into @cleocode/cleo, never published (E5 / T11392).',
|
|
610
|
+
},
|
|
579
611
|
{
|
|
580
612
|
module: 'playbooks',
|
|
581
613
|
intent: 'orchestration-glue',
|
|
@@ -639,7 +671,7 @@ export const BOUNDARY_REGISTRY = [
|
|
|
639
671
|
network_egress: 'allowed',
|
|
640
672
|
},
|
|
641
673
|
amendments: [],
|
|
642
|
-
rationale: 'SvelteKit frontend (16,636 LOC, d3/three/sigma) — 0 in-repo consumers. SvelteKit + browser code; TS always.',
|
|
674
|
+
rationale: 'SvelteKit frontend (16,636 LOC, d3/three/sigma) — 0 in-repo consumers; it is an application, not a consumed library. SvelteKit + browser code; TS always. REMOVED from the npm publish surface (T11399 / E1 · SG-PACKAGE-ARCH), reversing the 2026-05-05 Issue #102 / PR #103 addition: apps are deployed, not published.',
|
|
643
675
|
},
|
|
644
676
|
{
|
|
645
677
|
module: 'worktree',
|
|
@@ -657,7 +689,13 @@ export const BOUNDARY_REGISTRY = [
|
|
|
657
689
|
fs_writes_outside_root: 'audited',
|
|
658
690
|
},
|
|
659
691
|
amendments: ['adr-087-worktree-ffi-topology', 'adr-078-boundary-registry'],
|
|
660
|
-
rationale: 'Worktree SSoT primitive layer (1,972 LOC) — canonical create/destroy/list/prune/include/copy-on-write bound by @cleocode/paths. Post-PR-#487 the responsibilities are distinct from packages/core/src/worktree/ (SDK-level enrichment). Consumes worktrunk-core via worktree-napi.',
|
|
692
|
+
rationale: 'Worktree SSoT primitive layer (1,972 LOC) — canonical create/destroy/list/prune/include/copy-on-write bound by @cleocode/paths. Post-PR-#487 the responsibilities are distinct from packages/core/src/worktree/ (SDK-level enrichment). Consumes worktrunk-core via the worktree-napi binding, whose native .node binaries are bundled into native/ (Pattern P1) / fetched from the GitHub Release (Pattern P2) — no separate per-platform npm package is published (D14prime / ADR-087, T11398).',
|
|
661
693
|
},
|
|
662
694
|
];
|
|
695
|
+
/** {@inheritDoc AtomicToolBoundary} */
|
|
696
|
+
export const ATOMIC_TOOL_BOUNDARY = {
|
|
697
|
+
primitiveHomes: ['packages/core/src/tools', 'packages/contracts/src/tools'],
|
|
698
|
+
skillsHome: 'packages/skills',
|
|
699
|
+
consumersNoRedefine: ['packages/runtime', 'packages/caamp', 'packages/cleo-os'],
|
|
700
|
+
};
|
|
663
701
|
//# sourceMappingURL=boundary.js.map
|
package/dist/boundary.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../src/boundary.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../src/boundary.ts"],"names":[],"mappings":"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"}
|
package/dist/branch-lock.d.ts
CHANGED
|
@@ -274,9 +274,17 @@ export type BranchLockErrorCode = (typeof BRANCH_LOCK_ERROR_CODES)[keyof typeof
|
|
|
274
274
|
* Exported as a frozen const tuple so git-shim, harness adapters, and test
|
|
275
275
|
* utilities can reference the authoritative key list without duplication.
|
|
276
276
|
*
|
|
277
|
+
* `CLEO_SESSION_ID` + `CLEO_AGENT_ID` were added in T11343 (Epic T11284,
|
|
278
|
+
* SG-COGNITIVE-SUBSTRATE) so every spawned agent carries its OWN session and
|
|
279
|
+
* agent identity into the isolation shell. Before this, spawn injected only
|
|
280
|
+
* worktree-binding keys and every short-lived `cleo` call inside the worktree
|
|
281
|
+
* collapsed onto "whoever touched the DB last" via `getActiveSession()` —
|
|
282
|
+
* the root cause of multi-agent session-bleed AND memory scope-leakage.
|
|
283
|
+
*
|
|
277
284
|
* @task T1759
|
|
285
|
+
* @task T11343
|
|
278
286
|
*/
|
|
279
|
-
export declare const ISOLATION_ENV_KEYS: readonly ["CLEO_WORKTREE_ROOT", "CLEO_AGENT_ROLE", "CLEO_WORKTREE_BRANCH", "CLEO_PROJECT_HASH"];
|
|
287
|
+
export declare const ISOLATION_ENV_KEYS: readonly ["CLEO_WORKTREE_ROOT", "CLEO_AGENT_ROLE", "CLEO_WORKTREE_BRANCH", "CLEO_PROJECT_HASH", "CLEO_SESSION_ID", "CLEO_AGENT_ID"];
|
|
280
288
|
/** Union of all isolation env key strings. */
|
|
281
289
|
export type IsolationEnvKey = (typeof ISOLATION_ENV_KEYS)[number];
|
|
282
290
|
/**
|
|
@@ -358,6 +366,32 @@ export interface IsolationOptions {
|
|
|
358
366
|
role: 'worker' | 'orchestrator';
|
|
359
367
|
/** Project hash scoping this worktree under the XDG root (sha256(projectRoot)[:16]). */
|
|
360
368
|
projectHash: string;
|
|
369
|
+
/**
|
|
370
|
+
* Per-agent CLEO session id to bind to the isolation shell (T11343).
|
|
371
|
+
*
|
|
372
|
+
* Injected as `CLEO_SESSION_ID` so every short-lived `cleo` call inside the
|
|
373
|
+
* worktree resolves THIS agent's session via `resolveSessionIdFromEnv()`
|
|
374
|
+
* rather than collapsing onto the orchestrator's most-recent active row.
|
|
375
|
+
* When omitted, `CLEO_SESSION_ID` is set to the empty string and downstream
|
|
376
|
+
* resolution falls back to the legacy `getActiveSession()` path (backward
|
|
377
|
+
* compatible — no behaviour change for callers that do not yet allocate a
|
|
378
|
+
* per-agent session).
|
|
379
|
+
*
|
|
380
|
+
* @defaultValue '' (empty — falls back to active-session resolution)
|
|
381
|
+
* @task T11343
|
|
382
|
+
*/
|
|
383
|
+
sessionId?: string;
|
|
384
|
+
/**
|
|
385
|
+
* Per-agent identity handle to bind to the isolation shell (T11343).
|
|
386
|
+
*
|
|
387
|
+
* Injected as `CLEO_AGENT_ID` so audit rows, conduit messages, and memory
|
|
388
|
+
* observations are attributed to the spawned agent rather than to the
|
|
389
|
+
* orchestrator. When omitted, `CLEO_AGENT_ID` is set to the empty string.
|
|
390
|
+
*
|
|
391
|
+
* @defaultValue '' (empty — no per-agent attribution)
|
|
392
|
+
* @task T11343
|
|
393
|
+
*/
|
|
394
|
+
agentId?: string;
|
|
361
395
|
}
|
|
362
396
|
/**
|
|
363
397
|
* Result of `provisionIsolatedShell`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-lock.d.ts","sourceRoot":"","sources":["../src/branch-lock.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"branch-lock.d.ts","sourceRoot":"","sources":["../src/branch-lock.ts"],"names":[],"mappings":"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"}
|
package/dist/branch-lock.js
CHANGED
|
@@ -86,13 +86,23 @@ export const BRANCH_LOCK_ERROR_CODES = {
|
|
|
86
86
|
* Exported as a frozen const tuple so git-shim, harness adapters, and test
|
|
87
87
|
* utilities can reference the authoritative key list without duplication.
|
|
88
88
|
*
|
|
89
|
+
* `CLEO_SESSION_ID` + `CLEO_AGENT_ID` were added in T11343 (Epic T11284,
|
|
90
|
+
* SG-COGNITIVE-SUBSTRATE) so every spawned agent carries its OWN session and
|
|
91
|
+
* agent identity into the isolation shell. Before this, spawn injected only
|
|
92
|
+
* worktree-binding keys and every short-lived `cleo` call inside the worktree
|
|
93
|
+
* collapsed onto "whoever touched the DB last" via `getActiveSession()` —
|
|
94
|
+
* the root cause of multi-agent session-bleed AND memory scope-leakage.
|
|
95
|
+
*
|
|
89
96
|
* @task T1759
|
|
97
|
+
* @task T11343
|
|
90
98
|
*/
|
|
91
99
|
export const ISOLATION_ENV_KEYS = [
|
|
92
100
|
'CLEO_WORKTREE_ROOT',
|
|
93
101
|
'CLEO_AGENT_ROLE',
|
|
94
102
|
'CLEO_WORKTREE_BRANCH',
|
|
95
103
|
'CLEO_PROJECT_HASH',
|
|
104
|
+
'CLEO_SESSION_ID',
|
|
105
|
+
'CLEO_AGENT_ID',
|
|
96
106
|
];
|
|
97
107
|
/**
|
|
98
108
|
* Provision an isolated shell context for an agent worktree.
|
|
@@ -114,15 +124,21 @@ export const ISOLATION_ENV_KEYS = [
|
|
|
114
124
|
* @task T1759
|
|
115
125
|
*/
|
|
116
126
|
export function provisionIsolatedShell(options) {
|
|
117
|
-
const { worktreePath, branch, role, projectHash } = options;
|
|
127
|
+
const { worktreePath, branch, role, projectHash, sessionId, agentId } = options;
|
|
118
128
|
// --- cwd -----------------------------------------------------------------
|
|
119
129
|
const cwd = worktreePath;
|
|
120
130
|
// --- env -----------------------------------------------------------------
|
|
131
|
+
// T11343: CLEO_SESSION_ID + CLEO_AGENT_ID bind the spawned agent's own
|
|
132
|
+
// identity into the shell. Empty-string default keeps backward compatibility
|
|
133
|
+
// — `resolveSessionIdFromEnv()` treats '' as absent and falls back to the
|
|
134
|
+
// legacy active-session resolution path.
|
|
121
135
|
const env = {
|
|
122
136
|
CLEO_WORKTREE_ROOT: worktreePath,
|
|
123
137
|
CLEO_AGENT_ROLE: role,
|
|
124
138
|
CLEO_WORKTREE_BRANCH: branch,
|
|
125
139
|
CLEO_PROJECT_HASH: projectHash,
|
|
140
|
+
CLEO_SESSION_ID: sessionId ?? '',
|
|
141
|
+
CLEO_AGENT_ID: agentId ?? '',
|
|
126
142
|
};
|
|
127
143
|
// --- preamble ------------------------------------------------------------
|
|
128
144
|
// Shell snippet injected into the agent's spawn prompt. The guard pattern
|
|
@@ -130,7 +146,12 @@ export function provisionIsolatedShell(options) {
|
|
|
130
146
|
// - The worktree directory having been pruned before the agent starts.
|
|
131
147
|
// - A future change where cwd is silently coerced to something else.
|
|
132
148
|
// - Symlink traversal producing a path that doesn't share the prefix.
|
|
133
|
-
|
|
149
|
+
// T11343: skip empty values so an unallocated CLEO_SESSION_ID / CLEO_AGENT_ID
|
|
150
|
+
// does not emit a clobbering `export KEY=""` that would clear an inherited
|
|
151
|
+
// value. Worktree-binding keys are always non-empty so they always export.
|
|
152
|
+
const exportBlock = ISOLATION_ENV_KEYS.filter((k) => env[k] !== '')
|
|
153
|
+
.map((k) => `export ${k}="${env[k]}"`)
|
|
154
|
+
.join('\n');
|
|
134
155
|
const preamble = [
|
|
135
156
|
'## Worktree Isolation (REQUIRED — do not skip)',
|
|
136
157
|
'',
|
package/dist/branch-lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-lock.js","sourceRoot":"","sources":["../src/branch-lock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAyNH,8EAA8E;AAC9E,0CAA0C;AAC1C,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,wDAAwD;IACxD,gBAAgB,EAAE,kBAAkB;IACpC,qDAAqD;IACrD,mBAAmB,EAAE,qBAAqB;IAC1C,uEAAuE;IACvE,kBAAkB,EAAE,oBAAoB;IACxC,mEAAmE;IACnE,cAAc,EAAE,gBAAgB;IAChC,oCAAoC;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,0CAA0C;IAC1C,wBAAwB,EAAE,0BAA0B;IACpD,iFAAiF;IACjF,+BAA+B,EAAE,iCAAiC;IAClE,gEAAgE;IAChE,oBAAoB,EAAE,sBAAsB;IAC5C,4CAA4C;IAC5C,qBAAqB,EAAE,uBAAuB;IAC9C;;;;OAIG;IACH,uBAAuB,EAAE,yBAAyB;IAClD;;;OAGG;IACH,+BAA+B,EAAE,iCAAiC;IAClE;;;;;;OAMG;IACH,oBAAoB,EAAE,sBAAsB;IAC5C;;;;;;;;;OASG;IACH,cAAc,EAAE,gBAAgB;CACxB,CAAC;AAMX,8EAA8E;AAC9E,kDAAkD;AAClD,8EAA8E;AAE9E
|
|
1
|
+
{"version":3,"file":"branch-lock.js","sourceRoot":"","sources":["../src/branch-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Round-trip guard for the daemon health contracts (T11366 AC5).
|
|
3
|
+
*
|
|
4
|
+
* Proves a {@link HealthStatus} aggregate projects onto the FROZEN
|
|
5
|
+
* `supervisor-ipc` {@link MonitorResponseSchema} shape **without a lossy cast**:
|
|
6
|
+
* `toMonitorChildren` yields rows that validate against the supervisor's own
|
|
7
|
+
* `MonitorResponse.children` schema, and a `monitor` response carrying them
|
|
8
|
+
* round-trips through `MonitorResponseSchema.parse`.
|
|
9
|
+
*
|
|
10
|
+
* @task T11366
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=health-roundtrip.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health-roundtrip.test.d.ts","sourceRoot":"","sources":["../../../src/daemon/__tests__/health-roundtrip.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Round-trip guard for the daemon health contracts (T11366 AC5).
|
|
3
|
+
*
|
|
4
|
+
* Proves a {@link HealthStatus} aggregate projects onto the FROZEN
|
|
5
|
+
* `supervisor-ipc` {@link MonitorResponseSchema} shape **without a lossy cast**:
|
|
6
|
+
* `toMonitorChildren` yields rows that validate against the supervisor's own
|
|
7
|
+
* `MonitorResponse.children` schema, and a `monitor` response carrying them
|
|
8
|
+
* round-trips through `MonitorResponseSchema.parse`.
|
|
9
|
+
*
|
|
10
|
+
* @task T11366
|
|
11
|
+
*/
|
|
12
|
+
import { describe, expect, it } from 'vitest';
|
|
13
|
+
import { MonitorResponseSchema, SubsystemHealthSchema, summarizeHealth, toMonitorChildren, } from '../../index.js';
|
|
14
|
+
describe('daemon HealthStatus ↔ supervisor-ipc MonitorResponse (T11366)', () => {
|
|
15
|
+
const rows = [
|
|
16
|
+
{ child_id: 'studio', pid: 4242, state: 'running', restart_count: 0 },
|
|
17
|
+
{
|
|
18
|
+
child_id: 'gc-cron',
|
|
19
|
+
pid: 0,
|
|
20
|
+
state: 'stopped',
|
|
21
|
+
restart_count: 2,
|
|
22
|
+
detail: 'awaiting next scheduled run',
|
|
23
|
+
},
|
|
24
|
+
];
|
|
25
|
+
it('summarizeHealth computes allHealthy from row states', () => {
|
|
26
|
+
expect(summarizeHealth(rows).allHealthy).toBe(false);
|
|
27
|
+
expect(summarizeHealth([{ child_id: 'studio', pid: 1, state: 'running', restart_count: 0 }])
|
|
28
|
+
.allHealthy).toBe(true);
|
|
29
|
+
});
|
|
30
|
+
it('toMonitorChildren projects onto MonitorResponse.children without lossy casts', () => {
|
|
31
|
+
const health = summarizeHealth(rows);
|
|
32
|
+
const children = toMonitorChildren(health);
|
|
33
|
+
// Each projected row must validate against the FROZEN supervisor schema.
|
|
34
|
+
const monitor = {
|
|
35
|
+
kind: 'monitor',
|
|
36
|
+
children,
|
|
37
|
+
};
|
|
38
|
+
const parsed = MonitorResponseSchema.safeParse(monitor);
|
|
39
|
+
expect(parsed.success).toBe(true);
|
|
40
|
+
if (parsed.success) {
|
|
41
|
+
expect(parsed.data.children).toHaveLength(2);
|
|
42
|
+
// The daemon-only `detail` field is stripped on projection.
|
|
43
|
+
expect(parsed.data.children[1]).not.toHaveProperty('detail');
|
|
44
|
+
expect(parsed.data.children[0]?.child_id).toBe('studio');
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
it('a SubsystemHealth row is a structural superset of a supervisor ChildStatus', () => {
|
|
48
|
+
// Validating with the daemon schema accepts the supervisor fields verbatim.
|
|
49
|
+
const row = SubsystemHealthSchema.parse({
|
|
50
|
+
child_id: 'web',
|
|
51
|
+
pid: 9000,
|
|
52
|
+
state: 'running',
|
|
53
|
+
restart_count: 0,
|
|
54
|
+
});
|
|
55
|
+
expect(row.child_id).toBe('web');
|
|
56
|
+
// detail is optional and absent here.
|
|
57
|
+
expect(row.detail).toBeUndefined();
|
|
58
|
+
});
|
|
59
|
+
it('rejects a health row with a state outside the frozen ChildState enum', () => {
|
|
60
|
+
const bad = SubsystemHealthSchema.safeParse({
|
|
61
|
+
child_id: 'x',
|
|
62
|
+
pid: 0,
|
|
63
|
+
state: 'paused',
|
|
64
|
+
restart_count: 0,
|
|
65
|
+
});
|
|
66
|
+
expect(bad.success).toBe(false);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=health-roundtrip.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health-roundtrip.test.js","sourceRoot":"","sources":["../../../src/daemon/__tests__/health-roundtrip.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Daemon health contracts — the aggregate shape a subsystem's `healthProbe`
|
|
3
|
+
* produces and the Rust supervisor consumes.
|
|
4
|
+
*
|
|
5
|
+
* These types **compose** the FROZEN `supervisor-ipc` v1.0 contract
|
|
6
|
+
* ({@link ChildState}, {@link ChildStatus}, {@link MonitorResponse}) rather than
|
|
7
|
+
* redeclaring it: a single subsystem health row maps onto a supervised
|
|
8
|
+
* {@link ChildStatus}, and a {@link HealthStatus} aggregate projects losslessly
|
|
9
|
+
* onto the {@link MonitorResponse} shape the supervisor already aggregates. This
|
|
10
|
+
* keeps the daemon submodule's probe output on the same wire vocabulary the
|
|
11
|
+
* supervisor monitors with — no parallel health taxonomy.
|
|
12
|
+
*
|
|
13
|
+
* @packageDocumentation
|
|
14
|
+
* @module @cleocode/contracts/daemon
|
|
15
|
+
*
|
|
16
|
+
* @epic T11253 R2 — `@cleocode/runtime/daemon` submodule
|
|
17
|
+
* @task T11366 — daemon lifecycle + subsystem contracts
|
|
18
|
+
* @saga T11243 SG-RUNTIME-UNIFICATION
|
|
19
|
+
*/
|
|
20
|
+
import { z } from 'zod';
|
|
21
|
+
import { type ChildState, type ChildStatus } from '../supervisor-ipc/messages.js';
|
|
22
|
+
/**
|
|
23
|
+
* The liveness state of a single subsystem.
|
|
24
|
+
*
|
|
25
|
+
* This is the FROZEN `supervisor-ipc` {@link ChildState} (`running` |
|
|
26
|
+
* `restarting` | `stopped`) re-exported under a daemon-facing name so subsystem
|
|
27
|
+
* authors do not reach across into the IPC module. A subsystem maps onto a
|
|
28
|
+
* supervised child, so the two states are deliberately identical.
|
|
29
|
+
*/
|
|
30
|
+
export type SubsystemState = ChildState;
|
|
31
|
+
/**
|
|
32
|
+
* Zod schema for {@link SubsystemState}. Aliases the FROZEN
|
|
33
|
+
* {@link ChildStateSchema} — additive only; never edit the underlying enum.
|
|
34
|
+
*/
|
|
35
|
+
export declare const SubsystemStateSchema: z.ZodEnum<{
|
|
36
|
+
running: "running";
|
|
37
|
+
restarting: "restarting";
|
|
38
|
+
stopped: "stopped";
|
|
39
|
+
}>;
|
|
40
|
+
/**
|
|
41
|
+
* A single subsystem's health row.
|
|
42
|
+
*
|
|
43
|
+
* Structurally a superset of the supervisor's {@link ChildStatus}: it carries
|
|
44
|
+
* the same `child_id`/`pid`/`state`/`restart_count` fields (so it projects onto
|
|
45
|
+
* a {@link ChildStatus} without a lossy cast) plus an optional human-readable
|
|
46
|
+
* `detail` for diagnostics that never crosses the IPC wire.
|
|
47
|
+
*
|
|
48
|
+
* The `child_id` is the subsystem's logical name, matching the id the
|
|
49
|
+
* supervisor tracks the corresponding child under.
|
|
50
|
+
*/
|
|
51
|
+
export declare const SubsystemHealthSchema: z.ZodObject<{
|
|
52
|
+
child_id: z.ZodString;
|
|
53
|
+
pid: z.ZodNumber;
|
|
54
|
+
state: z.ZodEnum<{
|
|
55
|
+
running: "running";
|
|
56
|
+
restarting: "restarting";
|
|
57
|
+
stopped: "stopped";
|
|
58
|
+
}>;
|
|
59
|
+
restart_count: z.ZodNumber;
|
|
60
|
+
detail: z.ZodOptional<z.ZodString>;
|
|
61
|
+
}, z.core.$strict>;
|
|
62
|
+
/** A single subsystem's health row (inferred from {@link SubsystemHealthSchema}). */
|
|
63
|
+
export type SubsystemHealth = z.infer<typeof SubsystemHealthSchema>;
|
|
64
|
+
/**
|
|
65
|
+
* The aggregate health snapshot across every registered subsystem.
|
|
66
|
+
*
|
|
67
|
+
* Projects losslessly onto the supervisor's `monitor` snapshot: each
|
|
68
|
+
* {@link SubsystemHealth} row's supervisor-visible fields ARE a
|
|
69
|
+
* {@link ChildStatus}, so {@link toMonitorChildren} can hand the supervisor a
|
|
70
|
+
* `MonitorResponse.children` array with zero casts.
|
|
71
|
+
*/
|
|
72
|
+
export declare const HealthStatusSchema: z.ZodObject<{
|
|
73
|
+
subsystems: z.ZodArray<z.ZodObject<{
|
|
74
|
+
child_id: z.ZodString;
|
|
75
|
+
pid: z.ZodNumber;
|
|
76
|
+
state: z.ZodEnum<{
|
|
77
|
+
running: "running";
|
|
78
|
+
restarting: "restarting";
|
|
79
|
+
stopped: "stopped";
|
|
80
|
+
}>;
|
|
81
|
+
restart_count: z.ZodNumber;
|
|
82
|
+
detail: z.ZodOptional<z.ZodString>;
|
|
83
|
+
}, z.core.$strict>>;
|
|
84
|
+
allHealthy: z.ZodBoolean;
|
|
85
|
+
}, z.core.$strict>;
|
|
86
|
+
/** The aggregate daemon health snapshot (inferred from {@link HealthStatusSchema}). */
|
|
87
|
+
export type HealthStatus = z.infer<typeof HealthStatusSchema>;
|
|
88
|
+
/**
|
|
89
|
+
* Project a {@link HealthStatus} onto the FROZEN supervisor `monitor` row array
|
|
90
|
+
* (`MonitorResponse['children']`) without a lossy cast.
|
|
91
|
+
*
|
|
92
|
+
* Each {@link SubsystemHealth} already carries the four supervisor-visible
|
|
93
|
+
* fields of a {@link ChildStatus}; this strips the daemon-only `detail` so the
|
|
94
|
+
* result is byte-compatible with what `cleo-supervisor` aggregates.
|
|
95
|
+
*
|
|
96
|
+
* @param health - The aggregate daemon health snapshot.
|
|
97
|
+
* @returns An array of {@link ChildStatus} rows for a `MonitorResponse`.
|
|
98
|
+
*/
|
|
99
|
+
export declare function toMonitorChildren(health: HealthStatus): ChildStatus[];
|
|
100
|
+
/**
|
|
101
|
+
* Build the aggregate {@link HealthStatus} from per-subsystem rows, computing
|
|
102
|
+
* the `allHealthy` roll-up so it can never desync from the row states.
|
|
103
|
+
*
|
|
104
|
+
* @param subsystems - One {@link SubsystemHealth} row per registered subsystem.
|
|
105
|
+
* @returns The aggregate health snapshot.
|
|
106
|
+
*/
|
|
107
|
+
export declare function summarizeHealth(subsystems: SubsystemHealth[]): HealthStatus;
|
|
108
|
+
//# sourceMappingURL=health.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/daemon/health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,KAAK,UAAU,EAEf,KAAK,WAAW,EAEjB,MAAM,+BAA+B,CAAC;AAEvC;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;EAAmB,CAAC;AAErD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;kBAMvB,CAAC;AAEZ,qFAAqF;AACrF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;kBAWpB,CAAC;AAEZ,uFAAuF;AACvF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW,EAAE,CAKrE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,GAAG,YAAY,CAK3E"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Daemon health contracts — the aggregate shape a subsystem's `healthProbe`
|
|
3
|
+
* produces and the Rust supervisor consumes.
|
|
4
|
+
*
|
|
5
|
+
* These types **compose** the FROZEN `supervisor-ipc` v1.0 contract
|
|
6
|
+
* ({@link ChildState}, {@link ChildStatus}, {@link MonitorResponse}) rather than
|
|
7
|
+
* redeclaring it: a single subsystem health row maps onto a supervised
|
|
8
|
+
* {@link ChildStatus}, and a {@link HealthStatus} aggregate projects losslessly
|
|
9
|
+
* onto the {@link MonitorResponse} shape the supervisor already aggregates. This
|
|
10
|
+
* keeps the daemon submodule's probe output on the same wire vocabulary the
|
|
11
|
+
* supervisor monitors with — no parallel health taxonomy.
|
|
12
|
+
*
|
|
13
|
+
* @packageDocumentation
|
|
14
|
+
* @module @cleocode/contracts/daemon
|
|
15
|
+
*
|
|
16
|
+
* @epic T11253 R2 — `@cleocode/runtime/daemon` submodule
|
|
17
|
+
* @task T11366 — daemon lifecycle + subsystem contracts
|
|
18
|
+
* @saga T11243 SG-RUNTIME-UNIFICATION
|
|
19
|
+
*/
|
|
20
|
+
import { z } from 'zod';
|
|
21
|
+
import { ChildStateSchema, ChildStatusSchema, } from '../supervisor-ipc/messages.js';
|
|
22
|
+
/**
|
|
23
|
+
* Zod schema for {@link SubsystemState}. Aliases the FROZEN
|
|
24
|
+
* {@link ChildStateSchema} — additive only; never edit the underlying enum.
|
|
25
|
+
*/
|
|
26
|
+
export const SubsystemStateSchema = ChildStateSchema;
|
|
27
|
+
/**
|
|
28
|
+
* A single subsystem's health row.
|
|
29
|
+
*
|
|
30
|
+
* Structurally a superset of the supervisor's {@link ChildStatus}: it carries
|
|
31
|
+
* the same `child_id`/`pid`/`state`/`restart_count` fields (so it projects onto
|
|
32
|
+
* a {@link ChildStatus} without a lossy cast) plus an optional human-readable
|
|
33
|
+
* `detail` for diagnostics that never crosses the IPC wire.
|
|
34
|
+
*
|
|
35
|
+
* The `child_id` is the subsystem's logical name, matching the id the
|
|
36
|
+
* supervisor tracks the corresponding child under.
|
|
37
|
+
*/
|
|
38
|
+
export const SubsystemHealthSchema = ChildStatusSchema.extend({
|
|
39
|
+
/**
|
|
40
|
+
* Optional human-readable detail (e.g. last error message, queue depth).
|
|
41
|
+
* Diagnostic only — not part of the supervisor wire contract.
|
|
42
|
+
*/
|
|
43
|
+
detail: z.string().optional(),
|
|
44
|
+
}).strict();
|
|
45
|
+
/**
|
|
46
|
+
* The aggregate health snapshot across every registered subsystem.
|
|
47
|
+
*
|
|
48
|
+
* Projects losslessly onto the supervisor's `monitor` snapshot: each
|
|
49
|
+
* {@link SubsystemHealth} row's supervisor-visible fields ARE a
|
|
50
|
+
* {@link ChildStatus}, so {@link toMonitorChildren} can hand the supervisor a
|
|
51
|
+
* `MonitorResponse.children` array with zero casts.
|
|
52
|
+
*/
|
|
53
|
+
export const HealthStatusSchema = z
|
|
54
|
+
.object({
|
|
55
|
+
/** One health row per registered subsystem. */
|
|
56
|
+
subsystems: z.array(SubsystemHealthSchema),
|
|
57
|
+
/**
|
|
58
|
+
* `true` iff every subsystem is in the `running` state. A convenience roll-up
|
|
59
|
+
* derived from {@link HealthStatusSchema.shape.subsystems}; recomputed by
|
|
60
|
+
* {@link summarizeHealth} so producers cannot desync it.
|
|
61
|
+
*/
|
|
62
|
+
allHealthy: z.boolean(),
|
|
63
|
+
})
|
|
64
|
+
.strict();
|
|
65
|
+
/**
|
|
66
|
+
* Project a {@link HealthStatus} onto the FROZEN supervisor `monitor` row array
|
|
67
|
+
* (`MonitorResponse['children']`) without a lossy cast.
|
|
68
|
+
*
|
|
69
|
+
* Each {@link SubsystemHealth} already carries the four supervisor-visible
|
|
70
|
+
* fields of a {@link ChildStatus}; this strips the daemon-only `detail` so the
|
|
71
|
+
* result is byte-compatible with what `cleo-supervisor` aggregates.
|
|
72
|
+
*
|
|
73
|
+
* @param health - The aggregate daemon health snapshot.
|
|
74
|
+
* @returns An array of {@link ChildStatus} rows for a `MonitorResponse`.
|
|
75
|
+
*/
|
|
76
|
+
export function toMonitorChildren(health) {
|
|
77
|
+
return health.subsystems.map((row) => {
|
|
78
|
+
const { detail: _detail, ...childStatus } = row;
|
|
79
|
+
return childStatus;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Build the aggregate {@link HealthStatus} from per-subsystem rows, computing
|
|
84
|
+
* the `allHealthy` roll-up so it can never desync from the row states.
|
|
85
|
+
*
|
|
86
|
+
* @param subsystems - One {@link SubsystemHealth} row per registered subsystem.
|
|
87
|
+
* @returns The aggregate health snapshot.
|
|
88
|
+
*/
|
|
89
|
+
export function summarizeHealth(subsystems) {
|
|
90
|
+
return {
|
|
91
|
+
subsystems,
|
|
92
|
+
allHealthy: subsystems.every((row) => row.state === 'running'),
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=health.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/daemon/health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,gBAAgB,EAEhB,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AAYvC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAErD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAC5D;;;OAGG;IACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC,MAAM,EAAE,CAAC;AAKZ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,+CAA+C;IAC/C,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IAC1C;;;;OAIG;IACH,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;CACxB,CAAC;KACD,MAAM,EAAE,CAAC;AAKZ;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAoB;IACpD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAe,EAAE;QAChD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,GAAG,GAAG,CAAC;QAChD,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,UAA6B;IAC3D,OAAO;QACL,UAAU;QACV,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC;KAC/D,CAAC;AACJ,CAAC"}
|