@codyswann/lisa 2.273.0 → 2.275.0
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/cli/doctor-readiness-journey-freshness.d.ts +36 -0
- package/dist/cli/doctor-readiness-journey-freshness.d.ts.map +1 -0
- package/dist/cli/doctor-readiness-journey-freshness.js +166 -0
- package/dist/cli/doctor-readiness-journey-freshness.js.map +1 -0
- package/dist/cli/doctor-readiness-journey.d.ts +110 -0
- package/dist/cli/doctor-readiness-journey.d.ts.map +1 -0
- package/dist/cli/doctor-readiness-journey.js +233 -0
- package/dist/cli/doctor-readiness-journey.js.map +1 -0
- package/dist/cli/doctor-readiness.d.ts.map +1 -1
- package/dist/cli/doctor-readiness.js +25 -5
- package/dist/cli/doctor-readiness.js.map +1 -1
- package/dist/cli/doctor-worker-epoch.d.ts +5 -0
- package/dist/cli/doctor-worker-epoch.d.ts.map +1 -1
- package/dist/cli/doctor-worker-epoch.js +10 -134
- package/dist/cli/doctor-worker-epoch.js.map +1 -1
- package/dist/cli/doctor-worker-journey.d.ts +118 -0
- package/dist/cli/doctor-worker-journey.d.ts.map +1 -0
- package/dist/cli/doctor-worker-journey.js +222 -0
- package/dist/cli/doctor-worker-journey.js.map +1 -0
- package/dist/cli/health-cmd.d.ts +31 -0
- package/dist/cli/health-cmd.d.ts.map +1 -0
- package/dist/cli/health-cmd.js +101 -0
- package/dist/cli/health-cmd.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +20 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +30 -1
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/dist/health/agentic.d.ts +2 -0
- package/dist/health/agentic.d.ts.map +1 -1
- package/dist/health/agentic.js +4 -4
- package/dist/health/agentic.js.map +1 -1
- package/dist/health/consumer.d.ts +28 -0
- package/dist/health/consumer.d.ts.map +1 -0
- package/dist/health/consumer.js +50 -0
- package/dist/health/consumer.js.map +1 -0
- package/dist/health/evaluation-protocol.d.ts +45 -0
- package/dist/health/evaluation-protocol.d.ts.map +1 -0
- package/dist/health/evaluation-protocol.js +119 -0
- package/dist/health/evaluation-protocol.js.map +1 -0
- package/dist/health/index.d.ts +3 -0
- package/dist/health/index.d.ts.map +1 -1
- package/dist/health/index.js +3 -0
- package/dist/health/index.js.map +1 -1
- package/dist/health/prepare.d.ts +15 -0
- package/dist/health/prepare.d.ts.map +1 -0
- package/dist/health/prepare.js +31 -0
- package/dist/health/prepare.js.map +1 -0
- package/dist/health/storage.d.ts +8 -0
- package/dist/health/storage.d.ts.map +1 -1
- package/dist/health/storage.js +13 -3
- package/dist/health/storage.js.map +1 -1
- package/package.json +3 -2
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-health/SKILL.md +142 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-health/agents/openai.yaml +4 -0
- package/plugins/lisa/commands/health.md +8 -0
- package/plugins/lisa/skills/lisa-health/SKILL.md +142 -0
- package/plugins/lisa/skills/lisa-health/agents/openai.yaml +4 -0
- package/plugins/lisa-agy/commands/lisa/health.md +8 -0
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/lisa-health/SKILL.md +142 -0
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/commands/lisa/health.md +8 -0
- package/plugins/lisa-copilot/skills/lisa-health/SKILL.md +142 -0
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/commands/lisa/health.md +8 -0
- package/plugins/lisa-cursor/skills/lisa-health/SKILL.md +142 -0
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/src/base/commands/health.md +8 -0
- package/plugins/src/base/skills/lisa-health/SKILL.md +142 -0
- package/scripts/verify-health-consumer-built.mjs +239 -0
- package/ui/README.md +16 -12
package/dist/health/agentic.d.ts
CHANGED
|
@@ -65,6 +65,8 @@ export interface AgenticHealthConfig {
|
|
|
65
65
|
export interface HealthOptions extends DeterministicHealthOptions {
|
|
66
66
|
readonly agentic?: AgenticHealthConfig;
|
|
67
67
|
}
|
|
68
|
+
/** Validate the evaluator's exact closed result union atomically. */
|
|
69
|
+
export declare function validateAgenticHealthEvaluation(candidate: unknown): AgenticHealthEvaluation;
|
|
68
70
|
/**
|
|
69
71
|
* Run deterministic health and, only when explicitly enabled and available,
|
|
70
72
|
* compose one bounded optional agentic review. Collection never persists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentic.d.ts","sourceRoot":"","sources":["../../src/health/agentic.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oBAAoB,CAAC;AAqC5B,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,wBAAwB,GACxB,eAAe,GACf,UAAU,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,iFAAiF;AACjF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,SAAS,aAAa,EAAE,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE;YAChB,QAAQ,CAAC,QAAQ,EAAE;gBACjB,QAAQ,CAAC,IAAI,EAAE;oBAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;iBAAE,CAAC;aACrD,CAAC;SACH,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACtD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAC/B;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACtD,GACD;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC;AAEvC;;;;;;;GAOG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,WAAW,KAChB,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAEtC,oDAAoD;AACpD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAc,SAAQ,0BAA0B;IAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CACxC;
|
|
1
|
+
{"version":3,"file":"agentic.d.ts","sourceRoot":"","sources":["../../src/health/agentic.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oBAAoB,CAAC;AAqC5B,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,wBAAwB,GACxB,eAAe,GACf,UAAU,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,iFAAiF;AACjF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,qBAAqB,EAAE,SAAS,aAAa,EAAE,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE;YAChB,QAAQ,CAAC,QAAQ,EAAE;gBACjB,QAAQ,CAAC,IAAI,EAAE;oBAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;iBAAE,CAAC;aACrD,CAAC;SACH,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACtD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAC/B;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACtD,GACD;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC;AAEvC;;;;;;;GAOG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,WAAW,KAChB,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAEtC,oDAAoD;AACpD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAc,SAAQ,0BAA0B;IAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CACxC;AAmQD,qEAAqE;AACrE,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,OAAO,GACjB,uBAAuB,CAwCzB;AAqED;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAiDvB"}
|
package/dist/health/agentic.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** Optional, read-only agentic Health composition over deterministic facts. */
|
|
2
|
-
/* eslint-disable functional/immutable-data, functional/no-let, jsdoc/require-param, jsdoc/require-
|
|
2
|
+
/* eslint-disable functional/immutable-data, functional/no-let, jsdoc/require-param, jsdoc/require-returns, max-lines -- one auditable hostile boundary stays cohesive */
|
|
3
3
|
import { lstat, readdir, realpath } from "node:fs/promises";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import { isProxy } from "node:util/types";
|
|
@@ -219,7 +219,7 @@ function validateJudgment(candidate, index) {
|
|
|
219
219
|
return Object.freeze({ check, reason });
|
|
220
220
|
}
|
|
221
221
|
/** Validate the evaluator's exact closed result union atomically. */
|
|
222
|
-
function
|
|
222
|
+
export function validateAgenticHealthEvaluation(candidate) {
|
|
223
223
|
if (candidate === null ||
|
|
224
224
|
typeof candidate !== "object" ||
|
|
225
225
|
isProxy(candidate)) {
|
|
@@ -311,7 +311,7 @@ export async function runHealth(projectPath, options = {}) {
|
|
|
311
311
|
return deterministic;
|
|
312
312
|
const [config, artifacts] = evidence;
|
|
313
313
|
const request = evaluatorRequest(deterministic, config, artifacts);
|
|
314
|
-
const evaluation = await deadline.run(async () =>
|
|
314
|
+
const evaluation = await deadline.run(async () => validateAgenticHealthEvaluation(await agentic.evaluator(request, deadline.signal)), undefined);
|
|
315
315
|
if (evaluation === undefined || evaluation.status === "unavailable") {
|
|
316
316
|
return deterministic;
|
|
317
317
|
}
|
|
@@ -324,5 +324,5 @@ export async function runHealth(projectPath, options = {}) {
|
|
|
324
324
|
deadline.close();
|
|
325
325
|
}
|
|
326
326
|
}
|
|
327
|
-
/* eslint-enable functional/immutable-data, functional/no-let, jsdoc/require-param, jsdoc/require-
|
|
327
|
+
/* eslint-enable functional/immutable-data, functional/no-let, jsdoc/require-param, jsdoc/require-returns, max-lines -- restore repository defaults */
|
|
328
328
|
//# sourceMappingURL=agentic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentic.js","sourceRoot":"","sources":["../../src/health/agentic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agentic.js","sourceRoot":"","sources":["../../src/health/agentic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type HealthResult } from "./contract.js";
|
|
2
|
+
import type { DeterministicHealthOptions } from "./deterministic.js";
|
|
3
|
+
import { type HealthWriteResult } from "./storage.js";
|
|
4
|
+
/** Optional agentic response supplied by the current harness. */
|
|
5
|
+
export interface PersistedHealthAgenticOptions {
|
|
6
|
+
readonly enabled: boolean;
|
|
7
|
+
readonly response?: unknown;
|
|
8
|
+
readonly timeoutMs?: number;
|
|
9
|
+
}
|
|
10
|
+
/** Deterministic controls plus one optional hostile response envelope. */
|
|
11
|
+
export interface PersistedHealthOptions extends DeterministicHealthOptions {
|
|
12
|
+
readonly agentic?: PersistedHealthAgenticOptions;
|
|
13
|
+
}
|
|
14
|
+
/** Final stored result and the exact bytes consumers must emit. */
|
|
15
|
+
export interface PersistedHealthRun {
|
|
16
|
+
readonly writeOutcome: HealthWriteResult;
|
|
17
|
+
readonly result: HealthResult;
|
|
18
|
+
readonly serialized: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Re-run composition against current facts and persist exactly its final result.
|
|
22
|
+
* Missing, malformed, unavailable, or stale responses degrade deterministically.
|
|
23
|
+
* @param projectPath - Project to inspect and persist
|
|
24
|
+
* @param options - Deterministic controls and optional harness response
|
|
25
|
+
* @returns Stored result, storage outcome, and exact canonical result bytes
|
|
26
|
+
*/
|
|
27
|
+
export declare function runPersistedHealth(projectPath: string, options?: PersistedHealthOptions): Promise<PersistedHealthRun>;
|
|
28
|
+
//# sourceMappingURL=consumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../../src/health/consumer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,eAAe,CAAC;AACxE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAKrE,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,cAAc,CAAC;AAEtB,iEAAiE;AACjE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,0EAA0E;AAC1E,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,QAAQ,CAAC,OAAO,CAAC,EAAE,6BAA6B,CAAC;CAClD;AAED,mEAAmE;AACnE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAkBD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,kBAAkB,CAAC,CA8B7B"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/** One-write Health composition and persistence consumer. */
|
|
2
|
+
import { runHealth } from "./agentic.js";
|
|
3
|
+
import { validateHealthResult } from "./contract.js";
|
|
4
|
+
import { evaluationForHealthRequest, resolveHealthProtocolProjectRoot, } from "./evaluation-protocol.js";
|
|
5
|
+
import { serializeHealthResult, writeLatestHealthResult, } from "./storage.js";
|
|
6
|
+
/**
|
|
7
|
+
* Build the digest-checking evaluator used only during final composition.
|
|
8
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
9
|
+
* @param response - Untrusted harness response envelope
|
|
10
|
+
* @returns Evaluator that releases only a request-bound response
|
|
11
|
+
*/
|
|
12
|
+
function boundEvaluator(canonicalProjectRoot, response) {
|
|
13
|
+
return (request, _signal) => Promise.resolve(evaluationForHealthRequest(canonicalProjectRoot, request, response));
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Re-run composition against current facts and persist exactly its final result.
|
|
17
|
+
* Missing, malformed, unavailable, or stale responses degrade deterministically.
|
|
18
|
+
* @param projectPath - Project to inspect and persist
|
|
19
|
+
* @param options - Deterministic controls and optional harness response
|
|
20
|
+
* @returns Stored result, storage outcome, and exact canonical result bytes
|
|
21
|
+
*/
|
|
22
|
+
export async function runPersistedHealth(projectPath, options = {}) {
|
|
23
|
+
const { agentic, ...deterministicOptions } = options;
|
|
24
|
+
const root = await resolveHealthProtocolProjectRoot(projectPath);
|
|
25
|
+
const evaluator = agentic?.response === undefined
|
|
26
|
+
? undefined
|
|
27
|
+
: boundEvaluator(root, agentic.response);
|
|
28
|
+
const composed = validateHealthResult(await runHealth(root, {
|
|
29
|
+
...deterministicOptions,
|
|
30
|
+
...(agentic === undefined
|
|
31
|
+
? {}
|
|
32
|
+
: {
|
|
33
|
+
agentic: {
|
|
34
|
+
enabled: agentic.enabled,
|
|
35
|
+
...(evaluator === undefined ? {} : { evaluator }),
|
|
36
|
+
...(agentic.timeoutMs === undefined
|
|
37
|
+
? {}
|
|
38
|
+
: { timeoutMs: agentic.timeoutMs }),
|
|
39
|
+
},
|
|
40
|
+
}),
|
|
41
|
+
}));
|
|
42
|
+
const writeOutcome = await writeLatestHealthResult(root, composed);
|
|
43
|
+
const result = writeOutcome.result;
|
|
44
|
+
return Object.freeze({
|
|
45
|
+
writeOutcome,
|
|
46
|
+
result,
|
|
47
|
+
serialized: serializeHealthResult(result),
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=consumer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../src/health/consumer.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,EAA+B,SAAS,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAqB,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EAErB,uBAAuB,GACxB,MAAM,cAAc,CAAC;AAqBtB;;;;;GAKG;AACH,SAAS,cAAc,CACrB,oBAA4B,EAC5B,QAAiB;IAEjB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAC1B,OAAO,CAAC,OAAO,CACb,0BAA0B,CAAC,oBAAoB,EAAE,OAAO,EAAE,QAAQ,CAAC,CACpE,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAmB,EACnB,UAAkC,EAAE;IAEpC,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,EAAE,GAAG,OAAO,CAAC;IACrD,MAAM,IAAI,GAAG,MAAM,gCAAgC,CAAC,WAAW,CAAC,CAAC;IACjE,MAAM,SAAS,GACb,OAAO,EAAE,QAAQ,KAAK,SAAS;QAC7B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,oBAAoB,CACnC,MAAM,SAAS,CAAC,IAAI,EAAE;QACpB,GAAG,oBAAoB;QACvB,GAAG,CAAC,OAAO,KAAK,SAAS;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,OAAO,EAAE;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;oBACjD,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;wBACjC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;iBACtC;aACF,CAAC;KACP,CAAC,CACH,CAAC;IACF,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,YAAY;QACZ,MAAM;QACN,UAAU,EAAE,qBAAqB,CAAC,MAAM,CAAC;KAC1C,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { type AgenticHealthEvaluation, type AgenticHealthRequest } from "./agentic.js";
|
|
2
|
+
export declare const HEALTH_EVALUATION_PROTOCOL_VERSION: 1;
|
|
3
|
+
export declare const MAX_HEALTH_EVALUATION_REQUEST_BYTES: number;
|
|
4
|
+
export declare const MAX_HEALTH_EVALUATION_RESPONSE_BYTES: number;
|
|
5
|
+
/** Bounded request emitted for judgment by the current harness. */
|
|
6
|
+
export interface HealthEvaluationRequestEnvelope {
|
|
7
|
+
readonly protocolVersion: typeof HEALTH_EVALUATION_PROTOCOL_VERSION;
|
|
8
|
+
readonly requestDigest: string;
|
|
9
|
+
readonly request: AgenticHealthRequest;
|
|
10
|
+
}
|
|
11
|
+
/** Hostile response accepted back from the current harness. */
|
|
12
|
+
export interface HealthEvaluationResponseEnvelope {
|
|
13
|
+
readonly protocolVersion: typeof HEALTH_EVALUATION_PROTOCOL_VERSION;
|
|
14
|
+
readonly requestDigest: string;
|
|
15
|
+
readonly evaluation: AgenticHealthEvaluation;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Resolve the digest's canonical project identity without following aliases.
|
|
19
|
+
* @param projectPath - Project path supplied by the consumer
|
|
20
|
+
* @returns Canonical real directory path used by the protocol digest
|
|
21
|
+
*/
|
|
22
|
+
export declare function resolveHealthProtocolProjectRoot(projectPath: string): Promise<string>;
|
|
23
|
+
/**
|
|
24
|
+
* Create a bounded envelope for the captured request.
|
|
25
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
26
|
+
* @param request - Request produced by the shipped composition API
|
|
27
|
+
* @returns Frozen bounded transport envelope
|
|
28
|
+
*/
|
|
29
|
+
export declare function createHealthEvaluationRequestEnvelope(canonicalProjectRoot: string, request: AgenticHealthRequest): HealthEvaluationRequestEnvelope;
|
|
30
|
+
/**
|
|
31
|
+
* Serialize a prepare envelope for harness transport.
|
|
32
|
+
* @param envelope - Request envelope returned by prepare
|
|
33
|
+
* @returns Pretty canonical JSON with a trailing newline
|
|
34
|
+
*/
|
|
35
|
+
export declare function serializeHealthEvaluationRequest(envelope: HealthEvaluationRequestEnvelope): string;
|
|
36
|
+
/**
|
|
37
|
+
* Return a response only when it is bound to this exact project and request.
|
|
38
|
+
* A stale digest is an unavailable evaluation, never a judgment on new facts.
|
|
39
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
40
|
+
* @param request - Current request produced during final composition
|
|
41
|
+
* @param candidate - Untrusted harness response
|
|
42
|
+
* @returns Valid evaluation, or unavailable when its digest is stale
|
|
43
|
+
*/
|
|
44
|
+
export declare function evaluationForHealthRequest(canonicalProjectRoot: string, request: AgenticHealthRequest, candidate: unknown): AgenticHealthEvaluation;
|
|
45
|
+
//# sourceMappingURL=evaluation-protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluation-protocol.d.ts","sourceRoot":"","sources":["../../src/health/evaluation-protocol.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAE1B,MAAM,cAAc,CAAC;AAMtB,eAAO,MAAM,kCAAkC,EAAG,CAAU,CAAC;AAC7D,eAAO,MAAM,mCAAmC,QAAc,CAAC;AAC/D,eAAO,MAAM,oCAAoC,QAAa,CAAC;AAQ/D,mEAAmE;AACnE,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,eAAe,EAAE,OAAO,kCAAkC,CAAC;IACpE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;CACxC;AAED,+DAA+D;AAC/D,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,eAAe,EAAE,OAAO,kCAAkC,CAAC;IACpE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAyBD;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACnD,oBAAoB,EAAE,MAAM,EAC5B,OAAO,EAAE,oBAAoB,GAC5B,+BAA+B,CAYjC;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,+BAA+B,GACxC,MAAM,CAQR;AAqCD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,oBAAoB,EAAE,MAAM,EAC5B,OAAO,EAAE,oBAAoB,EAC7B,SAAS,EAAE,OAAO,GACjB,uBAAuB,CASzB"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/** Digest-bound wire protocol for out-of-process Health evaluation. */
|
|
2
|
+
import { createHash, timingSafeEqual } from "node:crypto";
|
|
3
|
+
import { lstat, realpath } from "node:fs/promises";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { validateAgenticHealthEvaluation, } from "./agentic.js";
|
|
6
|
+
import { readStrictProperty as read, requireStrictRecord, } from "./strict-validation.js";
|
|
7
|
+
export const HEALTH_EVALUATION_PROTOCOL_VERSION = 1;
|
|
8
|
+
export const MAX_HEALTH_EVALUATION_REQUEST_BYTES = 1024 * 1024;
|
|
9
|
+
export const MAX_HEALTH_EVALUATION_RESPONSE_BYTES = 128 * 1024;
|
|
10
|
+
const PROTOCOL_DOMAIN = "lisa-health-evaluation";
|
|
11
|
+
const SHA256_HEX = /^[a-f0-9]{64}$/u;
|
|
12
|
+
const UNAVAILABLE_EVALUATION = Object.freeze({
|
|
13
|
+
status: "unavailable",
|
|
14
|
+
});
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the digest's canonical project identity without following aliases.
|
|
17
|
+
* @param projectPath - Project path supplied by the consumer
|
|
18
|
+
* @returns Canonical real directory path used by the protocol digest
|
|
19
|
+
*/
|
|
20
|
+
export async function resolveHealthProtocolProjectRoot(projectPath) {
|
|
21
|
+
const root = await realpath(path.resolve(projectPath));
|
|
22
|
+
if (!(await lstat(root)).isDirectory()) {
|
|
23
|
+
throw new Error("Health project root is not a directory");
|
|
24
|
+
}
|
|
25
|
+
return root;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Hash the protocol version, canonical root, and exact evaluator request.
|
|
29
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
30
|
+
* @param request - Request produced by the shipped composition API
|
|
31
|
+
* @returns Lowercase SHA-256 hex digest
|
|
32
|
+
*/
|
|
33
|
+
function requestDigest(canonicalProjectRoot, request) {
|
|
34
|
+
return createHash("sha256")
|
|
35
|
+
.update(JSON.stringify({
|
|
36
|
+
protocol: PROTOCOL_DOMAIN,
|
|
37
|
+
protocolVersion: HEALTH_EVALUATION_PROTOCOL_VERSION,
|
|
38
|
+
projectRoot: canonicalProjectRoot,
|
|
39
|
+
request,
|
|
40
|
+
}), "utf8")
|
|
41
|
+
.digest("hex");
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Create a bounded envelope for the captured request.
|
|
45
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
46
|
+
* @param request - Request produced by the shipped composition API
|
|
47
|
+
* @returns Frozen bounded transport envelope
|
|
48
|
+
*/
|
|
49
|
+
export function createHealthEvaluationRequestEnvelope(canonicalProjectRoot, request) {
|
|
50
|
+
const envelope = Object.freeze({
|
|
51
|
+
protocolVersion: HEALTH_EVALUATION_PROTOCOL_VERSION,
|
|
52
|
+
requestDigest: requestDigest(canonicalProjectRoot, request),
|
|
53
|
+
request,
|
|
54
|
+
});
|
|
55
|
+
assertSerializedBound(JSON.stringify(envelope), MAX_HEALTH_EVALUATION_REQUEST_BYTES, "Health evaluation request");
|
|
56
|
+
return envelope;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Serialize a prepare envelope for harness transport.
|
|
60
|
+
* @param envelope - Request envelope returned by prepare
|
|
61
|
+
* @returns Pretty canonical JSON with a trailing newline
|
|
62
|
+
*/
|
|
63
|
+
export function serializeHealthEvaluationRequest(envelope) {
|
|
64
|
+
const serialized = `${JSON.stringify(envelope, null, 2)}\n`;
|
|
65
|
+
assertSerializedBound(serialized, MAX_HEALTH_EVALUATION_REQUEST_BYTES, "Health evaluation request");
|
|
66
|
+
return serialized;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Validate a response envelope without trusting accessors or extra fields.
|
|
70
|
+
* @param candidate - Untrusted harness response
|
|
71
|
+
* @returns Detached validated response envelope
|
|
72
|
+
*/
|
|
73
|
+
function validateResponseEnvelope(candidate) {
|
|
74
|
+
const input = requireStrictRecord(candidate, ["protocolVersion", "requestDigest", "evaluation"], "health evaluation response");
|
|
75
|
+
const protocolVersion = read(input, "protocolVersion");
|
|
76
|
+
if (protocolVersion !== HEALTH_EVALUATION_PROTOCOL_VERSION) {
|
|
77
|
+
throw new Error("Unsupported health evaluation protocol version");
|
|
78
|
+
}
|
|
79
|
+
const digest = read(input, "requestDigest");
|
|
80
|
+
if (typeof digest !== "string" || !SHA256_HEX.test(digest)) {
|
|
81
|
+
throw new Error("Invalid health evaluation request digest");
|
|
82
|
+
}
|
|
83
|
+
const evaluation = validateAgenticHealthEvaluation(read(input, "evaluation"));
|
|
84
|
+
const envelope = Object.freeze({
|
|
85
|
+
protocolVersion,
|
|
86
|
+
requestDigest: digest,
|
|
87
|
+
evaluation,
|
|
88
|
+
});
|
|
89
|
+
assertSerializedBound(JSON.stringify(envelope), MAX_HEALTH_EVALUATION_RESPONSE_BYTES, "Health evaluation response");
|
|
90
|
+
return envelope;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Return a response only when it is bound to this exact project and request.
|
|
94
|
+
* A stale digest is an unavailable evaluation, never a judgment on new facts.
|
|
95
|
+
* @param canonicalProjectRoot - Canonical project identity
|
|
96
|
+
* @param request - Current request produced during final composition
|
|
97
|
+
* @param candidate - Untrusted harness response
|
|
98
|
+
* @returns Valid evaluation, or unavailable when its digest is stale
|
|
99
|
+
*/
|
|
100
|
+
export function evaluationForHealthRequest(canonicalProjectRoot, request, candidate) {
|
|
101
|
+
const response = validateResponseEnvelope(candidate);
|
|
102
|
+
const expected = Buffer.from(requestDigest(canonicalProjectRoot, request), "hex");
|
|
103
|
+
const actual = Buffer.from(response.requestDigest, "hex");
|
|
104
|
+
if (!timingSafeEqual(expected, actual))
|
|
105
|
+
return UNAVAILABLE_EVALUATION;
|
|
106
|
+
return response.evaluation;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Reject transport payloads beyond their public byte budgets.
|
|
110
|
+
* @param serialized - Canonical transport payload
|
|
111
|
+
* @param maximumBytes - Public byte budget
|
|
112
|
+
* @param label - Operator-readable payload name
|
|
113
|
+
*/
|
|
114
|
+
function assertSerializedBound(serialized, maximumBytes, label) {
|
|
115
|
+
if (Buffer.byteLength(serialized, "utf8") > maximumBytes) {
|
|
116
|
+
throw new Error(`${label} exceeds byte limit`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=evaluation-protocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluation-protocol.js","sourceRoot":"","sources":["../../src/health/evaluation-protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/health/index.d.ts
CHANGED
|
@@ -2,4 +2,7 @@ export * from "./contract.js";
|
|
|
2
2
|
export * from "./agentic.js";
|
|
3
3
|
export * from "./deterministic.js";
|
|
4
4
|
export * from "./storage.js";
|
|
5
|
+
export * from "./evaluation-protocol.js";
|
|
6
|
+
export * from "./prepare.js";
|
|
7
|
+
export * from "./consumer.js";
|
|
5
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/health/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/health/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
package/dist/health/index.js
CHANGED
|
@@ -2,4 +2,7 @@ export * from "./contract.js";
|
|
|
2
2
|
export * from "./agentic.js";
|
|
3
3
|
export * from "./deterministic.js";
|
|
4
4
|
export * from "./storage.js";
|
|
5
|
+
export * from "./evaluation-protocol.js";
|
|
6
|
+
export * from "./prepare.js";
|
|
7
|
+
export * from "./consumer.js";
|
|
5
8
|
//# sourceMappingURL=index.js.map
|
package/dist/health/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/health/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/health/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { DeterministicHealthOptions } from "./deterministic.js";
|
|
2
|
+
import { type HealthEvaluationRequestEnvelope } from "./evaluation-protocol.js";
|
|
3
|
+
/** Deterministic controls shared by prepare and final composition. */
|
|
4
|
+
export interface PrepareHealthEvaluationOptions extends DeterministicHealthOptions {
|
|
5
|
+
readonly timeoutMs?: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Capture the bounded request produced by `runHealth` without persisting its
|
|
9
|
+
* deterministic intermediate. Undefined means evidence preparation degraded.
|
|
10
|
+
* @param projectPath - Project to inspect
|
|
11
|
+
* @param options - Deterministic controls and optional evaluator deadline
|
|
12
|
+
* @returns Digest-bound request envelope, or undefined on safe degradation
|
|
13
|
+
*/
|
|
14
|
+
export declare function prepareHealthEvaluation(projectPath: string, options?: PrepareHealthEvaluationOptions): Promise<HealthEvaluationRequestEnvelope | undefined>;
|
|
15
|
+
//# sourceMappingURL=prepare.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/health/prepare.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAEL,KAAK,+BAA+B,EAErC,MAAM,0BAA0B,CAAC;AAElC,sEAAsE;AACtE,MAAM,WAAW,8BAA+B,SAAQ,0BAA0B;IAChF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,+BAA+B,GAAG,SAAS,CAAC,CAmBtD"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** Storage-free prepare phase for current-harness Health evaluation. */
|
|
2
|
+
import { runHealth } from "./agentic.js";
|
|
3
|
+
import { createHealthEvaluationRequestEnvelope, resolveHealthProtocolProjectRoot, } from "./evaluation-protocol.js";
|
|
4
|
+
/**
|
|
5
|
+
* Capture the bounded request produced by `runHealth` without persisting its
|
|
6
|
+
* deterministic intermediate. Undefined means evidence preparation degraded.
|
|
7
|
+
* @param projectPath - Project to inspect
|
|
8
|
+
* @param options - Deterministic controls and optional evaluator deadline
|
|
9
|
+
* @returns Digest-bound request envelope, or undefined on safe degradation
|
|
10
|
+
*/
|
|
11
|
+
export async function prepareHealthEvaluation(projectPath, options = {}) {
|
|
12
|
+
const root = await resolveHealthProtocolProjectRoot(projectPath);
|
|
13
|
+
const { timeoutMs, ...deterministicOptions } = options;
|
|
14
|
+
// eslint-disable-next-line functional/no-let -- callback capture is the prepare protocol boundary
|
|
15
|
+
let captured;
|
|
16
|
+
await runHealth(root, {
|
|
17
|
+
...deterministicOptions,
|
|
18
|
+
agentic: {
|
|
19
|
+
enabled: true,
|
|
20
|
+
...(timeoutMs === undefined ? {} : { timeoutMs }),
|
|
21
|
+
evaluator: request => {
|
|
22
|
+
captured = request;
|
|
23
|
+
return Promise.resolve(Object.freeze({ status: "unavailable" }));
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
return captured === undefined
|
|
28
|
+
? undefined
|
|
29
|
+
: createHealthEvaluationRequestEnvelope(root, captured);
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=prepare.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/health/prepare.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,OAAO,EAA6B,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,EACL,qCAAqC,EAErC,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAOlC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,UAA0C,EAAE;IAE5C,MAAM,IAAI,GAAG,MAAM,gCAAgC,CAAC,WAAW,CAAC,CAAC;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,oBAAoB,EAAE,GAAG,OAAO,CAAC;IACvD,kGAAkG;IAClG,IAAI,QAA0C,CAAC;IAC/C,MAAM,SAAS,CAAC,IAAI,EAAE;QACpB,GAAG,oBAAoB;QACvB,OAAO,EAAE;YACP,OAAO,EAAE,IAAI;YACb,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;YACjD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACnB,QAAQ,GAAG,OAAO,CAAC;gBACnB,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC;SACF;KACF,CAAC,CAAC;IACH,OAAO,QAAQ,KAAK,SAAS;QAC3B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,qCAAqC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC5D,CAAC"}
|
package/dist/health/storage.d.ts
CHANGED
|
@@ -36,4 +36,12 @@ export declare function readLatestHealthResult(projectRoot: string): Promise<Hea
|
|
|
36
36
|
* @returns Written or monotonic unchanged outcome
|
|
37
37
|
*/
|
|
38
38
|
export declare function writeLatestHealthResult(projectRoot: string, candidate: unknown): Promise<HealthWriteResult>;
|
|
39
|
+
/**
|
|
40
|
+
* Validate and serialize one Health v1 result using the storage wire format.
|
|
41
|
+
* Consumers use this function so emitted bytes cannot drift from persisted
|
|
42
|
+
* bytes.
|
|
43
|
+
* @param candidate - Untrusted completed result candidate
|
|
44
|
+
* @returns Canonical bounded JSON payload, including its trailing newline
|
|
45
|
+
*/
|
|
46
|
+
export declare function serializeHealthResult(candidate: unknown): string;
|
|
39
47
|
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/health/storage.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,eAAe,CAAC;AAGxE,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAC7D,eAAO,MAAM,uBAAuB,QAAa,CAAC;AAElD,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,GACD;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B,CAAC;AAEN;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAkB3B;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/health/storage.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,eAAe,CAAC;AAGxE,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAC7D,eAAO,MAAM,uBAAuB,QAAa,CAAC;AAElD,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,GACD;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B,CAAC;AAEN;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAkB3B;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,iBAAiB,CAAC,CA6C5B;AAeD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAEhE"}
|
package/dist/health/storage.js
CHANGED
|
@@ -42,13 +42,13 @@ export async function readLatestHealthResult(projectRoot) {
|
|
|
42
42
|
*/
|
|
43
43
|
export async function writeLatestHealthResult(projectRoot, candidate) {
|
|
44
44
|
const result = validateHealthResult(candidate);
|
|
45
|
-
const serialized =
|
|
45
|
+
const serialized = serializeValidatedHealthResult(result);
|
|
46
46
|
const { directory, target } = await resolveWriteTarget(projectRoot);
|
|
47
47
|
return withFileTargetLock(target, async () => {
|
|
48
48
|
await assertSafeTarget(target);
|
|
49
49
|
const current = await readLatestHealthResult(projectRoot);
|
|
50
50
|
if (current.status === "available") {
|
|
51
|
-
const samePayload =
|
|
51
|
+
const samePayload = serializeValidatedHealthResult(current.result) === serialized;
|
|
52
52
|
if (current.result.runId === result.runId) {
|
|
53
53
|
if (!samePayload) {
|
|
54
54
|
throw new Error("Health result conflict: runId was reused");
|
|
@@ -87,13 +87,23 @@ export async function writeLatestHealthResult(projectRoot, candidate) {
|
|
|
87
87
|
* @param result - Validated result
|
|
88
88
|
* @returns Canonical bounded JSON payload
|
|
89
89
|
*/
|
|
90
|
-
function
|
|
90
|
+
function serializeValidatedHealthResult(result) {
|
|
91
91
|
const serialized = `${JSON.stringify(result, null, 2)}\n`;
|
|
92
92
|
if (Buffer.byteLength(serialized, "utf8") > MAX_HEALTH_RESULT_BYTES) {
|
|
93
93
|
throw new Error("Health result exceeds 256 KiB");
|
|
94
94
|
}
|
|
95
95
|
return serialized;
|
|
96
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Validate and serialize one Health v1 result using the storage wire format.
|
|
99
|
+
* Consumers use this function so emitted bytes cannot drift from persisted
|
|
100
|
+
* bytes.
|
|
101
|
+
* @param candidate - Untrusted completed result candidate
|
|
102
|
+
* @returns Canonical bounded JSON payload, including its trailing newline
|
|
103
|
+
*/
|
|
104
|
+
export function serializeHealthResult(candidate) {
|
|
105
|
+
return serializeValidatedHealthResult(validateHealthResult(candidate));
|
|
106
|
+
}
|
|
97
107
|
/**
|
|
98
108
|
* Return the canonical idempotent no-write result.
|
|
99
109
|
* @param target - Canonical result path
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/health/storage.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAqB,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC;AAC7D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,GAAG,IAAI,CAAC;AAyBlD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;QAC9C,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,WAAW;YACnB,MAAM;YACN,OAAO,EAAE,MAAM,CAAC,WAAW;SAC5B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,SAAkB;IAElB,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/health/storage.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -40,7 +40,8 @@
|
|
|
40
40
|
"verify:health-contract": "bun run build:dist && node scripts/verify-health-contract-built.mjs",
|
|
41
41
|
"verify:health-deterministic": "bun run build:dist && node scripts/verify-health-deterministic-built.mjs",
|
|
42
42
|
"verify:learner-frontmatter-built": "bun run build:dist && node scripts/verify-learner-frontmatter-built.mjs",
|
|
43
|
-
"verify:health-agentic": "bun run build:dist && node scripts/verify-health-agentic-built.mjs"
|
|
43
|
+
"verify:health-agentic": "bun run build:dist && node scripts/verify-health-agentic-built.mjs",
|
|
44
|
+
"verify:health-consumer": "bun run build:dist && node scripts/verify-health-consumer-built.mjs"
|
|
44
45
|
},
|
|
45
46
|
"engines": {
|
|
46
47
|
"npm": "please-use-bun",
|
|
@@ -111,7 +112,7 @@
|
|
|
111
112
|
"brace-expansion": ">=5.0.6"
|
|
112
113
|
},
|
|
113
114
|
"name": "@codyswann/lisa",
|
|
114
|
-
"version": "2.
|
|
115
|
+
"version": "2.275.0",
|
|
115
116
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
116
117
|
"main": "dist/index.js",
|
|
117
118
|
"exports": {
|