@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.
Files changed (120) hide show
  1. package/dist/cli/doctor-readiness-journey-freshness.d.ts +36 -0
  2. package/dist/cli/doctor-readiness-journey-freshness.d.ts.map +1 -0
  3. package/dist/cli/doctor-readiness-journey-freshness.js +166 -0
  4. package/dist/cli/doctor-readiness-journey-freshness.js.map +1 -0
  5. package/dist/cli/doctor-readiness-journey.d.ts +110 -0
  6. package/dist/cli/doctor-readiness-journey.d.ts.map +1 -0
  7. package/dist/cli/doctor-readiness-journey.js +233 -0
  8. package/dist/cli/doctor-readiness-journey.js.map +1 -0
  9. package/dist/cli/doctor-readiness.d.ts.map +1 -1
  10. package/dist/cli/doctor-readiness.js +25 -5
  11. package/dist/cli/doctor-readiness.js.map +1 -1
  12. package/dist/cli/doctor-worker-epoch.d.ts +5 -0
  13. package/dist/cli/doctor-worker-epoch.d.ts.map +1 -1
  14. package/dist/cli/doctor-worker-epoch.js +10 -134
  15. package/dist/cli/doctor-worker-epoch.js.map +1 -1
  16. package/dist/cli/doctor-worker-journey.d.ts +118 -0
  17. package/dist/cli/doctor-worker-journey.d.ts.map +1 -0
  18. package/dist/cli/doctor-worker-journey.js +222 -0
  19. package/dist/cli/doctor-worker-journey.js.map +1 -0
  20. package/dist/cli/health-cmd.d.ts +31 -0
  21. package/dist/cli/health-cmd.d.ts.map +1 -0
  22. package/dist/cli/health-cmd.js +101 -0
  23. package/dist/cli/health-cmd.js.map +1 -0
  24. package/dist/cli/index.d.ts +3 -0
  25. package/dist/cli/index.d.ts.map +1 -1
  26. package/dist/cli/index.js +20 -1
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  29. package/dist/core/upstream-evidence-manifest.js +30 -1
  30. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  31. package/dist/health/agentic.d.ts +2 -0
  32. package/dist/health/agentic.d.ts.map +1 -1
  33. package/dist/health/agentic.js +4 -4
  34. package/dist/health/agentic.js.map +1 -1
  35. package/dist/health/consumer.d.ts +28 -0
  36. package/dist/health/consumer.d.ts.map +1 -0
  37. package/dist/health/consumer.js +50 -0
  38. package/dist/health/consumer.js.map +1 -0
  39. package/dist/health/evaluation-protocol.d.ts +45 -0
  40. package/dist/health/evaluation-protocol.d.ts.map +1 -0
  41. package/dist/health/evaluation-protocol.js +119 -0
  42. package/dist/health/evaluation-protocol.js.map +1 -0
  43. package/dist/health/index.d.ts +3 -0
  44. package/dist/health/index.d.ts.map +1 -1
  45. package/dist/health/index.js +3 -0
  46. package/dist/health/index.js.map +1 -1
  47. package/dist/health/prepare.d.ts +15 -0
  48. package/dist/health/prepare.d.ts.map +1 -0
  49. package/dist/health/prepare.js +31 -0
  50. package/dist/health/prepare.js.map +1 -0
  51. package/dist/health/storage.d.ts +8 -0
  52. package/dist/health/storage.d.ts.map +1 -1
  53. package/dist/health/storage.js +13 -3
  54. package/dist/health/storage.js.map +1 -1
  55. package/package.json +3 -2
  56. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  57. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  58. package/plugins/lisa/.codex-plugin/skills/lisa-health/SKILL.md +142 -0
  59. package/plugins/lisa/.codex-plugin/skills/lisa-health/agents/openai.yaml +4 -0
  60. package/plugins/lisa/commands/health.md +8 -0
  61. package/plugins/lisa/skills/lisa-health/SKILL.md +142 -0
  62. package/plugins/lisa/skills/lisa-health/agents/openai.yaml +4 -0
  63. package/plugins/lisa-agy/commands/lisa/health.md +8 -0
  64. package/plugins/lisa-agy/plugin.json +1 -1
  65. package/plugins/lisa-agy/skills/lisa-health/SKILL.md +142 -0
  66. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  67. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  68. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  69. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  70. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  71. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  72. package/plugins/lisa-copilot/commands/lisa/health.md +8 -0
  73. package/plugins/lisa-copilot/skills/lisa-health/SKILL.md +142 -0
  74. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  75. package/plugins/lisa-cursor/commands/lisa/health.md +8 -0
  76. package/plugins/lisa-cursor/skills/lisa-health/SKILL.md +142 -0
  77. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  78. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  79. package/plugins/lisa-expo-agy/plugin.json +1 -1
  80. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  81. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  82. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  83. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  84. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  85. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  86. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  87. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  88. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  89. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  90. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  91. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  92. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  93. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  94. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  95. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  96. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  97. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  98. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  99. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  100. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  101. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  102. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  103. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  104. package/plugins/lisa-rails-agy/plugin.json +1 -1
  105. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  106. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  107. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  108. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  109. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  110. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  111. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  112. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  113. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  114. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  115. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  116. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  117. package/plugins/src/base/commands/health.md +8 -0
  118. package/plugins/src/base/skills/lisa-health/SKILL.md +142 -0
  119. package/scripts/verify-health-consumer-built.mjs +239 -0
  120. package/ui/README.md +16 -12
@@ -0,0 +1,101 @@
1
+ /** CLI adapter for the shared Health v1 prepare/finalize consumer. */
2
+ import path from "node:path";
3
+ import { HEALTH_EVALUATION_PROTOCOL_VERSION, MAX_HEALTH_EVALUATION_RESPONSE_BYTES, prepareHealthEvaluation, runPersistedHealth, serializeHealthEvaluationRequest, } from "../health/index.js";
4
+ const MAX_EVALUATION_CHUNKS = 1024;
5
+ const DEFAULT_DEPENDENCIES = {
6
+ prepare: prepareHealthEvaluation,
7
+ runPersisted: runPersistedHealth,
8
+ serializeRequest: serializeHealthEvaluationRequest,
9
+ readStdin: async () => readBoundedHealthInput(process.stdin),
10
+ write: payload => process.stdout.write(payload),
11
+ };
12
+ /**
13
+ * Read strict UTF-8 evaluator JSON under the protocol's aggregate bound.
14
+ * @param stream - Standard input or an injected test stream
15
+ * @returns Bounded UTF-8 payload
16
+ */
17
+ export async function readBoundedHealthInput(stream) {
18
+ const chunks = [];
19
+ // eslint-disable-next-line functional/no-let -- bounded stream accounting is iterative
20
+ let totalBytes = 0;
21
+ // eslint-disable-next-line functional/no-let -- bounded stream accounting is iterative
22
+ let chunkCount = 0;
23
+ for await (const rawChunk of stream) {
24
+ chunkCount += 1;
25
+ if (chunkCount > MAX_EVALUATION_CHUNKS) {
26
+ throw new Error("health evaluation contains too many chunks");
27
+ }
28
+ const chunk = Buffer.from(rawChunk);
29
+ totalBytes += chunk.byteLength;
30
+ if (totalBytes > MAX_HEALTH_EVALUATION_RESPONSE_BYTES) {
31
+ throw new Error("health evaluation exceeds 128 KiB");
32
+ }
33
+ // eslint-disable-next-line functional/immutable-data -- bounded local buffering avoids quadratic copies
34
+ chunks.push(chunk);
35
+ }
36
+ return new TextDecoder("utf-8", { fatal: true }).decode(Buffer.concat(chunks, totalBytes));
37
+ }
38
+ /**
39
+ * Run the public Health v1 CLI without reconstructing any result fields.
40
+ * @param projectPath - Optional host-project path
41
+ * @param options - Prepare/finalize mode
42
+ * @param dependencies - Injectable process and health boundaries
43
+ */
44
+ export async function runHealthCli(projectPath, options, dependencies = {}) {
45
+ const deps = { ...DEFAULT_DEPENDENCIES, ...dependencies };
46
+ if (options.prepareAgentic === true && options.agenticEvaluation === true) {
47
+ throw new Error("--prepare-agentic and --agentic-evaluation are mutually exclusive");
48
+ }
49
+ const root = path.resolve(deps.cwd ?? process.cwd(), projectPath ?? ".");
50
+ if (options.prepareAgentic === true) {
51
+ const prepared = await deps.prepare(root);
52
+ deps.write(prepared === undefined
53
+ ? `${JSON.stringify({
54
+ protocolVersion: HEALTH_EVALUATION_PROTOCOL_VERSION,
55
+ status: "unavailable",
56
+ })}\n`
57
+ : deps.serializeRequest(prepared));
58
+ return;
59
+ }
60
+ const response = options.agenticEvaluation === true
61
+ ? await readEvaluationInput(deps.readStdin)
62
+ : undefined;
63
+ const completed = await deps.runPersisted(root, response === undefined
64
+ ? undefined
65
+ : { agentic: { enabled: true, response } });
66
+ deps.write(completed.serialized);
67
+ }
68
+ /**
69
+ * Parse an exact JSON value without echoing hostile input in diagnostics.
70
+ * @param payload - Bounded candidate response
71
+ * @returns Parsed hostile value for the health consumer to validate
72
+ */
73
+ function parseEvaluationInput(payload) {
74
+ if (Buffer.byteLength(payload, "utf8") > MAX_HEALTH_EVALUATION_RESPONSE_BYTES) {
75
+ return payload;
76
+ }
77
+ if (payload.trim() === "") {
78
+ return payload;
79
+ }
80
+ try {
81
+ return JSON.parse(payload);
82
+ }
83
+ catch {
84
+ return payload;
85
+ }
86
+ }
87
+ /**
88
+ * Convert every malformed transport outcome into hostile input for the shared
89
+ * consumer, which degrades it to unavailable and still persists one final run.
90
+ * @param readStdin - Bounded stdin reader
91
+ * @returns Parsed JSON or an invalid sentinel value
92
+ */
93
+ async function readEvaluationInput(readStdin) {
94
+ try {
95
+ return parseEvaluationInput(await readStdin());
96
+ }
97
+ catch {
98
+ return null;
99
+ }
100
+ }
101
+ //# sourceMappingURL=health-cmd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-cmd.js","sourceRoot":"","sources":["../../src/cli/health-cmd.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { runCheckLearningsBudget } from "./check-learnings-budget-cmd.js";
4
4
  import { runCrossPollinate } from "./cross-pollinate-cmd.js";
5
5
  import { runDoctor } from "./doctor.js";
6
6
  import { runFileUpstream } from "./file-upstream-cmd.js";
7
+ import { runHealthCli } from "./health-cmd.js";
7
8
  import { runKaneCli, runKanePilotCli, runKaneProbeCli } from "./kane-cmd.js";
8
9
  import { printUpdateWarning } from "./print-update-warning.js";
9
10
  import { runSetupProject } from "./setup-project.js";
@@ -41,6 +42,8 @@ export interface ProgramDependencies {
41
42
  runCheckLearningsBudget: typeof runCheckLearningsBudget;
42
43
  /** Projects a public upstream filing body from allowlisted fields. */
43
44
  runFileUpstream: typeof runFileUpstream;
45
+ /** Runs and persists the shared Health v1 consumer. */
46
+ runHealthCli: typeof runHealthCli;
44
47
  /** Runs one policy-approved Kane empirical browser objective. */
45
48
  runKaneCli: typeof runKaneCli;
46
49
  /** Probes Kane installation, authentication, and Test Manager readiness. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAEL,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EACL,UAAU,EACV,eAAe,EACf,eAAe,EAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAuB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAqB,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,kEAAkE;IAClE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,4DAA4D;IAC5D,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,wCAAwC;IACxC,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,yDAAyD;IACzD,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,qCAAqC;IACrC,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,4EAA4E;IAC5E,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,2EAA2E;IAC3E,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,8DAA8D;IAC9D,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,iEAAiE;IACjE,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,sEAAsE;IACtE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,iEAAiE;IACjE,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,4EAA4E;IAC5E,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,kEAAkE;IAClE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,gFAAgF;IAChF,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,0EAA0E;IAC1E,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;CAC/C;AAsLD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,YAAY,GAAE,OAAO,CAAC,mBAAmB,CAAM,GAC9C,OAAO,CA8ET;AAED,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAEL,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAyB,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EACL,UAAU,EACV,eAAe,EACf,eAAe,EAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAuB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAqB,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,kEAAkE;IAClE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,4DAA4D;IAC5D,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,wCAAwC;IACxC,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,yDAAyD;IACzD,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,qCAAqC;IACrC,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,4EAA4E;IAC5E,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,2EAA2E;IAC3E,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,8DAA8D;IAC9D,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,iEAAiE;IACjE,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,sEAAsE;IACtE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,uDAAuD;IACvD,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,iEAAiE;IACjE,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,4EAA4E;IAC5E,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,kEAAkE;IAClE,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,gFAAgF;IAChF,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,0EAA0E;IAC1E,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;CAC/C;AAmND;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,YAAY,GAAE,OAAO,CAAC,mBAAmB,CAAM,GAC9C,OAAO,CA8ET;AAED,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
package/dist/cli/index.js CHANGED
@@ -4,6 +4,7 @@ import { runCheckLearningsBudget } from "./check-learnings-budget-cmd.js";
4
4
  import { runCrossPollinate, } from "./cross-pollinate-cmd.js";
5
5
  import { runDoctor } from "./doctor.js";
6
6
  import { runFileUpstream } from "./file-upstream-cmd.js";
7
+ import { runHealthCli } from "./health-cmd.js";
7
8
  import { GATE_COMMAND_NAMES, addGateCommands } from "./gate-commands.js";
8
9
  import { runKaneCli, runKanePilotCli, runKaneProbeCli, } from "./kane-cmd.js";
9
10
  import { printUpdateWarning } from "./print-update-warning.js";
@@ -29,6 +30,7 @@ const DEFAULT_DEPENDENCIES = {
29
30
  runUi,
30
31
  runCheckLearningsBudget,
31
32
  runFileUpstream,
33
+ runHealthCli,
32
34
  runKaneCli,
33
35
  runKaneProbeCli,
34
36
  runKanePilotCli,
@@ -96,6 +98,22 @@ function addDoctorCommand(program, deps) {
96
98
  await deps.runDoctor(targetPath, options);
97
99
  });
98
100
  }
101
+ /**
102
+ * Register the shared deterministic/agentic health consumer.
103
+ * @param program - Commander program to mutate
104
+ * @param deps - Program dependencies
105
+ */
106
+ function addHealthCommand(program, deps) {
107
+ program
108
+ .command("health")
109
+ .description("Run Lisa's shared project health check and persist the result")
110
+ .argument("[path]", PATH_ARG_DESCRIPTION)
111
+ .option("--prepare-agentic", "Emit bounded agentic evidence without persisting a health result")
112
+ .option("--agentic-evaluation", "Read a digest-bound evaluator response from standard input")
113
+ .action(async (targetPath, options) => {
114
+ await deps.runHealthCli(targetPath, options);
115
+ });
116
+ }
99
117
  /**
100
118
  * Register CLI maintenance commands that do not run the root update warning.
101
119
  * @param program - Commander program to mutate
@@ -120,6 +138,7 @@ function addMaintenanceCommands(program, deps) {
120
138
  }
121
139
  });
122
140
  addDoctorCommand(program, deps);
141
+ addHealthCommand(program, deps);
123
142
  program
124
143
  .command("sync")
125
144
  .description("Populate .lisa.config.json with every missing setting and sync mirrored files (config wins)")
@@ -179,7 +198,7 @@ export function createProgram(dependencies = {}) {
179
198
  // It is non-fatal: a failed check never blocks the action from running.
180
199
  program.hook("preAction", async (_thisCommand, actionCommand) => {
181
200
  if (actionCommand.parent?.name() === "kane" ||
182
- ["doctor", "sync", "ui", "update", "version"].includes(actionCommand.name()) ||
201
+ ["doctor", "health", "sync", "ui", "update", "version"].includes(actionCommand.name()) ||
183
202
  GATE_COMMAND_NAMES.includes(actionCommand.name())) {
184
203
  return;
185
204
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAggEpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAkiMjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
1
+ {"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAsgEpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CA4jMjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
@@ -229,6 +229,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
229
229
  "plugins/src/base/commands/git/commit.md": "fff4bf37e270d6a9ed8b8f97abe21d664d2998e8b9f3dd82754476558007cacc",
230
230
  "plugins/src/base/commands/git/prune.md": "d1f520ffedaa1ca331c232c9e113ca8e7868a1e93028ff9d45a2bc32d7ce45e2",
231
231
  "plugins/src/base/commands/git/submit-pr.md": "131ba633e9bc4379e0ed63f30752076b1aa5b5552d8f542624bc8d4451135773",
232
+ "plugins/src/base/commands/health.md": "f74536619029160e20240c3f1eaf02b300aaecd2a649651fd8ce6bf78f881c70",
232
233
  "plugins/src/base/commands/implement.md": "bfdcb2d1114b777be783014016dade094a4c5e2c03db744668ec42656713519f",
233
234
  "plugins/src/base/commands/improve-harness.md": "2547a45e1e510e9507d8d22fe6d0948dff896574d068f84b4d319088d020a721",
234
235
  "plugins/src/base/commands/improve/code-complexity.md": "57fad45fdce6067ef4cd184e2d377af79c00853b93337d74baaf114cf5da47b3",
@@ -418,6 +419,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
418
419
  "plugins/src/base/skills/lisa-github-verify/SKILL.md": "0d8dce0fff60591d1efff30e340c2cbbef2e8a849ed650389f2391518580ca53",
419
420
  "plugins/src/base/skills/lisa-github-write-issue/SKILL.md": "ee54b3d14cc5dd3a68a8c36590102dd02f49334c9493ad52fa8c7f35157073b1",
420
421
  "plugins/src/base/skills/lisa-github-write-prd/SKILL.md": "bc919c52e2f42129d41a3f40279d2def99486ec58bed2dab51ca7166b427a947",
422
+ "plugins/src/base/skills/lisa-health/SKILL.md": "dfdb08a863e78bff42671793dcec29cfae0654db18ebf66a4aa77aeb56ddb775",
421
423
  "plugins/src/base/skills/lisa-implement/SKILL.md": "634f09dbd2654af070be393f5fd41e8d7fedee7437be2890e54d47ec59258539",
422
424
  "plugins/src/base/skills/lisa-improve-code-complexity/SKILL.md": "24ab5b193b409db6ee6bee981a1c0a48d08991782d7846116ad01658c8bc1ae8",
423
425
  "plugins/src/base/skills/lisa-improve-harness/SKILL.md": "bafda5d2f9b86c48cd16bf0015528fdf5891675221d662fdc533aaad66aad669",
@@ -948,6 +950,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
948
950
  "scripts/update-node-version.ts": "a286750ac2006dd84209bb713e85f994d8d15d9bb596ec3e287a187672e5072d",
949
951
  "scripts/update-test-skill-paths.mjs": "e26a3ac716c33013e22bf5223a58457452f5af2038218a0e3a51c244eab5ddc9",
950
952
  "scripts/verify-health-agentic-built.mjs": "3c064ad162fa633efcaa91327746157bc046cabd1c030b8bfa17227fed077200",
953
+ "scripts/verify-health-consumer-built.mjs": "8b65689a1fa38d9fc2e73b52433408ce19648b8504f80a174b7b7ac97ec42bae",
951
954
  "scripts/verify-health-contract-built.mjs": "5ebfec9b8a0e3004a5af65d2f2515526f7ff5817e61ae30042fb8be40d8f8d17",
952
955
  "scripts/verify-health-deterministic-built.mjs": "ab19427ec4b1dfaa06037cc23b7fc06319b4c12d8c6b67808dddd77e5367fd12",
953
956
  "scripts/verify-learner-frontmatter-built.mjs": "182e5e99f52257d3079ee1bc42b45c3dcca8b93a968205ddb3f3af26f2558b47",
@@ -1022,7 +1025,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1022
1025
  "typescript/merge/.claude/settings.json": "8cc0b88780f4cbca5effa196a4e272953f835e7dc46572a31ab1e74130bb5e48",
1023
1026
  "typescript/merge/.oxlintrc.json": "4debc093acfd263eb81ae15894073ebf098513204f45f40b83fb8fa5353fa1f8",
1024
1027
  "typescript/package-lisa/package.lisa.json": "7e99286c549c79b1c02c07a4313dcfe5b41b4ebb80a6fbbb8741dd74dc5f454d",
1025
- "ui/README.md": "56857365dbb1f28edf07779b04744ce8963ab9fd7655d6405a5ee70856296903",
1028
+ "ui/README.md": "36dbf7675108b73d08c6450ff7337b144d50fc2a9586f688ce202d2c1e1b9f05",
1026
1029
  "ui/index.html": "74c35220d1b8b7d8041374196eba2c821eb90d1b57d884f12afb695f47f5016c",
1027
1030
  });
1028
1031
  /** Exact paths tracked by the public Lisa repository at generation time. */
@@ -1870,6 +1873,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1870
1873
  "plugins/lisa-agy/commands/lisa/git/commit.md": true,
1871
1874
  "plugins/lisa-agy/commands/lisa/git/prune.md": true,
1872
1875
  "plugins/lisa-agy/commands/lisa/git/submit-pr.md": true,
1876
+ "plugins/lisa-agy/commands/lisa/health.md": true,
1873
1877
  "plugins/lisa-agy/commands/lisa/implement.md": true,
1874
1878
  "plugins/lisa-agy/commands/lisa/improve-harness.md": true,
1875
1879
  "plugins/lisa-agy/commands/lisa/improve/code-complexity.md": true,
@@ -1987,6 +1991,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1987
1991
  "plugins/lisa-agy/skills/lisa-github-verify/SKILL.md": true,
1988
1992
  "plugins/lisa-agy/skills/lisa-github-write-issue/SKILL.md": true,
1989
1993
  "plugins/lisa-agy/skills/lisa-github-write-prd/SKILL.md": true,
1994
+ "plugins/lisa-agy/skills/lisa-health/SKILL.md": true,
1990
1995
  "plugins/lisa-agy/skills/lisa-implement/SKILL.md": true,
1991
1996
  "plugins/lisa-agy/skills/lisa-improve-code-complexity/SKILL.md": true,
1992
1997
  "plugins/lisa-agy/skills/lisa-improve-harness/SKILL.md": true,
@@ -2175,6 +2180,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2175
2180
  "plugins/lisa-copilot/commands/lisa/git/commit.md": true,
2176
2181
  "plugins/lisa-copilot/commands/lisa/git/prune.md": true,
2177
2182
  "plugins/lisa-copilot/commands/lisa/git/submit-pr.md": true,
2183
+ "plugins/lisa-copilot/commands/lisa/health.md": true,
2178
2184
  "plugins/lisa-copilot/commands/lisa/implement.md": true,
2179
2185
  "plugins/lisa-copilot/commands/lisa/improve-harness.md": true,
2180
2186
  "plugins/lisa-copilot/commands/lisa/improve/code-complexity.md": true,
@@ -2356,6 +2362,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2356
2362
  "plugins/lisa-copilot/skills/lisa-github-verify/SKILL.md": true,
2357
2363
  "plugins/lisa-copilot/skills/lisa-github-write-issue/SKILL.md": true,
2358
2364
  "plugins/lisa-copilot/skills/lisa-github-write-prd/SKILL.md": true,
2365
+ "plugins/lisa-copilot/skills/lisa-health/SKILL.md": true,
2359
2366
  "plugins/lisa-copilot/skills/lisa-implement/SKILL.md": true,
2360
2367
  "plugins/lisa-copilot/skills/lisa-improve-code-complexity/SKILL.md": true,
2361
2368
  "plugins/lisa-copilot/skills/lisa-improve-harness/SKILL.md": true,
@@ -2529,6 +2536,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2529
2536
  "plugins/lisa-cursor/commands/lisa/git/commit.md": true,
2530
2537
  "plugins/lisa-cursor/commands/lisa/git/prune.md": true,
2531
2538
  "plugins/lisa-cursor/commands/lisa/git/submit-pr.md": true,
2539
+ "plugins/lisa-cursor/commands/lisa/health.md": true,
2532
2540
  "plugins/lisa-cursor/commands/lisa/implement.md": true,
2533
2541
  "plugins/lisa-cursor/commands/lisa/improve-harness.md": true,
2534
2542
  "plugins/lisa-cursor/commands/lisa/improve/code-complexity.md": true,
@@ -2711,6 +2719,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2711
2719
  "plugins/lisa-cursor/skills/lisa-github-verify/SKILL.md": true,
2712
2720
  "plugins/lisa-cursor/skills/lisa-github-write-issue/SKILL.md": true,
2713
2721
  "plugins/lisa-cursor/skills/lisa-github-write-prd/SKILL.md": true,
2722
+ "plugins/lisa-cursor/skills/lisa-health/SKILL.md": true,
2714
2723
  "plugins/lisa-cursor/skills/lisa-implement/SKILL.md": true,
2715
2724
  "plugins/lisa-cursor/skills/lisa-improve-code-complexity/SKILL.md": true,
2716
2725
  "plugins/lisa-cursor/skills/lisa-improve-harness/SKILL.md": true,
@@ -4604,6 +4613,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
4604
4613
  "plugins/lisa/.codex-plugin/skills/lisa-github-write-issue/agents/openai.yaml": true,
4605
4614
  "plugins/lisa/.codex-plugin/skills/lisa-github-write-prd/SKILL.md": true,
4606
4615
  "plugins/lisa/.codex-plugin/skills/lisa-github-write-prd/agents/openai.yaml": true,
4616
+ "plugins/lisa/.codex-plugin/skills/lisa-health/SKILL.md": true,
4617
+ "plugins/lisa/.codex-plugin/skills/lisa-health/agents/openai.yaml": true,
4607
4618
  "plugins/lisa/.codex-plugin/skills/lisa-implement/SKILL.md": true,
4608
4619
  "plugins/lisa/.codex-plugin/skills/lisa-implement/agents/openai.yaml": true,
4609
4620
  "plugins/lisa/.codex-plugin/skills/lisa-improve-code-complexity/SKILL.md": true,
@@ -4898,6 +4909,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
4898
4909
  "plugins/lisa/commands/git/commit.md": true,
4899
4910
  "plugins/lisa/commands/git/prune.md": true,
4900
4911
  "plugins/lisa/commands/git/submit-pr.md": true,
4912
+ "plugins/lisa/commands/health.md": true,
4901
4913
  "plugins/lisa/commands/implement.md": true,
4902
4914
  "plugins/lisa/commands/improve-harness.md": true,
4903
4915
  "plugins/lisa/commands/improve/code-complexity.md": true,
@@ -5127,6 +5139,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5127
5139
  "plugins/lisa/skills/lisa-github-write-issue/agents/openai.yaml": true,
5128
5140
  "plugins/lisa/skills/lisa-github-write-prd/SKILL.md": true,
5129
5141
  "plugins/lisa/skills/lisa-github-write-prd/agents/openai.yaml": true,
5142
+ "plugins/lisa/skills/lisa-health/SKILL.md": true,
5143
+ "plugins/lisa/skills/lisa-health/agents/openai.yaml": true,
5130
5144
  "plugins/lisa/skills/lisa-implement/SKILL.md": true,
5131
5145
  "plugins/lisa/skills/lisa-implement/agents/openai.yaml": true,
5132
5146
  "plugins/lisa/skills/lisa-improve-code-complexity/SKILL.md": true,
@@ -5421,6 +5435,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5421
5435
  "plugins/src/base/commands/git/commit.md": true,
5422
5436
  "plugins/src/base/commands/git/prune.md": true,
5423
5437
  "plugins/src/base/commands/git/submit-pr.md": true,
5438
+ "plugins/src/base/commands/health.md": true,
5424
5439
  "plugins/src/base/commands/implement.md": true,
5425
5440
  "plugins/src/base/commands/improve-harness.md": true,
5426
5441
  "plugins/src/base/commands/improve/code-complexity.md": true,
@@ -5610,6 +5625,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5610
5625
  "plugins/src/base/skills/lisa-github-verify/SKILL.md": true,
5611
5626
  "plugins/src/base/skills/lisa-github-write-issue/SKILL.md": true,
5612
5627
  "plugins/src/base/skills/lisa-github-write-prd/SKILL.md": true,
5628
+ "plugins/src/base/skills/lisa-health/SKILL.md": true,
5613
5629
  "plugins/src/base/skills/lisa-implement/SKILL.md": true,
5614
5630
  "plugins/src/base/skills/lisa-improve-code-complexity/SKILL.md": true,
5615
5631
  "plugins/src/base/skills/lisa-improve-harness/SKILL.md": true,
@@ -6210,6 +6226,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6210
6226
  "scripts/update-node-version.ts": true,
6211
6227
  "scripts/update-test-skill-paths.mjs": true,
6212
6228
  "scripts/verify-health-agentic-built.mjs": true,
6229
+ "scripts/verify-health-consumer-built.mjs": true,
6213
6230
  "scripts/verify-health-contract-built.mjs": true,
6214
6231
  "scripts/verify-health-deterministic-built.mjs": true,
6215
6232
  "scripts/verify-learner-frontmatter-built.mjs": true,
@@ -6226,11 +6243,15 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6226
6243
  "src/cli/doctor-legacy-overlay.ts": true,
6227
6244
  "src/cli/doctor-monitor-thresholds.ts": true,
6228
6245
  "src/cli/doctor-readiness-blockers.ts": true,
6246
+ "src/cli/doctor-readiness-journey-freshness.ts": true,
6247
+ "src/cli/doctor-readiness-journey.ts": true,
6229
6248
  "src/cli/doctor-readiness.ts": true,
6230
6249
  "src/cli/doctor-worker-epoch.ts": true,
6250
+ "src/cli/doctor-worker-journey.ts": true,
6231
6251
  "src/cli/doctor.ts": true,
6232
6252
  "src/cli/file-upstream-cmd.ts": true,
6233
6253
  "src/cli/gate-commands.ts": true,
6254
+ "src/cli/health-cmd.ts": true,
6234
6255
  "src/cli/index.ts": true,
6235
6256
  "src/cli/kane-cmd.ts": true,
6236
6257
  "src/cli/print-update-warning.ts": true,
@@ -6359,15 +6380,18 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6359
6380
  "src/detection/index.ts": true,
6360
6381
  "src/errors/index.ts": true,
6361
6382
  "src/health/agentic.ts": true,
6383
+ "src/health/consumer.ts": true,
6362
6384
  "src/health/contract.ts": true,
6363
6385
  "src/health/deadline.ts": true,
6364
6386
  "src/health/deterministic.ts": true,
6365
6387
  "src/health/directory-sync.ts": true,
6388
+ "src/health/evaluation-protocol.ts": true,
6366
6389
  "src/health/finding-utils.ts": true,
6367
6390
  "src/health/governance-probes.ts": true,
6368
6391
  "src/health/hook-inspection.ts": true,
6369
6392
  "src/health/index.ts": true,
6370
6393
  "src/health/plugin-inspection.ts": true,
6394
+ "src/health/prepare.ts": true,
6371
6395
  "src/health/project-probes.ts": true,
6372
6396
  "src/health/read-only-fs.ts": true,
6373
6397
  "src/health/ruleset-inspection.ts": true,
@@ -6514,11 +6538,14 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6514
6538
  "tests/unit/cli/doctor-kane.test.ts": true,
6515
6539
  "tests/unit/cli/doctor-monitor-thresholds.test.ts": true,
6516
6540
  "tests/unit/cli/doctor-readiness-blockers.test.ts": true,
6541
+ "tests/unit/cli/doctor-readiness-journey.test.ts": true,
6517
6542
  "tests/unit/cli/doctor-readiness.test.ts": true,
6518
6543
  "tests/unit/cli/doctor-worker-epoch.test.ts": true,
6544
+ "tests/unit/cli/doctor-worker-journey.test.ts": true,
6519
6545
  "tests/unit/cli/doctor.test.ts": true,
6520
6546
  "tests/unit/cli/file-upstream-contract.test.ts": true,
6521
6547
  "tests/unit/cli/gate-commands.test.ts": true,
6548
+ "tests/unit/cli/health-cmd.test.ts": true,
6522
6549
  "tests/unit/cli/index.test.ts": true,
6523
6550
  "tests/unit/cli/kane-cmd.test.ts": true,
6524
6551
  "tests/unit/cli/kane-index.test.ts": true,
@@ -6634,6 +6661,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6634
6661
  "tests/unit/detection/detectors.test.ts": true,
6635
6662
  "tests/unit/governance-contracts.test.ts": true,
6636
6663
  "tests/unit/health/agentic.test.ts": true,
6664
+ "tests/unit/health/consumer.test.ts": true,
6637
6665
  "tests/unit/health/contract.test.ts": true,
6638
6666
  "tests/unit/health/deterministic-regressions.test.ts": true,
6639
6667
  "tests/unit/health/deterministic.test.ts": true,
@@ -6785,6 +6813,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6785
6813
  "tests/unit/strategies/harness-parity-council-runtime-adapters.test.ts": true,
6786
6814
  "tests/unit/strategies/harness-parity-council-skill.test.ts": true,
6787
6815
  "tests/unit/strategies/harper-fabric-template-no-advisory-pollution.test.ts": true,
6816
+ "tests/unit/strategies/health-skill-contract.test.ts": true,
6788
6817
  "tests/unit/strategies/implement-env-base-branch.test.ts": true,
6789
6818
  "tests/unit/strategies/improve-harness-skill.test.ts": true,
6790
6819
  "tests/unit/strategies/intake-assignee-filter.test.ts": true,