audit-tools 0.41.0 → 0.42.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 (209) hide show
  1. package/dist/audit/cli/args.d.ts +0 -1
  2. package/dist/audit/cli/args.d.ts.map +1 -1
  3. package/dist/audit/cli/args.js +0 -7
  4. package/dist/audit/cli/args.js.map +1 -1
  5. package/dist/audit/cli/auditStep.d.ts +18 -0
  6. package/dist/audit/cli/auditStep.d.ts.map +1 -1
  7. package/dist/audit/cli/auditStep.js +35 -1
  8. package/dist/audit/cli/auditStep.js.map +1 -1
  9. package/dist/audit/cli/cleanup.d.ts +1 -0
  10. package/dist/audit/cli/cleanup.d.ts.map +1 -1
  11. package/dist/audit/cli/cleanup.js +22 -7
  12. package/dist/audit/cli/cleanup.js.map +1 -1
  13. package/dist/audit/cli/confirmIntentStep.d.ts.map +1 -1
  14. package/dist/audit/cli/confirmIntentStep.js +11 -0
  15. package/dist/audit/cli/confirmIntentStep.js.map +1 -1
  16. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  17. package/dist/audit/cli/dispatch/hostHandoff.js +110 -29
  18. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  19. package/dist/audit/cli/envelope.d.ts +0 -24
  20. package/dist/audit/cli/envelope.d.ts.map +1 -1
  21. package/dist/audit/cli/envelope.js +0 -18
  22. package/dist/audit/cli/envelope.js.map +1 -1
  23. package/dist/audit/cli/fanoutLanes.d.ts +24 -0
  24. package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
  25. package/dist/audit/cli/fanoutLanes.js +46 -2
  26. package/dist/audit/cli/fanoutLanes.js.map +1 -1
  27. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  28. package/dist/audit/cli/nextStepCommand.js +19 -24
  29. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  30. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  31. package/dist/audit/cli/nextStepHelpers.js +20 -6
  32. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  33. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  34. package/dist/audit/cli/semanticReviewStep.js +5 -1
  35. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  36. package/dist/audit/cli/workerResult.d.ts +0 -13
  37. package/dist/audit/cli/workerResult.d.ts.map +1 -1
  38. package/dist/audit/cli/workerResult.js +0 -15
  39. package/dist/audit/cli/workerResult.js.map +1 -1
  40. package/dist/audit/contracts/workerSchemas.d.ts +13 -83
  41. package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
  42. package/dist/audit/contracts/workerSchemas.js +10 -4
  43. package/dist/audit/contracts/workerSchemas.js.map +1 -1
  44. package/dist/audit/orchestrator/advance.d.ts +30 -0
  45. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  46. package/dist/audit/orchestrator/advance.js +45 -2
  47. package/dist/audit/orchestrator/advance.js.map +1 -1
  48. package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
  49. package/dist/audit/orchestrator/designReviewPrompt.js +6 -4
  50. package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
  51. package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
  52. package/dist/audit/orchestrator/ingestionExecutors.js +13 -16
  53. package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
  54. package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts +8 -0
  55. package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts.map +1 -1
  56. package/dist/audit/orchestrator/intentCheckpointExecutor.js +2 -0
  57. package/dist/audit/orchestrator/intentCheckpointExecutor.js.map +1 -1
  58. package/dist/audit/orchestrator/lensSelection.d.ts +19 -0
  59. package/dist/audit/orchestrator/lensSelection.d.ts.map +1 -1
  60. package/dist/audit/orchestrator/lensSelection.js +24 -0
  61. package/dist/audit/orchestrator/lensSelection.js.map +1 -1
  62. package/dist/audit/orchestrator/planningExecutors.d.ts +1 -12
  63. package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
  64. package/dist/audit/orchestrator/planningExecutors.js +14 -64
  65. package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
  66. package/dist/audit/orchestrator/requeueFold.d.ts +43 -0
  67. package/dist/audit/orchestrator/requeueFold.d.ts.map +1 -0
  68. package/dist/audit/orchestrator/requeueFold.js +50 -0
  69. package/dist/audit/orchestrator/requeueFold.js.map +1 -0
  70. package/dist/audit/orchestrator/reviewPacketSizing.d.ts +0 -1
  71. package/dist/audit/orchestrator/reviewPacketSizing.d.ts.map +1 -1
  72. package/dist/audit/orchestrator/reviewPacketSizing.js +0 -5
  73. package/dist/audit/orchestrator/reviewPacketSizing.js.map +1 -1
  74. package/dist/audit/orchestrator/reviewPackets.d.ts +8 -2
  75. package/dist/audit/orchestrator/reviewPackets.d.ts.map +1 -1
  76. package/dist/audit/orchestrator/reviewPackets.js +7 -8
  77. package/dist/audit/orchestrator/reviewPackets.js.map +1 -1
  78. package/dist/audit/orchestrator/taskAffinityGraph.d.ts +0 -6
  79. package/dist/audit/orchestrator/taskAffinityGraph.d.ts.map +1 -1
  80. package/dist/audit/orchestrator/taskAffinityGraph.js +0 -16
  81. package/dist/audit/orchestrator/taskAffinityGraph.js.map +1 -1
  82. package/dist/audit/orchestrator/taskBuilder.d.ts.map +1 -1
  83. package/dist/audit/orchestrator/taskBuilder.js +1 -2
  84. package/dist/audit/orchestrator/taskBuilder.js.map +1 -1
  85. package/dist/audit/reporting/workBlocks.d.ts +0 -1
  86. package/dist/audit/reporting/workBlocks.d.ts.map +1 -1
  87. package/dist/audit/reporting/workBlocks.js +0 -3
  88. package/dist/audit/reporting/workBlocks.js.map +1 -1
  89. package/dist/audit/systemic/systemicChallengeLoop.d.ts +0 -8
  90. package/dist/audit/systemic/systemicChallengeLoop.d.ts.map +1 -1
  91. package/dist/audit/systemic/systemicChallengeLoop.js +0 -9
  92. package/dist/audit/systemic/systemicChallengeLoop.js.map +1 -1
  93. package/dist/audit/types.d.ts +4 -4
  94. package/dist/remediate/contractPipeline/artifactStore.d.ts +19 -23
  95. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
  96. package/dist/remediate/contractPipeline/artifactStore.js +22 -29
  97. package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
  98. package/dist/remediate/contractPipeline/changeClassification.d.ts +0 -12
  99. package/dist/remediate/contractPipeline/changeClassification.d.ts.map +1 -1
  100. package/dist/remediate/contractPipeline/changeClassification.js +0 -101
  101. package/dist/remediate/contractPipeline/changeClassification.js.map +1 -1
  102. package/dist/remediate/contractPipeline/derive.d.ts +0 -42
  103. package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
  104. package/dist/remediate/contractPipeline/derive.js +0 -108
  105. package/dist/remediate/contractPipeline/derive.js.map +1 -1
  106. package/dist/remediate/index.d.ts +0 -1
  107. package/dist/remediate/index.d.ts.map +1 -1
  108. package/dist/remediate/index.js +5 -132
  109. package/dist/remediate/index.js.map +1 -1
  110. package/dist/remediate/intake.d.ts +0 -55
  111. package/dist/remediate/intake.d.ts.map +1 -1
  112. package/dist/remediate/intake.js +1 -81
  113. package/dist/remediate/intake.js.map +1 -1
  114. package/dist/remediate/phases/plan.d.ts +0 -1
  115. package/dist/remediate/phases/plan.d.ts.map +1 -1
  116. package/dist/remediate/phases/plan.js +1 -207
  117. package/dist/remediate/phases/plan.js.map +1 -1
  118. package/dist/remediate/state/types.d.ts +4 -4
  119. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  120. package/dist/remediate/steps/contractPipeline.js +6 -6
  121. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  122. package/dist/remediate/steps/contractPipelinePrompts.d.ts +9 -9
  123. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  124. package/dist/remediate/steps/contractPipelinePrompts.js +25 -17
  125. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  126. package/dist/remediate/steps/dispatch/hostHandoff.d.ts +0 -1
  127. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  128. package/dist/remediate/steps/dispatch/hostHandoff.js +3 -2
  129. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  130. package/dist/remediate/steps/dispatch.d.ts +0 -8
  131. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  132. package/dist/remediate/steps/dispatch.js +3 -9
  133. package/dist/remediate/steps/dispatch.js.map +1 -1
  134. package/dist/remediate/steps/nextStep.d.ts +0 -1
  135. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  136. package/dist/remediate/steps/nextStep.js +0 -1
  137. package/dist/remediate/steps/nextStep.js.map +1 -1
  138. package/dist/remediate/utils/fileIntegrity.d.ts +0 -8
  139. package/dist/remediate/utils/fileIntegrity.d.ts.map +1 -1
  140. package/dist/remediate/utils/fileIntegrity.js +5 -65
  141. package/dist/remediate/utils/fileIntegrity.js.map +1 -1
  142. package/dist/remediate/validation/contractPipelineGates.js +3 -3
  143. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  144. package/dist/shared/analyzers/candidates.d.ts +6 -6
  145. package/dist/shared/analyzers/candidates.d.ts.map +1 -1
  146. package/dist/shared/analyzers/candidates.js +6 -6
  147. package/dist/shared/analyzers/candidates.js.map +1 -1
  148. package/dist/shared/chunkByBudget.d.ts +8 -8
  149. package/dist/shared/decompose/contentCoherence.d.ts +0 -271
  150. package/dist/shared/decompose/contentCoherence.d.ts.map +1 -1
  151. package/dist/shared/decompose/contentCoherence.js +12 -59
  152. package/dist/shared/decompose/contentCoherence.js.map +1 -1
  153. package/dist/shared/decompose/systemicChallenge.d.ts +4 -4
  154. package/dist/shared/index.d.ts +5 -5
  155. package/dist/shared/index.d.ts.map +1 -1
  156. package/dist/shared/index.js +4 -4
  157. package/dist/shared/index.js.map +1 -1
  158. package/dist/shared/io/auditToolsPaths.d.ts +0 -20
  159. package/dist/shared/io/auditToolsPaths.d.ts.map +1 -1
  160. package/dist/shared/io/auditToolsPaths.js +0 -24
  161. package/dist/shared/io/auditToolsPaths.js.map +1 -1
  162. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  163. package/dist/shared/loopCorePaths.js +15 -9
  164. package/dist/shared/loopCorePaths.js.map +1 -1
  165. package/dist/shared/types/finding.d.ts +30 -264
  166. package/dist/shared/types/finding.d.ts.map +1 -1
  167. package/dist/shared/types/finding.js +60 -0
  168. package/dist/shared/types/finding.js.map +1 -1
  169. package/dist/shared/validation/findingGrounding.d.ts +11 -0
  170. package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
  171. package/dist/shared/validation/findingGrounding.js +21 -0
  172. package/dist/shared/validation/findingGrounding.js.map +1 -1
  173. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  174. package/dist/shared/validation/findingsReport.js +0 -6
  175. package/dist/shared/validation/findingsReport.js.map +1 -1
  176. package/docs/audit-pkg/contracts.md +2 -2
  177. package/docs/audit-pkg/development.md +1 -1
  178. package/docs/audit-pkg/release.md +20 -114
  179. package/package.json +6 -2
  180. package/schemas/audit_result.schema.json +0 -20
  181. package/schemas/audit_results.schema.json +0 -20
  182. package/schemas/finding.schema.json +0 -20
  183. package/skills/audit-code/SKILL.md +3 -7
  184. package/skills/audit-code/audit-code.prompt.md +5 -9
  185. package/skills/remediate-code/SKILL.md +0 -1
  186. package/dist/remediate/steps/dispatch/common.d.ts +0 -126
  187. package/dist/remediate/steps/dispatch/common.d.ts.map +0 -1
  188. package/dist/remediate/steps/dispatch/common.js +0 -204
  189. package/dist/remediate/steps/dispatch/common.js.map +0 -1
  190. package/dist/remediate/steps/dispatch/dagNodeFields.d.ts +0 -25
  191. package/dist/remediate/steps/dispatch/dagNodeFields.d.ts.map +0 -1
  192. package/dist/remediate/steps/dispatch/dagNodeFields.js +0 -5
  193. package/dist/remediate/steps/dispatch/dagNodeFields.js.map +0 -1
  194. package/dist/remediate/steps/dispatch/implementPrompt.d.ts +0 -47
  195. package/dist/remediate/steps/dispatch/implementPrompt.d.ts.map +0 -1
  196. package/dist/remediate/steps/dispatch/implementPrompt.js +0 -165
  197. package/dist/remediate/steps/dispatch/implementPrompt.js.map +0 -1
  198. package/dist/remediate/steps/dispatch/verifyCommands.d.ts +0 -144
  199. package/dist/remediate/steps/dispatch/verifyCommands.d.ts.map +0 -1
  200. package/dist/remediate/steps/dispatch/verifyCommands.js +0 -331
  201. package/dist/remediate/steps/dispatch/verifyCommands.js.map +0 -1
  202. package/dist/remediate/steps/dispatch/writeScope.d.ts +0 -43
  203. package/dist/remediate/steps/dispatch/writeScope.d.ts.map +0 -1
  204. package/dist/remediate/steps/dispatch/writeScope.js +0 -81
  205. package/dist/remediate/steps/dispatch/writeScope.js.map +0 -1
  206. package/dist/remediate/utils/hostAssets.d.ts +0 -21
  207. package/dist/remediate/utils/hostAssets.d.ts.map +0 -1
  208. package/dist/remediate/utils/hostAssets.js +0 -34
  209. package/dist/remediate/utils/hostAssets.js.map +0 -1
@@ -6,7 +6,6 @@ export declare const DIRECT_CLI_DEFAULTS: {
6
6
  };
7
7
  export declare function getFlag(argv: string[], name: string, fallback?: string): string | undefined;
8
8
  export declare function hasFlag(argv: string[], name: string): boolean;
9
- export declare function optionalBooleanEnv(value: string | undefined): boolean | undefined;
10
9
  export { digestId, safeArtifactStem } from "audit-tools/shared";
11
10
  export { artifactNameForId, isCanonicalResultFilename };
12
11
  export declare const quoteCommandArg: typeof quotePromptCommandArg;
@@ -1 +1 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/args.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EACzB,qBAAqB,EAGrB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,mBAAmB;;;;CAI/B,CAAC;AAMF,wBAAgB,OAAO,CACrB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAMpB;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,OAAO,GAAG,SAAS,CAIrB;AAED,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,CAAC;AAExD,eAAO,MAAM,eAAe,8BAAwB,CAAC;AACrD,eAAO,MAAM,mBAAmB,0BAAoB,CAAC;AAErD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEpD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAK3E;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAIjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAKtD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAGrE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAKnD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEnE;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB9D;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAkB9E"}
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/args.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EACzB,qBAAqB,EAGrB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,mBAAmB;;;;CAI/B,CAAC;AAMF,wBAAgB,OAAO,CACrB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAMpB;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,CAAC;AAExD,eAAO,MAAM,eAAe,8BAAwB,CAAC;AACrD,eAAO,MAAM,mBAAmB,0BAAoB,CAAC;AAErD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEpD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAK3E;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAIjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAKtD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAGrE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAKnD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEnE;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB9D;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAkB9E"}
@@ -23,13 +23,6 @@ export function getFlag(argv, name, fallback) {
23
23
  export function hasFlag(argv, name) {
24
24
  return argv.includes(name);
25
25
  }
26
- export function optionalBooleanEnv(value) {
27
- if (value === "true")
28
- return true;
29
- if (value === "false")
30
- return false;
31
- return undefined;
32
- }
33
26
  export { digestId, safeArtifactStem } from "audit-tools/shared";
34
27
  export { artifactNameForId, isCanonicalResultFilename };
35
28
  export const quoteCommandArg = quotePromptCommandArg;
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/audit/cli/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/audit/cli/args.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,24 @@ export interface RunAuditStepOptions {
41
41
  runLog?: boolean;
42
42
  }
43
43
  export declare function runAuditStep(options: RunAuditStepOptions): Promise<AdvanceAuditResult>;
44
+ /**
45
+ * The CLI batch lane's half of the S7 grounding contract (docs-16): overwrite
46
+ * every finding's `grounding` with the TOOL's own re-check before the payload
47
+ * reaches validation or the ledger.
48
+ *
49
+ * OVERWRITE, not refuse: unlike the host-handoff boundary — whose worker
50
+ * submissions are raw and where a supplied verdict is rejected outright — this
51
+ * lane also carries results a previous ingest already grounded, so a refusal
52
+ * would reject legitimate re-imports. Recomputing is idempotent on those and
53
+ * strips a self-reported verdict from the rest. Runs BEFORE `validateAuditResults`
54
+ * and shape-guards its own traversal, so a malformed payload still fails at the
55
+ * validation gate with its normal message instead of throwing here.
56
+ *
57
+ * Exported so the contract is tested against THIS mechanism directly: the only
58
+ * alternative seam is the multi-minute end-to-end batch-ingest fixture, and a
59
+ * test that cannot reach the code it names is not a guard.
60
+ */
61
+ export declare function stampToolComputedGrounding(root: string, results: readonly unknown[]): Promise<void>;
44
62
  export declare function ingestBatchAuditResults(options: {
45
63
  root: string;
46
64
  artifactsDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"auditStep.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/auditStep.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAU7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAkD,MAAM,oBAAoB,CAAC;AAE1G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAEhG,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oGAAoG;IACpG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,uBAAuB,CAAC;IAC/C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,iCAAiC,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAc7B;AAoKD,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;;;;;;;;;;;;;;;;;;;;GA6CA"}
1
+ {"version":3,"file":"auditStep.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/auditStep.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAU7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAA2D,MAAM,oBAAoB,CAAC;AAEnH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAEhG,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oGAAoG;IACpG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,uBAAuB,CAAC;IAC/C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,iCAAiC,CAAC;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAc7B;AAoKD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;;;;;;;;;;;;;;;;;;;;GA8CA"}
@@ -1,5 +1,5 @@
1
1
  import { basename, join } from "node:path";
2
- import { artifactTreeLockPath, readJsonFile, RunLogger, withFileLock, CharterSubmissionSchema, CharterDeltaSubmissionSchema, ClarificationAnswersSubmissionSchema, SystemicChallengeSubmissionSchema, } from "audit-tools/shared";
2
+ import { artifactTreeLockPath, createMemoizedSourceReader, readJsonFile, RunLogger, verifyFindingGrounding, withFileLock, CharterSubmissionSchema, CharterDeltaSubmissionSchema, ClarificationAnswersSubmissionSchema, SystemicChallengeSubmissionSchema, } from "audit-tools/shared";
3
3
  import { loadArtifactBundle, writeCoreArtifacts, } from "../io/artifacts.js";
4
4
  import { advanceAudit } from "../orchestrator/advance.js";
5
5
  import { decideNextStep } from "../orchestrator/nextStep.js";
@@ -146,6 +146,39 @@ async function executeAdvance(options, bundle, runLogger) {
146
146
  });
147
147
  return result;
148
148
  }
149
+ /**
150
+ * The CLI batch lane's half of the S7 grounding contract (docs-16): overwrite
151
+ * every finding's `grounding` with the TOOL's own re-check before the payload
152
+ * reaches validation or the ledger.
153
+ *
154
+ * OVERWRITE, not refuse: unlike the host-handoff boundary — whose worker
155
+ * submissions are raw and where a supplied verdict is rejected outright — this
156
+ * lane also carries results a previous ingest already grounded, so a refusal
157
+ * would reject legitimate re-imports. Recomputing is idempotent on those and
158
+ * strips a self-reported verdict from the rest. Runs BEFORE `validateAuditResults`
159
+ * and shape-guards its own traversal, so a malformed payload still fails at the
160
+ * validation gate with its normal message instead of throwing here.
161
+ *
162
+ * Exported so the contract is tested against THIS mechanism directly: the only
163
+ * alternative seam is the multi-minute end-to-end batch-ingest fixture, and a
164
+ * test that cannot reach the code it names is not a guard.
165
+ */
166
+ export async function stampToolComputedGrounding(root, results) {
167
+ const readSource = createMemoizedSourceReader();
168
+ for (const result of results) {
169
+ if (typeof result !== "object" || result === null)
170
+ continue;
171
+ const findings = result.findings;
172
+ if (!Array.isArray(findings))
173
+ continue;
174
+ for (const finding of findings) {
175
+ if (typeof finding !== "object" || finding === null)
176
+ continue;
177
+ const typed = finding;
178
+ typed.grounding = await verifyFindingGrounding(root, typed, readSource);
179
+ }
180
+ }
181
+ }
149
182
  export async function ingestBatchAuditResults(options) {
150
183
  const batchFiles = await listBatchResultFiles(options.batchDir);
151
184
  // A batch directory is one host submission boundary. Ingest every canonical
@@ -154,6 +187,7 @@ export async function ingestBatchAuditResults(options) {
154
187
  // the rest of the same batch is visible.
155
188
  const payloads = await Promise.all(batchFiles.map((batchFile) => readJsonFile(batchFile)));
156
189
  const auditResultsData = payloads.flatMap((payload) => Array.isArray(payload) ? payload : [payload]);
190
+ await stampToolComputedGrounding(options.root, auditResultsData);
157
191
  const step = batchFiles.length > 0
158
192
  ? await runAuditStep({
159
193
  root: options.root,
@@ -1 +1 @@
1
- {"version":3,"file":"auditStep.js","sourceRoot":"","sources":["../../../src/audit/cli/auditStep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auditStep.js","sourceRoot":"","sources":["../../../src/audit/cli/auditStep.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { AuditState } from "../types/auditState.js";
2
2
  export type CleanupOptions = {
3
3
  force?: boolean;
4
4
  dryRun?: boolean;
5
+ preRun?: boolean;
5
6
  };
6
7
  export type CleanupResult = {
7
8
  action: "deleted" | "skipped" | "dry-run";
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/cleanup.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAWF,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAoCxB"}
1
+ {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/cleanup.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAkBF,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CA6CxB"}
@@ -1,17 +1,24 @@
1
1
  import { rm } from "node:fs/promises";
2
2
  import { join } from "node:path";
3
3
  import { isFileMissingError, readJsonFile } from "audit-tools/shared";
4
- // Remove a stale artifacts directory before starting a fresh run: if the prior
5
- // run completed or never started, its artifacts are safe to clear. A missing
6
- // state file means there is nothing to clean. Shared by programmatic callers
7
- // and the cleanup command.
4
+ // Remove a stale artifacts directory. Two callers: the `cleanup` CLI command
5
+ // (cmdCleanup) and the next-step pre-run sweep (cmdNextStepBody, preRun=true).
6
+ // A missing state file means there is nothing to clean.
7
+ //
8
+ // Pre-run eligibility (preRun=true) is NOT_STARTED-ONLY: a lingering `complete`
9
+ // dir at next-step time is a live continuation — friction triage may still be
10
+ // pending, and report promotion itself deletes the dir once the report is
11
+ // copied up — so sweeping it would destroy unfinished work. `complete` dirs
12
+ // stay owned by the completion transition and the manual cleanup verb, which
13
+ // keeps its complete+not_started eligibility unchanged.
8
14
  //
9
15
  // With options:
16
+ // preRun=true — pre-run sweep mode: only `not_started` is eligible.
10
17
  // force=true — delete even when status is active/blocked or state file is missing.
11
18
  // dryRun=true — skip the actual rm call and return action='dry-run'.
12
- // Both default to false.
19
+ // All default to false.
13
20
  export async function cleanupStaleArtifactsDir(artifactsDir, options = {}) {
14
- const { force = false, dryRun = false } = options;
21
+ const { force = false, dryRun = false, preRun = false } = options;
15
22
  let status = "unknown";
16
23
  try {
17
24
  const state = await readJsonFile(join(artifactsDir, "audit_state.json"));
@@ -23,7 +30,9 @@ export async function cleanupStaleArtifactsDir(artifactsDir, options = {}) {
23
30
  }
24
31
  // State file missing — status stays "unknown".
25
32
  }
26
- const eligibleWithoutForce = status === "complete" || status === "not_started";
33
+ const eligibleWithoutForce = preRun
34
+ ? status === "not_started"
35
+ : status === "complete" || status === "not_started";
27
36
  const resumable = status === "active" || status === "blocked";
28
37
  if (!eligibleWithoutForce && !force) {
29
38
  // active/blocked — caller may want to resume; skip unless forced
@@ -31,6 +40,12 @@ export async function cleanupStaleArtifactsDir(artifactsDir, options = {}) {
31
40
  const reason = `audit is ${status} and may be resumed — use --force to delete anyway`;
32
41
  return { action: "skipped", status, reason };
33
42
  }
43
+ // complete — only reachable in preRun mode (the verb treats complete as
44
+ // eligible above): the dir is a live continuation, never pre-run junk.
45
+ if (status === "complete") {
46
+ const reason = "audit is complete — friction triage / report promotion own this dir; the completion transition or the cleanup command clears it";
47
+ return { action: "skipped", status, reason };
48
+ }
34
49
  // unknown (missing state file) — no-op by default; caller decides how to
35
50
  // surface this (the cleanup command sets exitCode=1)
36
51
  return { action: "skipped", status: "unknown" };
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/audit/cli/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AActE,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,2BAA2B;AAC3B,EAAE;AACF,gBAAgB;AAChB,sFAAsF;AACtF,uEAAuE;AACvE,yBAAyB;AACzB,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,YAAoB,EACpB,UAA0B,EAAE;IAE5B,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAElD,IAAI,MAAM,GAAqC,SAAS,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAC9B,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CACvC,CAAC;QACF,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC;QACD,+CAA+C;IACjD,CAAC;IAED,MAAM,oBAAoB,GAAG,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,aAAa,CAAC;IAC/E,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,CAAC;IAE9D,IAAI,CAAC,oBAAoB,IAAI,CAAC,KAAK,EAAE,CAAC;QACpC,iEAAiE;QACjE,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,YAAY,MAAM,oDAAoD,CAAC;YACtF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC/C,CAAC;QACD,yEAAyE;QACzE,qDAAqD;QACrD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAClD,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/audit/cli/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAetE,6EAA6E;AAC7E,+EAA+E;AAC/E,wDAAwD;AACxD,EAAE;AACF,gFAAgF;AAChF,8EAA8E;AAC9E,0EAA0E;AAC1E,4EAA4E;AAC5E,6EAA6E;AAC7E,wDAAwD;AACxD,EAAE;AACF,gBAAgB;AAChB,sEAAsE;AACtE,sFAAsF;AACtF,uEAAuE;AACvE,wBAAwB;AACxB,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,YAAoB,EACpB,UAA0B,EAAE;IAE5B,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAElE,IAAI,MAAM,GAAqC,SAAS,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAC9B,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CACvC,CAAC;QACF,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC;QACD,+CAA+C;IACjD,CAAC;IAED,MAAM,oBAAoB,GAAG,MAAM;QACjC,CAAC,CAAC,MAAM,KAAK,aAAa;QAC1B,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,aAAa,CAAC;IACtD,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,CAAC;IAE9D,IAAI,CAAC,oBAAoB,IAAI,CAAC,KAAK,EAAE,CAAC;QACpC,iEAAiE;QACjE,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,YAAY,MAAM,oDAAoD,CAAC;YACtF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC/C,CAAC;QACD,wEAAwE;QACxE,uEAAuE;QACvE,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,MAAM,MAAM,GACV,iIAAiI,CAAC;YACpI,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC/C,CAAC;QACD,yEAAyE;QACzE,qDAAqD;QACrD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAClD,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"confirmIntentStep.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/confirmIntentStep.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAyB,MAAM,6CAA6C,CAAC;AAoCzG;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE;IACJ,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,2BAA2B,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvG,GACA,MAAM,CA6OR"}
1
+ {"version":3,"file":"confirmIntentStep.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/confirmIntentStep.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAyB,MAAM,6CAA6C,CAAC;AAoCzG;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE;IACJ,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,2BAA2B,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvG,GACA,MAAM,CAwPR"}
@@ -105,6 +105,17 @@ export function renderConfirmIntentPrompt(preDigest, opts) {
105
105
  `**Mode:** ${preDigest.mode}${preDigest.since ? ` (since ${preDigest.since})` : ""}`,
106
106
  `**Files in scope:** ${preDigest.files_in_scope}`,
107
107
  "",
108
+ ...(preDigest.mis_scope_smells.length > 0
109
+ ? [
110
+ "## ⚠ Possible mis-scope",
111
+ "",
112
+ "Intake detected signals that the resolved root may be the wrong target.",
113
+ "Confirm the audit target with the user before writing `intent_checkpoint.json`:",
114
+ "",
115
+ ...preDigest.mis_scope_smells.map((smell) => `- ${smell}`),
116
+ "",
117
+ ]
118
+ : []),
108
119
  ...(preDigest.docs_digest.length > 0
109
120
  ? [
110
121
  "## Repository purpose (from its docs)",
@@ -1 +1 @@
1
- {"version":3,"file":"confirmIntentStep.js","sourceRoot":"","sources":["../../../src/audit/cli/confirmIntentStep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"confirmIntentStep.js","sourceRoot":"","sources":["../../../src/audit/cli/confirmIntentStep.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hostHandoff.d.ts","sourceRoot":"","sources":["../../../../src/audit/cli/dispatch/hostHandoff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hostHandoff.d.ts","sourceRoot":"","sources":["../../../../src/audit/cli/dispatch/hostHandoff.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { mkdir } from "node:fs/promises";
2
2
  import { join, resolve } from "node:path";
3
- import { FindingSchema, assertSubmissionRunId, hashContent, isFileMissingError, readJsonFile, readSubmissionDocument, repoRelativePath, resolveContainedPath, stableStringify, submissionPathFor, writeJsonFile, } from "audit-tools/shared";
3
+ import { FindingSchema, createMemoizedSourceReader, findingContractPromptLines, assertSubmissionRunId, hashContent, isFileMissingError, readJsonFile, readSubmissionDocument, repoRelativePath, resolveContainedPath, stableStringify, submissionPathFor, verifyFindingGrounding, writeJsonFile, } from "audit-tools/shared";
4
4
  import { AuditResultSchema } from "../../types.js";
5
5
  const WORKLOAD_CONTRACT_VERSION = "audit-host-workload/v1alpha1";
6
6
  const RESULT_MAP_CONTRACT_VERSION = "audit-host-result-map/v1alpha1";
@@ -127,7 +127,11 @@ function buildPrompt(task, resultPath) {
127
127
  "Review every listed file and return one JSON object at the bound result path.",
128
128
  `Assignment: ${assignment}`,
129
129
  "Result contract: audit-host-result/v1alpha1 with exactly result_id, run_id, work_item_id, prompt_sha256, file_coverage, and findings in addition to contract_version.",
130
- "Each file_coverage entry must contain exactly path, reviewed_lines, and total_lines; findings must satisfy the audit finding contract.",
130
+ "Each file_coverage entry must contain exactly path, reviewed_lines, and total_lines.",
131
+ // The finding contract is CARRIED, not referenced: it is rendered from the
132
+ // very schema ingestion enforces, so a host never has to remember or fetch it.
133
+ ...findingContractPromptLines(),
134
+ "Do not supply a `grounding` field on any finding — grounding is computed by the tool at ingest by re-reading your cited quoted_text from disk, and a supplied one rejects the whole submission.",
131
135
  ].join("\n");
132
136
  }
133
137
  function buildWorkItem(paths, task) {
@@ -429,6 +433,34 @@ function validateHandoffBinding(paths, workload, resultMap, taskBindings) {
429
433
  }
430
434
  return items;
431
435
  }
436
+ function refuse(detail) {
437
+ return { ok: false, detail };
438
+ }
439
+ /** `findings[2].affected_files.0.path` — a zod issue path, host-readable. */
440
+ function issueLocation(prefix, path) {
441
+ return [prefix, ...path.map((segment) => String(segment))].join(".");
442
+ }
443
+ function parseFindings(findings) {
444
+ for (const [index, finding] of findings.entries()) {
445
+ // S7: `grounding` is the TOOL's re-check of the worker's own quote — the one
446
+ // bit ingestion exists to compute. A submission that supplies it is
447
+ // self-certifying that bit, so it is REFUSED (never silently overwritten):
448
+ // the host must see that the field is not its to send.
449
+ if (isRecord(finding) && "grounding" in finding) {
450
+ return refuse(`findings[${index}].grounding: grounding is tool-computed at ingest and must not be supplied`);
451
+ }
452
+ const parsed = FindingSchema.safeParse(finding);
453
+ if (parsed.success)
454
+ continue;
455
+ const issue = parsed.error.issues[0];
456
+ const location = issue === undefined
457
+ ? `findings[${index}]`
458
+ : issueLocation(`findings[${index}]`, issue.path);
459
+ const reason = issue === undefined ? "invalid" : issue.message;
460
+ return refuse(`findings failed the audit finding contract at ${location}: ${reason}`);
461
+ }
462
+ return null;
463
+ }
432
464
  function parseHostResult(value, runId, item, binding) {
433
465
  if (!isRecord(value) ||
434
466
  !hasExactKeys(value, [
@@ -442,35 +474,63 @@ function parseHostResult(value, runId, item, binding) {
442
474
  ]) ||
443
475
  value.contract_version !== RESULT_CONTRACT_VERSION ||
444
476
  typeof value.result_id !== "string" ||
445
- value.result_id.length === 0 ||
446
- value.run_id !== runId ||
447
- value.work_item_id !== item.id ||
448
- value.prompt_sha256 !== item.prompt.sha256 ||
449
- !Array.isArray(value.file_coverage) ||
450
- !Array.isArray(value.findings) ||
451
- !value.findings.every((finding) => FindingSchema.safeParse(finding).success)) {
452
- return null;
477
+ value.result_id.length === 0) {
478
+ return refuse(`result envelope is not ${RESULT_CONTRACT_VERSION} with exactly contract_version, ` +
479
+ `result_id, run_id, work_item_id, prompt_sha256, file_coverage and findings`);
480
+ }
481
+ if (value.run_id !== runId) {
482
+ return refuse(`identity binding: run_id is not this run's '${runId}'`);
483
+ }
484
+ if (value.work_item_id !== item.id) {
485
+ return refuse(`identity binding: work_item_id is not '${item.id}'`);
486
+ }
487
+ if (value.prompt_sha256 !== item.prompt.sha256) {
488
+ return refuse("prompt binding: prompt_sha256 is not the sha256 of this work item's prompt");
453
489
  }
490
+ if (!Array.isArray(value.file_coverage)) {
491
+ return refuse("file coverage: file_coverage must be an array");
492
+ }
493
+ if (!Array.isArray(value.findings)) {
494
+ return refuse("findings failed the audit finding contract: findings must be an array");
495
+ }
496
+ const findingRefusal = parseFindings(value.findings);
497
+ if (findingRefusal !== null)
498
+ return findingRefusal;
454
499
  const coveragePaths = new Set();
455
500
  for (const coverage of value.file_coverage) {
456
501
  if (!isRecord(coverage) ||
457
502
  !hasExactKeys(coverage, ["path", "reviewed_lines", "total_lines"]) ||
458
- typeof coverage.path !== "string" ||
459
- coveragePaths.has(coverage.path) ||
460
- !Number.isInteger(coverage.reviewed_lines) ||
503
+ typeof coverage.path !== "string") {
504
+ return refuse("file coverage: every entry must contain exactly path, reviewed_lines and total_lines");
505
+ }
506
+ if (coveragePaths.has(coverage.path)) {
507
+ return refuse(`file coverage: '${coverage.path}' is covered twice`);
508
+ }
509
+ if (!Number.isInteger(coverage.reviewed_lines) ||
461
510
  !Number.isInteger(coverage.total_lines) ||
462
511
  coverage.reviewed_lines < 0 ||
463
- coverage.reviewed_lines !== coverage.total_lines ||
464
- coverage.total_lines !== binding.file_line_counts[coverage.path]) {
465
- return null;
512
+ coverage.reviewed_lines !== coverage.total_lines) {
513
+ return refuse(`file coverage: '${coverage.path}' must report reviewed_lines equal to total_lines`);
514
+ }
515
+ const boundLines = binding.file_line_counts[coverage.path];
516
+ if (coverage.total_lines !== boundLines) {
517
+ return refuse(boundLines === undefined
518
+ ? `file coverage: '${coverage.path}' is not one of this work item's bound files`
519
+ : `file coverage: '${coverage.path}' reports ${String(coverage.total_lines)} ` +
520
+ `total_lines, not the bound ${String(boundLines)}`);
466
521
  }
467
522
  coveragePaths.add(coverage.path);
468
523
  }
469
- if (coveragePaths.size !== item.scope.files.length ||
470
- item.scope.files.some((path) => !coveragePaths.has(path))) {
471
- return null;
524
+ const uncovered = item.scope.files.filter((path) => !coveragePaths.has(path));
525
+ if (uncovered.length > 0 || coveragePaths.size !== item.scope.files.length) {
526
+ return refuse(uncovered.length > 0
527
+ ? `file coverage: the assigned scope is not fully covered (missing ${uncovered.join(", ")})`
528
+ : "file coverage: entries do not match the assigned scope exactly");
472
529
  }
473
- return JSON.parse(stableStringify(value));
530
+ return {
531
+ ok: true,
532
+ result: JSON.parse(stableStringify(value)),
533
+ };
474
534
  }
475
535
  function toAuditResult(result, binding) {
476
536
  const parsed = AuditResultSchema.safeParse({
@@ -488,7 +548,15 @@ function toAuditResult(result, binding) {
488
548
  reviewed_clean: result.findings.length === 0,
489
549
  run_id: result.run_id,
490
550
  });
491
- return parsed.success ? parsed.data : null;
551
+ if (parsed.success)
552
+ return { ok: true, auditResult: parsed.data };
553
+ const issue = parsed.error.issues[0];
554
+ return {
555
+ ok: false,
556
+ detail: issue === undefined
557
+ ? "the converted AuditResult is invalid"
558
+ : `${issueLocation("audit_result", issue.path)}: ${issue.message}`,
559
+ };
492
560
  }
493
561
  /**
494
562
  * Read one bound submission and CLASSIFY the outcome. Every failure names
@@ -517,19 +585,22 @@ async function readSubmittedResult(absolutePath, boundPath, runId, item, binding
517
585
  },
518
586
  };
519
587
  }
520
- const result = parseHostResult(read.value, runId, item, binding);
521
- if (result === null) {
588
+ const parsed = parseHostResult(read.value, runId, item, binding);
589
+ if (!parsed.ok) {
522
590
  return {
523
591
  ok: false,
524
592
  issue: {
525
593
  code: "submission_contract_invalid",
594
+ // The detail NAMES its own category. The message must never enumerate
595
+ // categories the submission satisfied — that is how four correct-identity
596
+ // results read as an identity problem for a whole lap.
526
597
  message: `work item '${item.id}' submitted JSON that does not satisfy the audit host ` +
527
- `result contract (identity, prompt binding, or file coverage)`,
598
+ `result contract: ${parsed.detail}`,
528
599
  ...locators,
529
600
  },
530
601
  };
531
602
  }
532
- return { ok: true, result };
603
+ return { ok: true, result: parsed.result };
533
604
  }
534
605
  export async function ingestAuditHostResults(params) {
535
606
  const paths = resolveBoundaryPaths(params);
@@ -542,6 +613,8 @@ export async function ingestAuditHostResults(params) {
542
613
  const resultIds = new Set(accepted.entries.map((entry) => entry.result_id));
543
614
  const additions = [];
544
615
  const issues = [];
616
+ // One memoized reader for the whole ingest: N findings citing one file read it once.
617
+ const readSource = createMemoizedSourceReader();
545
618
  for (const entry of resultMap.entries) {
546
619
  if (acceptedBindings.has(bindingIdentity(entry)))
547
620
  continue;
@@ -566,17 +639,25 @@ export async function ingestAuditHostResults(params) {
566
639
  });
567
640
  continue;
568
641
  }
569
- const auditResult = toAuditResult(result, binding);
570
- if (auditResult === null) {
642
+ const converted = toAuditResult(result, binding);
643
+ if (!converted.ok) {
571
644
  issues.push({
572
645
  code: "submission_contract_invalid",
573
646
  message: `work item '${entry.work_item_id}' submitted a result that does not convert to ` +
574
- `an AuditResult (coverage or finding shape)`,
647
+ `an AuditResult: ${converted.detail}`,
575
648
  work_item_id: entry.work_item_id,
576
649
  result_path: entry.result_path,
577
650
  });
578
651
  continue;
579
652
  }
653
+ // S7 quote-and-verify: the tool re-reads each cited span from disk and
654
+ // stamps the verdict. It NEVER rejects — a quote that does not re-verify
655
+ // rides through as `ungrounded` and synthesis surfaces it under "Ungrounded
656
+ // Findings (not confirmed)"; refusing here would discard the whole
657
+ // submission over one bad citation.
658
+ for (const finding of converted.auditResult.findings) {
659
+ finding.grounding = await verifyFindingGrounding(paths.root, finding, readSource);
660
+ }
580
661
  resultIds.add(result.result_id);
581
662
  additions.push({
582
663
  work_item_id: entry.work_item_id,
@@ -585,7 +666,7 @@ export async function ingestAuditHostResults(params) {
585
666
  result_id: result.result_id,
586
667
  result_sha256: hashContent(stableStringify(result)),
587
668
  result,
588
- audit_result: auditResult,
669
+ audit_result: converted.auditResult,
589
670
  });
590
671
  }
591
672
  let ledger = accepted;