audit-tools 0.51.7 → 0.51.10

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 (665) hide show
  1. package/dist/audit/clarification/blastRadius.d.ts +17 -16
  2. package/dist/audit/clarification/blastRadius.d.ts.map +1 -1
  3. package/dist/audit/clarification/blastRadius.js +48 -44
  4. package/dist/audit/clarification/blastRadius.js.map +1 -1
  5. package/dist/audit/clarification/dials.d.ts +4 -4
  6. package/dist/audit/clarification/dials.d.ts.map +1 -1
  7. package/dist/audit/clarification/dials.js +1 -0
  8. package/dist/audit/clarification/dials.js.map +1 -1
  9. package/dist/audit/clarification/partition.d.ts +12 -21
  10. package/dist/audit/clarification/partition.d.ts.map +1 -1
  11. package/dist/audit/clarification/partition.js +52 -59
  12. package/dist/audit/clarification/partition.js.map +1 -1
  13. package/dist/audit/clarification/riskGate.d.ts +2 -2
  14. package/dist/audit/clarification/riskGate.d.ts.map +1 -1
  15. package/dist/audit/clarification/riskGate.js +1 -0
  16. package/dist/audit/clarification/riskGate.js.map +1 -1
  17. package/dist/audit/clarification/voiQueue.d.ts +3 -3
  18. package/dist/audit/clarification/voiQueue.d.ts.map +1 -1
  19. package/dist/audit/clarification/voiQueue.js +1 -0
  20. package/dist/audit/clarification/voiQueue.js.map +1 -1
  21. package/dist/audit/cli/auditStep.d.ts +14 -2
  22. package/dist/audit/cli/auditStep.d.ts.map +1 -1
  23. package/dist/audit/cli/auditStep.js +13 -5
  24. package/dist/audit/cli/auditStep.js.map +1 -1
  25. package/dist/audit/cli/charterClarificationPrompt.d.ts +6 -9
  26. package/dist/audit/cli/charterClarificationPrompt.d.ts.map +1 -1
  27. package/dist/audit/cli/charterClarificationPrompt.js +35 -47
  28. package/dist/audit/cli/charterClarificationPrompt.js.map +1 -1
  29. package/dist/audit/cli/charterComparisonPrompt.d.ts +14 -0
  30. package/dist/audit/cli/charterComparisonPrompt.d.ts.map +1 -0
  31. package/dist/audit/cli/charterComparisonPrompt.js +111 -0
  32. package/dist/audit/cli/charterComparisonPrompt.js.map +1 -0
  33. package/dist/audit/cli/charterExtractionPrompt.d.ts +14 -17
  34. package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
  35. package/dist/audit/cli/charterExtractionPrompt.js +81 -104
  36. package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
  37. package/dist/audit/cli/charterFidelityPrompt.d.ts +14 -0
  38. package/dist/audit/cli/charterFidelityPrompt.d.ts.map +1 -0
  39. package/dist/audit/cli/charterFidelityPrompt.js +58 -0
  40. package/dist/audit/cli/charterFidelityPrompt.js.map +1 -0
  41. package/dist/audit/cli/conceptualDispatch.d.ts +39 -6
  42. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  43. package/dist/audit/cli/conceptualDispatch.js +59 -12
  44. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  45. package/dist/audit/cli/confirmIntentStep.d.ts.map +1 -1
  46. package/dist/audit/cli/confirmIntentStep.js +46 -2
  47. package/dist/audit/cli/confirmIntentStep.js.map +1 -1
  48. package/dist/audit/cli/dispatch/hostHandoff.d.ts +18 -6
  49. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  50. package/dist/audit/cli/dispatch/hostHandoff.js +525 -67
  51. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  52. package/dist/audit/cli/fanoutLanes.d.ts +24 -0
  53. package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
  54. package/dist/audit/cli/fanoutLanes.js +9 -1
  55. package/dist/audit/cli/fanoutLanes.js.map +1 -1
  56. package/dist/audit/cli/foldTransaction.d.ts.map +1 -1
  57. package/dist/audit/cli/foldTransaction.js +14 -3
  58. package/dist/audit/cli/foldTransaction.js.map +1 -1
  59. package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
  60. package/dist/audit/cli/forceSynthesisCommand.js +4 -1
  61. package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
  62. package/dist/audit/cli/intakeCommand.d.ts.map +1 -1
  63. package/dist/audit/cli/intakeCommand.js +1 -0
  64. package/dist/audit/cli/intakeCommand.js.map +1 -1
  65. package/dist/audit/cli/laneSubmissions.d.ts +18 -12
  66. package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
  67. package/dist/audit/cli/laneSubmissions.js +40 -4
  68. package/dist/audit/cli/laneSubmissions.js.map +1 -1
  69. package/dist/audit/cli/laneValidators.d.ts.map +1 -1
  70. package/dist/audit/cli/laneValidators.js +14 -14
  71. package/dist/audit/cli/laneValidators.js.map +1 -1
  72. package/dist/audit/cli/nextStepCommand.d.ts +7 -0
  73. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  74. package/dist/audit/cli/nextStepCommand.js +206 -31
  75. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  76. package/dist/audit/cli/nextStepHelpers.d.ts +92 -28
  77. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  78. package/dist/audit/cli/nextStepHelpers.js +363 -126
  79. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  80. package/dist/audit/cli/prompts.d.ts +10 -0
  81. package/dist/audit/cli/prompts.d.ts.map +1 -1
  82. package/dist/audit/cli/prompts.js +3 -1
  83. package/dist/audit/cli/prompts.js.map +1 -1
  84. package/dist/audit/cli/reviewRun.d.ts +12 -0
  85. package/dist/audit/cli/reviewRun.d.ts.map +1 -1
  86. package/dist/audit/cli/reviewRun.js +242 -29
  87. package/dist/audit/cli/reviewRun.js.map +1 -1
  88. package/dist/audit/cli/sampleRunCommand.d.ts +12 -4
  89. package/dist/audit/cli/sampleRunCommand.d.ts.map +1 -1
  90. package/dist/audit/cli/semanticReviewStep.d.ts +9 -0
  91. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  92. package/dist/audit/cli/semanticReviewStep.js +71 -30
  93. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  94. package/dist/audit/cli/statusCommand.d.ts.map +1 -1
  95. package/dist/audit/cli/statusCommand.js +29 -66
  96. package/dist/audit/cli/statusCommand.js.map +1 -1
  97. package/dist/audit/cli/stepScaffold.d.ts +43 -2
  98. package/dist/audit/cli/stepScaffold.d.ts.map +1 -1
  99. package/dist/audit/cli/stepScaffold.js +24 -10
  100. package/dist/audit/cli/stepScaffold.js.map +1 -1
  101. package/dist/audit/cli/steps.d.ts +52 -29
  102. package/dist/audit/cli/steps.d.ts.map +1 -1
  103. package/dist/audit/cli/steps.js +44 -14
  104. package/dist/audit/cli/steps.js.map +1 -1
  105. package/dist/audit/cli/synthesizeCommand.d.ts.map +1 -1
  106. package/dist/audit/cli/synthesizeCommand.js +4 -1
  107. package/dist/audit/cli/synthesizeCommand.js.map +1 -1
  108. package/dist/audit/contracts/workerSchemas.d.ts +65 -16
  109. package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
  110. package/dist/audit/contracts/workerSchemas.js +89 -8
  111. package/dist/audit/contracts/workerSchemas.js.map +1 -1
  112. package/dist/audit/contracts/wrapperResponse.d.ts +14 -21
  113. package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
  114. package/dist/audit/contracts/wrapperResponse.js +0 -1
  115. package/dist/audit/contracts/wrapperResponse.js.map +1 -1
  116. package/dist/audit/decompose/findings.d.ts.map +1 -1
  117. package/dist/audit/decompose/findings.js +10 -2
  118. package/dist/audit/decompose/findings.js.map +1 -1
  119. package/dist/audit/extractors/designAssessment.d.ts.map +1 -1
  120. package/dist/audit/extractors/designAssessment.js +13 -4
  121. package/dist/audit/extractors/designAssessment.js.map +1 -1
  122. package/dist/audit/extractors/disposition.d.ts.map +1 -1
  123. package/dist/audit/extractors/disposition.js +17 -5
  124. package/dist/audit/extractors/disposition.js.map +1 -1
  125. package/dist/audit/extractors/graph.d.ts +1 -1
  126. package/dist/audit/extractors/graph.js +1 -1
  127. package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
  128. package/dist/audit/extractors/graphRoutes.js +224 -17
  129. package/dist/audit/extractors/graphRoutes.js.map +1 -1
  130. package/dist/audit/extractors/leadLineage.d.ts +10 -0
  131. package/dist/audit/extractors/leadLineage.d.ts.map +1 -0
  132. package/dist/audit/extractors/leadLineage.js +44 -0
  133. package/dist/audit/extractors/leadLineage.js.map +1 -0
  134. package/dist/audit/io/artifacts.d.ts.map +1 -1
  135. package/dist/audit/io/artifacts.js +25 -8
  136. package/dist/audit/io/artifacts.js.map +1 -1
  137. package/dist/audit/io/runArtifacts.d.ts +76 -1
  138. package/dist/audit/io/runArtifacts.d.ts.map +1 -1
  139. package/dist/audit/io/runArtifacts.js +113 -20
  140. package/dist/audit/io/runArtifacts.js.map +1 -1
  141. package/dist/audit/io/toolingManifest.d.ts +15 -0
  142. package/dist/audit/io/toolingManifest.d.ts.map +1 -1
  143. package/dist/audit/io/toolingManifest.js +158 -11
  144. package/dist/audit/io/toolingManifest.js.map +1 -1
  145. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  146. package/dist/audit/orchestrator/advance.js +30 -4
  147. package/dist/audit/orchestrator/advance.js.map +1 -1
  148. package/dist/audit/orchestrator/advanceTypes.d.ts +28 -5
  149. package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
  150. package/dist/audit/orchestrator/artifactMetadata.d.ts.map +1 -1
  151. package/dist/audit/orchestrator/artifactMetadata.js +39 -1
  152. package/dist/audit/orchestrator/artifactMetadata.js.map +1 -1
  153. package/dist/audit/orchestrator/auditTaskUtils.d.ts.map +1 -1
  154. package/dist/audit/orchestrator/auditTaskUtils.js +4 -1
  155. package/dist/audit/orchestrator/auditTaskUtils.js.map +1 -1
  156. package/dist/audit/orchestrator/charterClarificationExecutor.d.ts +11 -17
  157. package/dist/audit/orchestrator/charterClarificationExecutor.d.ts.map +1 -1
  158. package/dist/audit/orchestrator/charterClarificationExecutor.js +61 -93
  159. package/dist/audit/orchestrator/charterClarificationExecutor.js.map +1 -1
  160. package/dist/audit/orchestrator/charterComparisonExecutor.d.ts +24 -0
  161. package/dist/audit/orchestrator/charterComparisonExecutor.d.ts.map +1 -0
  162. package/dist/audit/orchestrator/charterComparisonExecutor.js +110 -0
  163. package/dist/audit/orchestrator/charterComparisonExecutor.js.map +1 -0
  164. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts +34 -20
  165. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
  166. package/dist/audit/orchestrator/charterExtractionExecutor.js +80 -106
  167. package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
  168. package/dist/audit/orchestrator/charterFidelityExecutor.d.ts +20 -0
  169. package/dist/audit/orchestrator/charterFidelityExecutor.d.ts.map +1 -0
  170. package/dist/audit/orchestrator/charterFidelityExecutor.js +76 -0
  171. package/dist/audit/orchestrator/charterFidelityExecutor.js.map +1 -0
  172. package/dist/audit/orchestrator/charterFidelityPacket.d.ts +7 -0
  173. package/dist/audit/orchestrator/charterFidelityPacket.d.ts.map +1 -0
  174. package/dist/audit/orchestrator/charterFidelityPacket.js +68 -0
  175. package/dist/audit/orchestrator/charterFidelityPacket.js.map +1 -0
  176. package/dist/audit/orchestrator/dependencyMap.d.ts.map +1 -1
  177. package/dist/audit/orchestrator/dependencyMap.js +9 -8
  178. package/dist/audit/orchestrator/dependencyMap.js.map +1 -1
  179. package/dist/audit/orchestrator/dependencySlices.d.ts.map +1 -1
  180. package/dist/audit/orchestrator/dependencySlices.js +7 -6
  181. package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
  182. package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
  183. package/dist/audit/orchestrator/designReviewProjection.js +7 -0
  184. package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
  185. package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
  186. package/dist/audit/orchestrator/designReviewPrompt.js +58 -19
  187. package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
  188. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  189. package/dist/audit/orchestrator/executorRunners.js +6 -2
  190. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  191. package/dist/audit/orchestrator/executors.d.ts.map +1 -1
  192. package/dist/audit/orchestrator/executors.js +22 -8
  193. package/dist/audit/orchestrator/executors.js.map +1 -1
  194. package/dist/audit/orchestrator/hostInputPause.js +1 -0
  195. package/dist/audit/orchestrator/hostInputPause.js.map +1 -1
  196. package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts +40 -0
  197. package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts.map +1 -1
  198. package/dist/audit/orchestrator/intentCheckpointExecutor.js +32 -2
  199. package/dist/audit/orchestrator/intentCheckpointExecutor.js.map +1 -1
  200. package/dist/audit/orchestrator/intentCheckpointGate.d.ts +5 -3
  201. package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
  202. package/dist/audit/orchestrator/intentCheckpointGate.js +34 -5
  203. package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
  204. package/dist/audit/orchestrator/intentEquivalenceExecutor.d.ts +2 -2
  205. package/dist/audit/orchestrator/intentInterpreter.d.ts +1 -1
  206. package/dist/audit/orchestrator/intentInterpreter.js +1 -1
  207. package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
  208. package/dist/audit/orchestrator/nextStep.js +3 -1
  209. package/dist/audit/orchestrator/nextStep.js.map +1 -1
  210. package/dist/audit/orchestrator/obligationPolicy.d.ts +2 -1
  211. package/dist/audit/orchestrator/obligationPolicy.d.ts.map +1 -1
  212. package/dist/audit/orchestrator/obligationPolicy.js +19 -7
  213. package/dist/audit/orchestrator/obligationPolicy.js.map +1 -1
  214. package/dist/audit/orchestrator/partitionTaskGraph.d.ts.map +1 -1
  215. package/dist/audit/orchestrator/partitionTaskGraph.js +1 -0
  216. package/dist/audit/orchestrator/partitionTaskGraph.js.map +1 -1
  217. package/dist/audit/orchestrator/resultIngestion.d.ts.map +1 -1
  218. package/dist/audit/orchestrator/resultIngestion.js +3 -1
  219. package/dist/audit/orchestrator/resultIngestion.js.map +1 -1
  220. package/dist/audit/orchestrator/runtimeCommand.d.ts +72 -0
  221. package/dist/audit/orchestrator/runtimeCommand.d.ts.map +1 -1
  222. package/dist/audit/orchestrator/runtimeCommand.js +177 -20
  223. package/dist/audit/orchestrator/runtimeCommand.js.map +1 -1
  224. package/dist/audit/orchestrator/scopeIndexBaseline.d.ts +56 -0
  225. package/dist/audit/orchestrator/scopeIndexBaseline.d.ts.map +1 -0
  226. package/dist/audit/orchestrator/scopeIndexBaseline.js +114 -0
  227. package/dist/audit/orchestrator/scopeIndexBaseline.js.map +1 -0
  228. package/dist/audit/orchestrator/staleness.d.ts +70 -1
  229. package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
  230. package/dist/audit/orchestrator/staleness.js +171 -21
  231. package/dist/audit/orchestrator/staleness.js.map +1 -1
  232. package/dist/audit/orchestrator/state.d.ts.map +1 -1
  233. package/dist/audit/orchestrator/state.js +49 -25
  234. package/dist/audit/orchestrator/state.js.map +1 -1
  235. package/dist/audit/orchestrator/structureExecutors.d.ts.map +1 -1
  236. package/dist/audit/orchestrator/structureExecutors.js +7 -5
  237. package/dist/audit/orchestrator/structureExecutors.js.map +1 -1
  238. package/dist/audit/orchestrator/syntaxResolutionExecutor.d.ts.map +1 -1
  239. package/dist/audit/orchestrator/syntaxResolutionExecutor.js +1 -0
  240. package/dist/audit/orchestrator/syntaxResolutionExecutor.js.map +1 -1
  241. package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts +13 -2
  242. package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts.map +1 -1
  243. package/dist/audit/orchestrator/systemicChallengeExecutor.js +166 -12
  244. package/dist/audit/orchestrator/systemicChallengeExecutor.js.map +1 -1
  245. package/dist/audit/reporting/mergeFindings.d.ts.map +1 -1
  246. package/dist/audit/reporting/mergeFindings.js +6 -5
  247. package/dist/audit/reporting/mergeFindings.js.map +1 -1
  248. package/dist/audit/reporting/synthesis.d.ts +117 -0
  249. package/dist/audit/reporting/synthesis.d.ts.map +1 -1
  250. package/dist/audit/reporting/synthesis.js +277 -10
  251. package/dist/audit/reporting/synthesis.js.map +1 -1
  252. package/dist/audit/supervisor/operatorHandoff.d.ts +0 -2
  253. package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
  254. package/dist/audit/supervisor/operatorHandoff.js +0 -3
  255. package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
  256. package/dist/audit/systemic/coveredThemes.d.ts +28 -0
  257. package/dist/audit/systemic/coveredThemes.d.ts.map +1 -0
  258. package/dist/audit/systemic/coveredThemes.js +52 -0
  259. package/dist/audit/systemic/coveredThemes.js.map +1 -0
  260. package/dist/audit/systemic/reviewFileMap.d.ts +81 -0
  261. package/dist/audit/systemic/reviewFileMap.d.ts.map +1 -0
  262. package/dist/audit/systemic/reviewFileMap.js +169 -0
  263. package/dist/audit/systemic/reviewFileMap.js.map +1 -0
  264. package/dist/audit/systemic/secondOrderAdversaryPrompt.d.ts.map +1 -1
  265. package/dist/audit/systemic/secondOrderAdversaryPrompt.js +149 -26
  266. package/dist/audit/systemic/secondOrderAdversaryPrompt.js.map +1 -1
  267. package/dist/audit/systemic/systemicChallengeLoop.d.ts +44 -4
  268. package/dist/audit/systemic/systemicChallengeLoop.d.ts.map +1 -1
  269. package/dist/audit/systemic/systemicChallengeLoop.js +114 -10
  270. package/dist/audit/systemic/systemicChallengeLoop.js.map +1 -1
  271. package/dist/audit/types/auditState.d.ts +6 -6
  272. package/dist/audit/types/charterClarification.d.ts +9 -4
  273. package/dist/audit/types/charterClarification.d.ts.map +1 -1
  274. package/dist/audit/types/charterRegister.d.ts +48 -93
  275. package/dist/audit/types/charterRegister.d.ts.map +1 -1
  276. package/dist/audit/types/charterRegister.js +15 -26
  277. package/dist/audit/types/charterRegister.js.map +1 -1
  278. package/dist/audit/types/conceptualAdjudication.d.ts +88 -18
  279. package/dist/audit/types/conceptualAdjudication.d.ts.map +1 -1
  280. package/dist/audit/types/conceptualAdjudication.js +77 -16
  281. package/dist/audit/types/conceptualAdjudication.js.map +1 -1
  282. package/dist/audit/types/designAssessment.d.ts +8 -6
  283. package/dist/audit/types/designAssessment.d.ts.map +1 -1
  284. package/dist/audit/types/reviewPlanning.d.ts +2 -2
  285. package/dist/audit/types/systemicChallenge.d.ts +43 -7
  286. package/dist/audit/types/systemicChallenge.d.ts.map +1 -1
  287. package/dist/audit/types.d.ts +71 -10
  288. package/dist/audit/types.d.ts.map +1 -1
  289. package/dist/audit/types.js +23 -2
  290. package/dist/audit/types.js.map +1 -1
  291. package/dist/audit/validation/auditResults.d.ts +30 -0
  292. package/dist/audit/validation/auditResults.d.ts.map +1 -1
  293. package/dist/audit/validation/auditResults.js +50 -8
  294. package/dist/audit/validation/auditResults.js.map +1 -1
  295. package/dist/audit/validation/ingestIssueCodes.d.ts +1 -1
  296. package/dist/audit/validation/ingestIssueCodes.d.ts.map +1 -1
  297. package/dist/audit/validation/ingestIssueCodes.js +14 -0
  298. package/dist/audit/validation/ingestIssueCodes.js.map +1 -1
  299. package/dist/remediate/contractPipeline/artifactStore.d.ts +97 -2
  300. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
  301. package/dist/remediate/contractPipeline/artifactStore.js +163 -9
  302. package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
  303. package/dist/remediate/contractPipeline/changeClassification.d.ts.map +1 -1
  304. package/dist/remediate/contractPipeline/changeClassification.js +93 -3
  305. package/dist/remediate/contractPipeline/changeClassification.js.map +1 -1
  306. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +1 -1
  307. package/dist/remediate/contractPipeline/cyclicSeamResolution.js +31 -0
  308. package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +1 -1
  309. package/dist/remediate/contractPipeline/derive.d.ts +0 -14
  310. package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
  311. package/dist/remediate/contractPipeline/derive.js +52 -24
  312. package/dist/remediate/contractPipeline/derive.js.map +1 -1
  313. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts +50 -0
  314. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts.map +1 -0
  315. package/dist/remediate/contractPipeline/finalizedContractFields.js +77 -0
  316. package/dist/remediate/contractPipeline/finalizedContractFields.js.map +1 -0
  317. package/dist/remediate/contractPipeline/idRegistry.d.ts +85 -0
  318. package/dist/remediate/contractPipeline/idRegistry.d.ts.map +1 -1
  319. package/dist/remediate/contractPipeline/idRegistry.js +147 -0
  320. package/dist/remediate/contractPipeline/idRegistry.js.map +1 -1
  321. package/dist/remediate/contractPipeline/phaseCut.d.ts +13 -16
  322. package/dist/remediate/contractPipeline/phaseCut.d.ts.map +1 -1
  323. package/dist/remediate/contractPipeline/phaseCut.js +15 -30
  324. package/dist/remediate/contractPipeline/phaseCut.js.map +1 -1
  325. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts +20 -1
  326. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts.map +1 -1
  327. package/dist/remediate/contractPipeline/reviewSnapshot.js +23 -7
  328. package/dist/remediate/contractPipeline/reviewSnapshot.js.map +1 -1
  329. package/dist/remediate/contractPipeline/semanticProjection.d.ts +17 -0
  330. package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +1 -1
  331. package/dist/remediate/contractPipeline/semanticProjection.js +6 -9
  332. package/dist/remediate/contractPipeline/semanticProjection.js.map +1 -1
  333. package/dist/remediate/contractPipeline/sketchSource.d.ts +183 -0
  334. package/dist/remediate/contractPipeline/sketchSource.d.ts.map +1 -0
  335. package/dist/remediate/contractPipeline/sketchSource.js +255 -0
  336. package/dist/remediate/contractPipeline/sketchSource.js.map +1 -0
  337. package/dist/remediate/findingFilter.d.ts.map +1 -1
  338. package/dist/remediate/findingFilter.js +1 -0
  339. package/dist/remediate/findingFilter.js.map +1 -1
  340. package/dist/remediate/index.d.ts +81 -0
  341. package/dist/remediate/index.d.ts.map +1 -1
  342. package/dist/remediate/index.js +162 -53
  343. package/dist/remediate/index.js.map +1 -1
  344. package/dist/remediate/intake.d.ts +43 -0
  345. package/dist/remediate/intake.d.ts.map +1 -1
  346. package/dist/remediate/intake.js +82 -13
  347. package/dist/remediate/intake.js.map +1 -1
  348. package/dist/remediate/phases/close.d.ts +33 -2
  349. package/dist/remediate/phases/close.d.ts.map +1 -1
  350. package/dist/remediate/phases/close.js +227 -13
  351. package/dist/remediate/phases/close.js.map +1 -1
  352. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts +154 -0
  353. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts.map +1 -0
  354. package/dist/remediate/phases/closeVerifyHeadEvidence.js +242 -0
  355. package/dist/remediate/phases/closeVerifyHeadEvidence.js.map +1 -0
  356. package/dist/remediate/state/runStatus.d.ts +35 -0
  357. package/dist/remediate/state/runStatus.d.ts.map +1 -0
  358. package/dist/remediate/state/runStatus.js +46 -0
  359. package/dist/remediate/state/runStatus.js.map +1 -0
  360. package/dist/remediate/state/store.d.ts +52 -2
  361. package/dist/remediate/state/store.d.ts.map +1 -1
  362. package/dist/remediate/state/store.js +124 -21
  363. package/dist/remediate/state/store.js.map +1 -1
  364. package/dist/remediate/state/types.d.ts +83 -13
  365. package/dist/remediate/state/types.d.ts.map +1 -1
  366. package/dist/remediate/steps/contractPipeline.d.ts +65 -1
  367. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  368. package/dist/remediate/steps/contractPipeline.js +302 -85
  369. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  370. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  371. package/dist/remediate/steps/contractPipelinePrompts.js +58 -21
  372. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  373. package/dist/remediate/steps/dispatch/hostHandoff.d.ts +87 -2
  374. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  375. package/dist/remediate/steps/dispatch/hostHandoff.js +344 -44
  376. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  377. package/dist/remediate/steps/finalGate.d.ts +109 -5
  378. package/dist/remediate/steps/finalGate.d.ts.map +1 -1
  379. package/dist/remediate/steps/finalGate.js +135 -27
  380. package/dist/remediate/steps/finalGate.js.map +1 -1
  381. package/dist/remediate/steps/gateCommands.d.ts +167 -0
  382. package/dist/remediate/steps/gateCommands.d.ts.map +1 -1
  383. package/dist/remediate/steps/gateCommands.js +428 -1
  384. package/dist/remediate/steps/gateCommands.js.map +1 -1
  385. package/dist/remediate/steps/intakeResolver.d.ts +2 -13
  386. package/dist/remediate/steps/intakeResolver.d.ts.map +1 -1
  387. package/dist/remediate/steps/intakeResolver.js +22 -4
  388. package/dist/remediate/steps/intakeResolver.js.map +1 -1
  389. package/dist/remediate/steps/nextStep.d.ts +44 -40
  390. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  391. package/dist/remediate/steps/nextStep.js +501 -106
  392. package/dist/remediate/steps/nextStep.js.map +1 -1
  393. package/dist/remediate/steps/stepWriter.d.ts +1 -1
  394. package/dist/remediate/steps/stepWriter.d.ts.map +1 -1
  395. package/dist/remediate/steps/stepWriter.js +1 -0
  396. package/dist/remediate/steps/stepWriter.js.map +1 -1
  397. package/dist/remediate/steps/types.d.ts +32 -1
  398. package/dist/remediate/steps/types.d.ts.map +1 -1
  399. package/dist/remediate/steps/types.js +1 -0
  400. package/dist/remediate/steps/types.js.map +1 -1
  401. package/dist/remediate/types/options.d.ts +8 -0
  402. package/dist/remediate/types/options.d.ts.map +1 -1
  403. package/dist/remediate/utils/fileIntegrity.d.ts +8 -0
  404. package/dist/remediate/utils/fileIntegrity.d.ts.map +1 -1
  405. package/dist/remediate/utils/fileIntegrity.js +12 -1
  406. package/dist/remediate/utils/fileIntegrity.js.map +1 -1
  407. package/dist/remediate/validation/artifacts.d.ts +1 -1
  408. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  409. package/dist/remediate/validation/artifacts.js +19 -2
  410. package/dist/remediate/validation/artifacts.js.map +1 -1
  411. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  412. package/dist/remediate/validation/contractPipeline.js +26 -39
  413. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  414. package/dist/remediate/validation/contractPipelineGates.d.ts +18 -1
  415. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  416. package/dist/remediate/validation/contractPipelineGates.js +33 -5
  417. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  418. package/dist/shared/analyzers/acquisitionEngine.d.ts +83 -5
  419. package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
  420. package/dist/shared/analyzers/acquisitionEngine.js +46 -14
  421. package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
  422. package/dist/shared/analyzers/binaryAcquisition.d.ts +35 -2
  423. package/dist/shared/analyzers/binaryAcquisition.d.ts.map +1 -1
  424. package/dist/shared/analyzers/binaryAcquisition.js +5 -5
  425. package/dist/shared/analyzers/binaryAcquisition.js.map +1 -1
  426. package/dist/shared/analyzers/candidates.d.ts.map +1 -1
  427. package/dist/shared/analyzers/candidates.js +1 -0
  428. package/dist/shared/analyzers/candidates.js.map +1 -1
  429. package/dist/shared/analyzers/clippy.d.ts +9 -1
  430. package/dist/shared/analyzers/clippy.d.ts.map +1 -1
  431. package/dist/shared/analyzers/clippy.js +10 -2
  432. package/dist/shared/analyzers/clippy.js.map +1 -1
  433. package/dist/shared/analyzers/normalizeExternal.d.ts.map +1 -1
  434. package/dist/shared/analyzers/normalizeExternal.js +1 -0
  435. package/dist/shared/analyzers/normalizeExternal.js.map +1 -1
  436. package/dist/shared/analyzers/rubocop.d.ts +7 -1
  437. package/dist/shared/analyzers/rubocop.d.ts.map +1 -1
  438. package/dist/shared/analyzers/rubocop.js +8 -2
  439. package/dist/shared/analyzers/rubocop.js.map +1 -1
  440. package/dist/shared/analyzers/types.d.ts +24 -24
  441. package/dist/shared/analyzers/types.d.ts.map +1 -1
  442. package/dist/shared/analyzers/types.js +15 -0
  443. package/dist/shared/analyzers/types.js.map +1 -1
  444. package/dist/shared/artifactFreshness.d.ts.map +1 -1
  445. package/dist/shared/artifactFreshness.js +42 -7
  446. package/dist/shared/artifactFreshness.js.map +1 -1
  447. package/dist/shared/chunkByBudget.d.ts.map +1 -1
  448. package/dist/shared/chunkByBudget.js.map +1 -1
  449. package/dist/shared/continuityScore.d.ts.map +1 -1
  450. package/dist/shared/continuityScore.js +12 -4
  451. package/dist/shared/continuityScore.js.map +1 -1
  452. package/dist/shared/decompose/charterClarification.d.ts +49 -45
  453. package/dist/shared/decompose/charterClarification.d.ts.map +1 -1
  454. package/dist/shared/decompose/charterClarification.js +50 -57
  455. package/dist/shared/decompose/charterClarification.js.map +1 -1
  456. package/dist/shared/decompose/charterExtraction.d.ts +616 -342
  457. package/dist/shared/decompose/charterExtraction.d.ts.map +1 -1
  458. package/dist/shared/decompose/charterExtraction.js +590 -488
  459. package/dist/shared/decompose/charterExtraction.js.map +1 -1
  460. package/dist/shared/decompose/contentCoherence.d.ts +36 -2
  461. package/dist/shared/decompose/contentCoherence.d.ts.map +1 -1
  462. package/dist/shared/decompose/contentCoherence.js +45 -5
  463. package/dist/shared/decompose/contentCoherence.js.map +1 -1
  464. package/dist/shared/decompose/modularity.d.ts +98 -1
  465. package/dist/shared/decompose/modularity.d.ts.map +1 -1
  466. package/dist/shared/decompose/modularity.js +89 -8
  467. package/dist/shared/decompose/modularity.js.map +1 -1
  468. package/dist/shared/decompose/systemicChallenge.d.ts +111 -0
  469. package/dist/shared/decompose/systemicChallenge.d.ts.map +1 -1
  470. package/dist/shared/decompose/systemicChallenge.js +28 -0
  471. package/dist/shared/decompose/systemicChallenge.js.map +1 -1
  472. package/dist/shared/engine/obligationEngine.d.ts +2 -2
  473. package/dist/shared/engine/obligationEngine.d.ts.map +1 -1
  474. package/dist/shared/engine/obligationEngine.js +8 -2
  475. package/dist/shared/engine/obligationEngine.js.map +1 -1
  476. package/dist/shared/findingSimilarity.d.ts +8 -0
  477. package/dist/shared/findingSimilarity.d.ts.map +1 -1
  478. package/dist/shared/findingSimilarity.js +10 -3
  479. package/dist/shared/findingSimilarity.js.map +1 -1
  480. package/dist/shared/findings/dedupe.d.ts +15 -0
  481. package/dist/shared/findings/dedupe.d.ts.map +1 -1
  482. package/dist/shared/findings/dedupe.js +137 -1
  483. package/dist/shared/findings/dedupe.js.map +1 -1
  484. package/dist/shared/friction/frictionRecord.d.ts.map +1 -1
  485. package/dist/shared/friction/frictionRecord.js +14 -1
  486. package/dist/shared/friction/frictionRecord.js.map +1 -1
  487. package/dist/shared/friction/triage.d.ts +4 -0
  488. package/dist/shared/friction/triage.d.ts.map +1 -1
  489. package/dist/shared/friction/triage.js +41 -29
  490. package/dist/shared/friction/triage.js.map +1 -1
  491. package/dist/shared/git.d.ts +14 -0
  492. package/dist/shared/git.d.ts.map +1 -1
  493. package/dist/shared/git.js +22 -0
  494. package/dist/shared/git.js.map +1 -1
  495. package/dist/shared/index.d.ts +42 -38
  496. package/dist/shared/index.d.ts.map +1 -1
  497. package/dist/shared/index.js +35 -23
  498. package/dist/shared/index.js.map +1 -1
  499. package/dist/shared/intent/clauseBoundaries.d.ts +75 -0
  500. package/dist/shared/intent/clauseBoundaries.d.ts.map +1 -0
  501. package/dist/shared/intent/clauseBoundaries.js +134 -0
  502. package/dist/shared/intent/clauseBoundaries.js.map +1 -0
  503. package/dist/shared/intent/clauseInterpreter.d.ts +11 -5
  504. package/dist/shared/intent/clauseInterpreter.d.ts.map +1 -1
  505. package/dist/shared/intent/clauseInterpreter.js +16 -41
  506. package/dist/shared/intent/clauseInterpreter.js.map +1 -1
  507. package/dist/shared/intent/freeFormIntentInterpreter.d.ts +11 -0
  508. package/dist/shared/intent/freeFormIntentInterpreter.d.ts.map +1 -1
  509. package/dist/shared/intent/freeFormIntentInterpreter.js +31 -17
  510. package/dist/shared/intent/freeFormIntentInterpreter.js.map +1 -1
  511. package/dist/shared/io/fileLock.d.ts.map +1 -1
  512. package/dist/shared/io/fileLock.js +18 -6
  513. package/dist/shared/io/fileLock.js.map +1 -1
  514. package/dist/shared/io/frictionCapture.d.ts +25 -5
  515. package/dist/shared/io/frictionCapture.d.ts.map +1 -1
  516. package/dist/shared/io/frictionCapture.js +30 -9
  517. package/dist/shared/io/frictionCapture.js.map +1 -1
  518. package/dist/shared/io/schemaVersion.d.ts +4 -3
  519. package/dist/shared/io/schemaVersion.d.ts.map +1 -1
  520. package/dist/shared/io/schemaVersion.js +27 -4
  521. package/dist/shared/io/schemaVersion.js.map +1 -1
  522. package/dist/shared/io/stepContractWriter.d.ts +38 -4
  523. package/dist/shared/io/stepContractWriter.d.ts.map +1 -1
  524. package/dist/shared/io/stepContractWriter.js +59 -1
  525. package/dist/shared/io/stepContractWriter.js.map +1 -1
  526. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  527. package/dist/shared/loopCorePaths.js +8 -0
  528. package/dist/shared/loopCorePaths.js.map +1 -1
  529. package/dist/shared/opencodePermissions.d.ts +27 -3
  530. package/dist/shared/opencodePermissions.d.ts.map +1 -1
  531. package/dist/shared/opencodePermissions.js +77 -26
  532. package/dist/shared/opencodePermissions.js.map +1 -1
  533. package/dist/shared/prompts.d.ts +12 -1
  534. package/dist/shared/prompts.d.ts.map +1 -1
  535. package/dist/shared/prompts.js +11 -1
  536. package/dist/shared/prompts.js.map +1 -1
  537. package/dist/shared/reReview/projectionDiff.d.ts +13 -0
  538. package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
  539. package/dist/shared/reReview/projectionDiff.js +1 -1
  540. package/dist/shared/reReview/projectionDiff.js.map +1 -1
  541. package/dist/shared/reporting/findingDisplay.d.ts +7 -0
  542. package/dist/shared/reporting/findingDisplay.d.ts.map +1 -1
  543. package/dist/shared/reporting/findingDisplay.js +8 -1
  544. package/dist/shared/reporting/findingDisplay.js.map +1 -1
  545. package/dist/shared/steps/stepEmissionScaffold.d.ts +15 -3
  546. package/dist/shared/steps/stepEmissionScaffold.d.ts.map +1 -1
  547. package/dist/shared/steps/stepEmissionScaffold.js +8 -6
  548. package/dist/shared/steps/stepEmissionScaffold.js.map +1 -1
  549. package/dist/shared/submission/hostHandoffCore.d.ts +37 -12
  550. package/dist/shared/submission/hostHandoffCore.d.ts.map +1 -1
  551. package/dist/shared/submission/hostHandoffCore.js +81 -18
  552. package/dist/shared/submission/hostHandoffCore.js.map +1 -1
  553. package/dist/shared/submission/hostResultOutcomes.d.ts +70 -1
  554. package/dist/shared/submission/hostResultOutcomes.d.ts.map +1 -1
  555. package/dist/shared/submission/hostResultOutcomes.js +66 -1
  556. package/dist/shared/submission/hostResultOutcomes.js.map +1 -1
  557. package/dist/shared/submission/submissionLedger.d.ts +86 -1
  558. package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
  559. package/dist/shared/submission/submissionLedger.js +108 -0
  560. package/dist/shared/submission/submissionLedger.js.map +1 -1
  561. package/dist/shared/submission/submissionScan.d.ts.map +1 -1
  562. package/dist/shared/submission/submissionScan.js +1 -0
  563. package/dist/shared/submission/submissionScan.js.map +1 -1
  564. package/dist/shared/tooling/analyzerDeps.d.ts +14 -0
  565. package/dist/shared/tooling/analyzerDeps.d.ts.map +1 -1
  566. package/dist/shared/tooling/analyzerDeps.js +23 -0
  567. package/dist/shared/tooling/analyzerDeps.js.map +1 -1
  568. package/dist/shared/tooling/commandShape.d.ts +35 -1
  569. package/dist/shared/tooling/commandShape.d.ts.map +1 -1
  570. package/dist/shared/tooling/commandShape.js +66 -4
  571. package/dist/shared/tooling/commandShape.js.map +1 -1
  572. package/dist/shared/tooling/exec.d.ts +62 -4
  573. package/dist/shared/tooling/exec.d.ts.map +1 -1
  574. package/dist/shared/tooling/exec.js +127 -8
  575. package/dist/shared/tooling/exec.js.map +1 -1
  576. package/dist/shared/types/charter.d.ts +674 -156
  577. package/dist/shared/types/charter.d.ts.map +1 -1
  578. package/dist/shared/types/charter.js +172 -118
  579. package/dist/shared/types/charter.js.map +1 -1
  580. package/dist/shared/types/closingActions.d.ts +25 -0
  581. package/dist/shared/types/closingActions.d.ts.map +1 -1
  582. package/dist/shared/types/closingActions.js +26 -0
  583. package/dist/shared/types/closingActions.js.map +1 -1
  584. package/dist/shared/types/contractPipeline/obligations.d.ts +63 -2
  585. package/dist/shared/types/contractPipeline/obligations.d.ts.map +1 -1
  586. package/dist/shared/types/contractPipeline/obligations.js +51 -0
  587. package/dist/shared/types/contractPipeline/obligations.js.map +1 -1
  588. package/dist/shared/types/contractPipeline.d.ts +1 -0
  589. package/dist/shared/types/contractPipeline.d.ts.map +1 -1
  590. package/dist/shared/types/contractPipeline.js +1 -0
  591. package/dist/shared/types/contractPipeline.js.map +1 -1
  592. package/dist/shared/types/contractPropertyShapes.d.ts +34 -0
  593. package/dist/shared/types/contractPropertyShapes.d.ts.map +1 -0
  594. package/dist/shared/types/contractPropertyShapes.js +255 -0
  595. package/dist/shared/types/contractPropertyShapes.js.map +1 -0
  596. package/dist/shared/types/finding.d.ts +376 -18
  597. package/dist/shared/types/finding.d.ts.map +1 -1
  598. package/dist/shared/types/finding.js +111 -0
  599. package/dist/shared/types/finding.js.map +1 -1
  600. package/dist/shared/types/intentCheckpoint.d.ts +214 -2
  601. package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
  602. package/dist/shared/types/intentCheckpoint.js +273 -0
  603. package/dist/shared/types/intentCheckpoint.js.map +1 -1
  604. package/dist/shared/types/intentInterpretation.d.ts +1 -1
  605. package/dist/shared/types/intentInterpretation.js +1 -1
  606. package/dist/shared/types/remediationOutcome.d.ts +294 -30
  607. package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
  608. package/dist/shared/types/remediationOutcome.js +96 -7
  609. package/dist/shared/types/remediationOutcome.js.map +1 -1
  610. package/dist/shared/types/stepContract.d.ts +47 -0
  611. package/dist/shared/types/stepContract.d.ts.map +1 -1
  612. package/dist/shared/types/stepContract.js +113 -0
  613. package/dist/shared/types/stepContract.js.map +1 -1
  614. package/dist/shared/validation/charterGate.d.ts +13 -28
  615. package/dist/shared/validation/charterGate.d.ts.map +1 -1
  616. package/dist/shared/validation/charterGate.js +13 -35
  617. package/dist/shared/validation/charterGate.js.map +1 -1
  618. package/dist/shared/validation/contractConstructionSites.d.ts +116 -0
  619. package/dist/shared/validation/contractConstructionSites.d.ts.map +1 -0
  620. package/dist/shared/validation/contractConstructionSites.js +277 -0
  621. package/dist/shared/validation/contractConstructionSites.js.map +1 -0
  622. package/dist/shared/validation/designFindingGrounding.d.ts +33 -4
  623. package/dist/shared/validation/designFindingGrounding.d.ts.map +1 -1
  624. package/dist/shared/validation/designFindingGrounding.js +40 -6
  625. package/dist/shared/validation/designFindingGrounding.js.map +1 -1
  626. package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
  627. package/dist/shared/validation/findingGrounding.js +11 -1
  628. package/dist/shared/validation/findingGrounding.js.map +1 -1
  629. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  630. package/dist/shared/validation/findingsReport.js +5 -0
  631. package/dist/shared/validation/findingsReport.js.map +1 -1
  632. package/docs/audit-pkg/contracts.md +8 -2
  633. package/opencode.json +29 -29
  634. package/package.json +16 -3
  635. package/schemas/audit-code-v1alpha1.schema.json +0 -4
  636. package/scripts/audit/postinstall.mjs +81 -96
  637. package/scripts/remediate/postinstall.mjs +43 -83
  638. package/scripts/shared/host-asset-plan.mjs +176 -0
  639. package/scripts/shared/install-host-assets.mjs +44 -1
  640. package/scripts/shared/primitives.mjs +89 -0
  641. package/skills/audit-code/SKILL.md +4 -4
  642. package/skills/audit-code/audit-code.prompt.md +14 -10
  643. package/skills/remediate-code/SKILL.md +9 -5
  644. package/skills/remediate-code/remediate-code.prompt.md +11 -4
  645. package/wrapper/audit-code-wrapper-build.mjs +6 -3
  646. package/dist/audit/cli/charterDeltaPrompt.d.ts +0 -18
  647. package/dist/audit/cli/charterDeltaPrompt.d.ts.map +0 -1
  648. package/dist/audit/cli/charterDeltaPrompt.js +0 -150
  649. package/dist/audit/cli/charterDeltaPrompt.js.map +0 -1
  650. package/dist/audit/orchestrator/charterDeltaExecutor.d.ts +0 -24
  651. package/dist/audit/orchestrator/charterDeltaExecutor.d.ts.map +0 -1
  652. package/dist/audit/orchestrator/charterDeltaExecutor.js +0 -128
  653. package/dist/audit/orchestrator/charterDeltaExecutor.js.map +0 -1
  654. package/dist/audit/supervisor/runLedger.d.ts +0 -3
  655. package/dist/audit/supervisor/runLedger.d.ts.map +0 -1
  656. package/dist/audit/supervisor/runLedger.js +0 -69
  657. package/dist/audit/supervisor/runLedger.js.map +0 -1
  658. package/dist/shared/types/executionRecord.d.ts +0 -58
  659. package/dist/shared/types/executionRecord.d.ts.map +0 -1
  660. package/dist/shared/types/executionRecord.js +0 -26
  661. package/dist/shared/types/executionRecord.js.map +0 -1
  662. package/dist/shared/types/runLedger.d.ts +0 -17
  663. package/dist/shared/types/runLedger.d.ts.map +0 -1
  664. package/dist/shared/types/runLedger.js +0 -7
  665. package/dist/shared/types/runLedger.js.map +0 -1
@@ -15,8 +15,19 @@ import type { SystemicChallengeSubmission } from "audit-tools/shared";
15
15
  * - **run** (`deep`/`deepest` ceiling): assemble the metrics digest and fold each
16
16
  * submitted challenge round into the register. An EMPTY submission (a round that
17
17
  * surfaced nothing new) is a QUIET round; the register marks `converged` only
18
- * after {@link QUIET_ROUNDS_TO_CONVERGE} CONSECUTIVE quiet rounds. A non-empty
19
- * submission appends a round and keeps the loop open for the next round.
18
+ * after {@link QUIET_ROUNDS_TO_CONVERGE} CONSECUTIVE quiet rounds.
19
+ *
20
+ * A round ends the loop when it demonstrably went dry (two consecutive quiet rounds —
21
+ * `stop_reason: "converged"`), when the submission carries a host-forced stop
22
+ * (`"host_forced"`), or when it reaches {@link SYSTEMIC_ROUND_CEILING} without ever
23
+ * having gone dry (`"round_ceiling"`, never a silent or fabricated dry one). The
24
+ * endings are ranked in that order, because a ceiling round that IS the second
25
+ * consecutive quiet one converged on a real signal and reporting it as a budget stop
26
+ * would say the loop never demonstrated one.
27
+ *
28
+ * The loop lives inside one RUN. Its rounds, banked findings and premise token are
29
+ * carried forward only while {@link systemicPremiseToken} matches what the register
30
+ * was opened against; a different premise opens a fresh loop (see that function).
20
31
  *
21
32
  * The first run (no submission yet) computes the digest and writes an OPEN register
22
33
  * (converged:false) so the relay step can dispatch the adversary; each subsequent run
@@ -1 +1 @@
1
- {"version":3,"file":"systemicChallengeExecutor.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/systemicChallengeExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAK7D,OAAO,KAAK,EAAW,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAqC/E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,cAAc,EACtB,UAAU,CAAC,EAAE,2BAA2B,EACxC,cAAc,CAAC,EAAE,MAAM,GACtB,iBAAiB,CAiHnB"}
1
+ {"version":3,"file":"systemicChallengeExecutor.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/systemicChallengeExecutor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAK7D,OAAO,KAAK,EAGV,2BAA2B,EAC5B,MAAM,oBAAoB,CAAC;AAmG5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,cAAc,EACtB,UAAU,CAAC,EAAE,2BAA2B,EACxC,cAAc,CAAC,EAAE,MAAM,GACtB,iBAAiB,CAiMnB"}
@@ -1,6 +1,9 @@
1
+ import { hashContent, stableStringify } from "audit-tools/shared";
2
+ import { hashArtifactValue } from "../../shared/artifactFreshness.js";
1
3
  import { resolveCharterCeiling, ceilingRequestsCharters } from "./charterExtractionExecutor.js";
2
4
  import { aggregateMetricsDigest } from "../systemic/aggregateMetricsDigest.js";
3
- import { foldChallengeRound } from "../systemic/systemicChallengeLoop.js";
5
+ import { SYSTEMIC_ROUND_CEILING, foldChallengeRound, } from "../systemic/systemicChallengeLoop.js";
6
+ import { summarizeCoveredThemes } from "../systemic/coveredThemes.js";
4
7
  /**
5
8
  * Convergence rule: the loop terminates only after this many CONSECUTIVE quiet
6
9
  * (dry) rounds. Owner decision 2026-08-28: under a one-round rule, a single
@@ -13,7 +16,57 @@ import { foldChallengeRound } from "../systemic/systemicChallengeLoop.js";
13
16
  */
14
17
  const QUIET_ROUNDS_TO_CONVERGE = 2;
15
18
  function appliedConvergenceRule() {
16
- return { quiet_rounds_required: QUIET_ROUNDS_TO_CONVERGE };
19
+ return {
20
+ quiet_rounds_required: QUIET_ROUNDS_TO_CONVERGE,
21
+ round_ceiling: SYSTEMIC_ROUND_CEILING,
22
+ };
23
+ }
24
+ /**
25
+ * The PREMISE token: a digest of the upstream artifacts the loop reasons over,
26
+ * as they stand this run — the same four `systemic_challenge.json` depends on.
27
+ *
28
+ * This is what binds a loop to its premise. Rounds and banked findings carry
29
+ * forward WITHIN a run (that is the loop), and a re-emission of an unchanged
30
+ * premise reproduces this token byte-for-byte; a run whose premise differs —
31
+ * a different repository, a re-audit after the charter layer changed — starts a
32
+ * FRESH loop. Without it, the register's `rounds` and `findings` persisted in
33
+ * the artifacts dir and the next run opened at "round 10" with 11 improvements
34
+ * it never surfaced (re-dogfood 2026-07-21).
35
+ *
36
+ * Derived from CONTENT under each artifact's own canonical hash — the same
37
+ * non-semantic stripping the metadata manifest uses — so provenance stamps
38
+ * (`generated_at`) and key order cannot mint a new run.
39
+ */
40
+ function systemicPremiseToken(bundle) {
41
+ // The adjudication is projected here rather than hashed as it stands: the
42
+ // metadata manifest's non-semantic table does not strip `generated_at` for
43
+ // `conceptual_review_adjudication.json`, so an identical adjudication
44
+ // re-emitted with a fresh stamp would hash differently and open a FRESH loop
45
+ // — exactly the churn this token exists to prevent. The projection is
46
+ // built from the fields that carry meaning, so a field added to the interface
47
+ // and not named here is dropped rather than silently made semantic.
48
+ const adjudication = bundle.conceptual_review_adjudication;
49
+ const semanticAdjudication = adjudication
50
+ ? {
51
+ schema_version: adjudication.schema_version,
52
+ round_id: adjudication.round_id,
53
+ contributors: adjudication.contributors,
54
+ candidate_dispositions: adjudication.candidate_dispositions,
55
+ final_finding_shares: adjudication.final_finding_shares,
56
+ candidate_disposition_breakdown: adjudication.candidate_disposition_breakdown,
57
+ candidate_verification_status_breakdown: adjudication.candidate_verification_status_breakdown,
58
+ }
59
+ : adjudication;
60
+ const premise = [
61
+ ["charter_register.json", bundle.charter_register],
62
+ ["conceptual_review_adjudication.json", semanticAdjudication],
63
+ ["intent_checkpoint.json", bundle.intent_checkpoint],
64
+ ["repo_manifest.json", bundle.repo_manifest],
65
+ ];
66
+ const parts = premise.map(([artifact, payload]) => payload === undefined || payload === null
67
+ ? `${artifact}:absent`
68
+ : `${artifact}:${hashArtifactValue(artifact, payload)}`);
69
+ return hashContent(stableStringify(parts), { length: 12 });
17
70
  }
18
71
  function omittedRegister(ceiling, generated_at) {
19
72
  return {
@@ -23,6 +76,7 @@ function omittedRegister(ceiling, generated_at) {
23
76
  status: "omitted",
24
77
  rounds: [],
25
78
  converged: true,
79
+ stop_reason: "converged",
26
80
  convergence_rule: appliedConvergenceRule(),
27
81
  findings: [],
28
82
  validation_issues: [],
@@ -42,8 +96,19 @@ function omittedRegister(ceiling, generated_at) {
42
96
  * - **run** (`deep`/`deepest` ceiling): assemble the metrics digest and fold each
43
97
  * submitted challenge round into the register. An EMPTY submission (a round that
44
98
  * surfaced nothing new) is a QUIET round; the register marks `converged` only
45
- * after {@link QUIET_ROUNDS_TO_CONVERGE} CONSECUTIVE quiet rounds. A non-empty
46
- * submission appends a round and keeps the loop open for the next round.
99
+ * after {@link QUIET_ROUNDS_TO_CONVERGE} CONSECUTIVE quiet rounds.
100
+ *
101
+ * A round ends the loop when it demonstrably went dry (two consecutive quiet rounds —
102
+ * `stop_reason: "converged"`), when the submission carries a host-forced stop
103
+ * (`"host_forced"`), or when it reaches {@link SYSTEMIC_ROUND_CEILING} without ever
104
+ * having gone dry (`"round_ceiling"`, never a silent or fabricated dry one). The
105
+ * endings are ranked in that order, because a ceiling round that IS the second
106
+ * consecutive quiet one converged on a real signal and reporting it as a budget stop
107
+ * would say the loop never demonstrated one.
108
+ *
109
+ * The loop lives inside one RUN. Its rounds, banked findings and premise token are
110
+ * carried forward only while {@link systemicPremiseToken} matches what the register
111
+ * was opened against; a different premise opens a fresh loop (see that function).
47
112
  *
48
113
  * The first run (no submission yet) computes the digest and writes an OPEN register
49
114
  * (converged:false) so the relay step can dispatch the adversary; each subsequent run
@@ -76,7 +141,18 @@ export function runSystemicChallengeExecutor(bundle, submission, submissionHash)
76
141
  };
77
142
  }
78
143
  const metrics = aggregateMetricsDigest(bundle);
79
- const prior = bundle.systemic_challenge;
144
+ const round_token = systemicPremiseToken(bundle);
145
+ const carried = bundle.systemic_challenge;
146
+ // A register opened against a DIFFERENT premise belongs to a different run:
147
+ // its round counter and banked improvements must not present themselves as this
148
+ // run's (re-dogfood 2026-07-21 — a run opened at "round 10" holding 11 findings
149
+ // from earlier sessions). A register with NO token predates the binding, so it
150
+ // carries as it always did — and that carry is the one-way migration: this run
151
+ // stamps the token on the register it writes, so the same register can never
152
+ // take the no-token branch twice. ONLY a differing token resets.
153
+ const prior = carried?.round_token === undefined || carried.round_token === round_token
154
+ ? carried
155
+ : undefined;
80
156
  const priorFindings = prior?.findings ?? [];
81
157
  const priorRounds = prior?.rounds ?? [];
82
158
  // No submission this turn: (re)compute the digest and leave the loop OPEN so the
@@ -89,6 +165,8 @@ export function runSystemicChallengeExecutor(bundle, submission, submissionHash)
89
165
  ceiling,
90
166
  metrics,
91
167
  rounds: priorRounds,
168
+ covered_themes: summarizeCoveredThemes(priorFindings),
169
+ round_token,
92
170
  ...(prior?.folded_submission_hashes
93
171
  ? { folded_submission_hashes: prior.folded_submission_hashes }
94
172
  : {}),
@@ -105,14 +183,19 @@ export function runSystemicChallengeExecutor(bundle, submission, submissionHash)
105
183
  };
106
184
  }
107
185
  // A submission is present: fold this challenge round.
186
+ const roundNumber = priorRounds.length + 1;
108
187
  const folded = foldChallengeRound({
109
188
  prior: priorFindings,
110
189
  submitted: submission.findings,
111
- goalGraph: bundle.charter_register?.goal_graph,
190
+ round: roundNumber,
191
+ // Three lane DAGs, unmerged (design of record 2026-09-15): the blast-radius
192
+ // substrate is their UNION with lane-prefixed ids, so a finding's node reach is
193
+ // read on the graph that carries it and ids never collide across lanes.
194
+ goalGraph: laneGoalGraphUnion(bundle),
112
195
  repoManifest: bundle.repo_manifest,
113
196
  });
114
197
  const round = {
115
- round: priorRounds.length + 1,
198
+ round: roundNumber,
116
199
  new_finding_ids: folded.new_finding_ids,
117
200
  dry: folded.dry,
118
201
  };
@@ -123,16 +206,73 @@ export function runSystemicChallengeExecutor(bundle, submission, submissionHash)
123
206
  // CONSECUTIVE-QUIET convergence: the loop terminates only when the last
124
207
  // QUIET_ROUNDS_TO_CONVERGE rounds were ALL dry. Derived from the persisted
125
208
  // rounds themselves — no separate counter state to drift.
126
- const converged = rounds.length >= QUIET_ROUNDS_TO_CONVERGE &&
209
+ const convergedOnQuiet = rounds.length >= QUIET_ROUNDS_TO_CONVERGE &&
127
210
  rounds.slice(-QUIET_ROUNDS_TO_CONVERGE).every((r) => r.dry);
211
+ // The endings, each recorded as what it is, in precedence order. A host-forced
212
+ // stop is the host saying so and outranks everything. A DEMONSTRATED dry
213
+ // convergence outranks the ceiling: a ceiling round whose fold happened to be
214
+ // the second consecutive quiet one converged on a real signal, and reporting
215
+ // it as a budget stop states a falsehood about why the loop ended (the
216
+ // ceiling's own wording — "the loop ends here, not on a demonstrated dry
217
+ // signal" — would be affirmatively wrong). The ceiling is the LAST resort,
218
+ // for the loop that ran out of rounds without ever going dry. An already
219
+ // recorded reason survives a later round's fold, so the loop stays ended.
220
+ const ceilingReached = rounds.length >= SYSTEMIC_ROUND_CEILING;
221
+ const hostForced = submission.stop?.forced === true;
222
+ const effectiveStop = hostForced
223
+ ? submission.stop
224
+ : undefined;
225
+ const priorStopReason = prior?.converged === true ? prior.stop_reason : undefined;
226
+ const stop_reason = priorStopReason ??
227
+ (hostForced
228
+ ? "host_forced"
229
+ : convergedOnQuiet
230
+ ? "converged"
231
+ : ceilingReached
232
+ ? "round_ceiling"
233
+ : undefined);
234
+ const converged = stop_reason !== undefined;
235
+ // Which round the reason came from — THIS one, or an earlier one the register
236
+ // already recorded. Read off the branch that produced it, never re-derived
237
+ // from the ending's shape.
238
+ const stopRecordedThisRound = priorStopReason === undefined;
239
+ /**
240
+ * The note is derived from the RECORDED `stop_reason`, never re-derived from
241
+ * this round's shape. Re-deriving let the summary say "loop converged" for a
242
+ * register whose own `stop_reason` was `host_forced` — and in the plain case
243
+ * (a forced stop carrying findings, then a quiet round) it claimed "nothing
244
+ * new for 2 consecutive rounds" when exactly ONE round was dry and the loop had
245
+ * in fact ended because the host said so. That is the fabricated dry signal
246
+ * this whole change exists to remove, and the summary is the surface an
247
+ * operator reads without opening the artifact.
248
+ *
249
+ * `convergedOnQuiet` is still the gate on the convergence wording, so the note
250
+ * never claims consecutive quiet rounds the persisted set does not show.
251
+ */
252
+ const stopNote = stop_reason === "host_forced"
253
+ ? effectiveStop
254
+ ? ` — host-forced stop recorded (${effectiveStop.reason}).`
255
+ : " — host-forced stop recorded in an earlier round; the loop stays ended."
256
+ : stop_reason === "round_ceiling" && ceilingReached && !convergedOnQuiet
257
+ ? ` — round ceiling reached (${SYSTEMIC_ROUND_CEILING}); the loop ends here, not on a demonstrated dry signal.`
258
+ : convergedOnQuiet
259
+ ? ` — nothing new for ${QUIET_ROUNDS_TO_CONVERGE} consecutive rounds, loop converged.`
260
+ : stop_reason === "round_ceiling"
261
+ ? " — the loop stays ended on the round ceiling recorded in an earlier round."
262
+ : stopRecordedThisRound
263
+ ? null
264
+ : " — the loop stays ended on the stop an earlier round recorded.";
128
265
  const register = {
129
266
  generated_at,
130
267
  target: "systemic_challenge",
131
268
  ceiling,
132
269
  metrics,
133
270
  rounds,
271
+ covered_themes: summarizeCoveredThemes(folded.findings),
272
+ round_token,
134
273
  ...(foldedHashes ? { folded_submission_hashes: foldedHashes } : {}),
135
274
  converged,
275
+ ...(stop_reason ? { stop_reason } : {}),
136
276
  convergence_rule: appliedConvergenceRule(),
137
277
  findings: folded.findings,
138
278
  validation_issues: [
@@ -144,11 +284,25 @@ export function runSystemicChallengeExecutor(bundle, submission, submissionHash)
144
284
  updated: { ...bundle, systemic_challenge: register },
145
285
  artifacts_written: ["systemic_challenge.json"],
146
286
  progress_summary: `Systemic challenge round ${round.round}: ${folded.new_finding_ids.length} new improvement(s)` +
147
- (converged
148
- ? ` — nothing new for ${QUIET_ROUNDS_TO_CONVERGE} consecutive rounds, loop converged.`
149
- : folded.dry
287
+ (stopNote ??
288
+ (folded.dry
150
289
  ? " — quiet round; the loop converges after the next consecutive quiet round."
151
- : `, ${folded.findings.length} total; loop continues.`),
290
+ : `, ${folded.findings.length} total; loop continues.`)),
291
+ };
292
+ }
293
+ /**
294
+ * The blast-radius substrate for systemic findings: the three lane goal DAGs
295
+ * UNIONED with lane-prefixed ids (`<kind>:<node_id>`), so a node reach is read on
296
+ * the graph that carries it and ids never collide across lanes. `undefined` when
297
+ * no charter register exists (blast falls back to the intrinsic tier).
298
+ */
299
+ function laneGoalGraphUnion(bundle) {
300
+ const lanes = bundle.charter_register?.lanes;
301
+ if (!lanes || lanes.length === 0)
302
+ return undefined;
303
+ return {
304
+ nodes: lanes.flatMap((lane) => lane.nodes.map((n) => ({ node_id: `${lane.kind}:${n.node_id}`, premise_height: n.premise_height, statement: n.purpose }))),
305
+ edges: lanes.flatMap((lane) => lane.edges.map((e) => ({ from: `${lane.kind}:${e.from}`, to: `${lane.kind}:${e.to}` }))),
152
306
  };
153
307
  }
154
308
  //# sourceMappingURL=systemicChallengeExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"systemicChallengeExecutor.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/systemicChallengeExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"systemicChallengeExecutor.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/systemicChallengeExecutor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mergeFindings.d.ts","sourceRoot":"","sources":["../../../src/audit/reporting/mergeFindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AA0C7E,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,EAAE,EACtB,aAAa,CAAC,EAAE,uBAAuB,EACvC,uBAAuB,CAAC,EAAE,uBAAuB,EAAE,EACnD,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,sBAAsB,CAAC,EAAE,sBAAsB,EAC/C,eAAe,CAAC,EAAE,eAAe,EACjC,iBAAiB,CAAC,EAAE,yBAAyB,GAC5C,OAAO,EAAE,CA6EX"}
1
+ {"version":3,"file":"mergeFindings.d.ts","sourceRoot":"","sources":["../../../src/audit/reporting/mergeFindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AA0C7E,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,EAAE,EACtB,aAAa,CAAC,EAAE,uBAAuB,EACvC,uBAAuB,CAAC,EAAE,uBAAuB,EAAE,EACnD,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,sBAAsB,CAAC,EAAE,sBAAsB,EAC/C,eAAe,CAAC,EAAE,eAAe,EACjC,iBAAiB,CAAC,EAAE,yBAAyB,GAC5C,OAAO,EAAE,CA8EX"}
@@ -30,13 +30,14 @@ export function mergeFindings(results, runtimeReport, externalAnalyzerResults, d
30
30
  const merged = new Map();
31
31
  const allDesignFindings = [
32
32
  ...(designAssessment?.findings ?? []),
33
- // New parallel-pass findings
33
+ // The two review passes, each carrying its own findings. A pre-split
34
+ // artifact's combined `review_findings` is deliberately NOT folded in: it
35
+ // records a pass the current vocabulary does not have, and the invalidation
36
+ // at load (`orchestrator/state.ts`) re-asks for both real passes — so the
37
+ // merged report can never carry a verdict whose current-pass review never
38
+ // ran.
34
39
  ...(designAssessment?.contract_findings ?? []),
35
40
  ...(designAssessment?.conceptual_findings ?? []),
36
- // Backward-compat: legacy single-pass findings
37
- ...((designAssessment?.contract_findings === undefined && designAssessment?.conceptual_findings === undefined)
38
- ? (designAssessment?.review_findings ?? [])
39
- : []),
40
41
  // Phase B deterministic non-co-localization leads (structure layer).
41
42
  ...(structureDecomposition?.findings ?? []),
42
43
  // Phase C routed charter-delta leads (charter layer).
@@ -1 +1 @@
1
- {"version":3,"file":"mergeFindings.js","sourceRoot":"","sources":["../../../src/audit/reporting/mergeFindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mergeFindings.js","sourceRoot":"","sources":["../../../src/audit/reporting/mergeFindings.ts"],"names":[],"mappings":"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"}
@@ -73,6 +73,83 @@ export interface AuditReportModel {
73
73
  /** Tool-REFUTED findings (S7 tier-2 disproof) excluded from the admitted set. */
74
74
  quarantined_findings?: Finding[];
75
75
  }
76
+ /**
77
+ * The `critical` severity bar — the DECISION, stated once.
78
+ *
79
+ * The open question this answers (backlog, 2026-08-06): *should synthesis demand
80
+ * mechanism-grounded — not flow-existence — evidence for `critical`?* That run
81
+ * produced 9 self-audit criticals of which 0 survived mechanism verification
82
+ * (3 refuted, 6 downgraded), which is a real calibration problem and looks like
83
+ * it wants exactly such a gate.
84
+ *
85
+ * It does not get one, and the reason is architectural rather than a scope cut.
86
+ * Severity is tier-3 judgment: the project's own determinism spec
87
+ * (`spec/contract-authoring-determinism-design.md`, S7) classes "severity,
88
+ * prioritization, is this important" as **not deterministically checkable** —
89
+ * "no anchor proves a taste call" — and tiers it accordingly: the adversarial
90
+ * cross-check plus traceability, never a tool verdict. A `mechanism vs
91
+ * flow-existence` test is not mechanically decidable: both are prose, and a
92
+ * checker that pattern-matched them would grade the WORDING of evidence, which
93
+ * a weak auditor games by writing the word "mechanism" and a strong one is
94
+ * punished by for citing a flow. That is the opposite of the bar's intent, and
95
+ * it would be a gate guessing at a boundary owned by the judge — precisely what
96
+ * the authority rule forbids.
97
+ *
98
+ * So the bar is DECIDED as: the tool enforces the one leg it can actually
99
+ * decide — a `critical` must carry SUBSTANTIVE evidence, i.e. at least one
100
+ * entry with real content — and the mechanism-versus-flow question stays judge
101
+ * territory, carried by the adversarial cross-check and named to the reader in
102
+ * the report. A `critical` whose evidence is absent or blank is downgraded to
103
+ * `high` (it makes no claim the tool can even find), recorded in
104
+ * `severity_downgraded_from`, and that downgrade is visible in the severity
105
+ * breakdown the report prints.
106
+ *
107
+ * The bar is scoped to the lane whose contract CARRIES `evidence` (see
108
+ * `criticalEvidenceBarApplies`): the design-review lanes have no such field, so
109
+ * applying it there graded a claim they were never asked to make.
110
+ *
111
+ * Recorded here, at the boundary that mints the summary, so the next run that
112
+ * reads "0 of 9 criticals survived" finds the answer instead of re-asking.
113
+ */
114
+ export declare const CRITICAL_EVIDENCE_BAR: "substantive-evidence";
115
+ /**
116
+ * Whether a finding carries the evidence {@link CRITICAL_EVIDENCE_BAR} demands:
117
+ * at least one entry with non-whitespace content.
118
+ *
119
+ * Deliberately a content test and not a shape test. The per-file contract
120
+ * already requires a non-empty `evidence` array, so an array-length check would
121
+ * be dead code — what it does not catch is the array that exists to satisfy the
122
+ * schema: a single `""` or `" "`. That is the value with no claim in it, and it
123
+ * is the only thing here the tool can decide without grading prose.
124
+ */
125
+ export declare function hasSubstantiveEvidence(finding: {
126
+ evidence?: readonly string[];
127
+ }): boolean;
128
+ /**
129
+ * Apply {@link CRITICAL_EVIDENCE_BAR}, returning the findings with any
130
+ * `critical` it refuses downgraded, each carrying `severity_downgraded_from`.
131
+ *
132
+ * A downgrade, never a drop: the finding is still a finding, its severity is
133
+ * still the judge's initial claim, and the report's severity breakdown shows the
134
+ * result — so the claim is qualified, not erased. The ORDER of the two
135
+ * severities is the canonical one (`FindingSeveritySchema`, most-severe-first),
136
+ * so `high` is the adjacent step rather than a re-grade.
137
+ *
138
+ * The move is RECORDED, not silent: `severity_downgraded_from` keeps the
139
+ * severity the judge claimed. Overwriting `severity` in place made a
140
+ * tool-moved `high` byte-identical to a born-`high` one, so `audit-findings.json`
141
+ * — and every `work_blocks.max_severity` computed from it — could not tell a
142
+ * claim the tool refused to let stand from one the judge never made.
143
+ *
144
+ * TOTAL and idempotent, so it has exactly ONE behaviour wherever it runs: a
145
+ * finding already carrying `severity_downgraded_from` was re-graded on an
146
+ * earlier pass, and re-grading is neither repeated nor compounded. That is what
147
+ * lets the two draws over it — the model builder and the promoted-record
148
+ * normalization — share one implementation instead of diverging, which is the
149
+ * only reason a re-synthesized report can be trusted to agree with its own
150
+ * disclosure line.
151
+ */
152
+ export declare function applyCriticalEvidenceBar(findings: Finding[]): Finding[];
76
153
  export declare function buildAuditReportModel(params: {
77
154
  results: AuditResult[];
78
155
  unitManifest?: UnitManifest;
@@ -159,6 +236,35 @@ export interface RenderAuditReportOptions {
159
236
  charter_packet_archive?: readonly CharterPacketArchiveRow[];
160
237
  }
161
238
  export declare function canonicalizeConceptualAttributionIds(report: RenderableAuditReport, adjudication: ConceptualReviewAdjudication, idSource?: RenderableAuditReport): void;
239
+ /**
240
+ * Re-escape the C0 control characters a report must never carry as raw bytes.
241
+ *
242
+ * The report is assembled from strings the HOST authored — finding prose,
243
+ * themes, the executive summary, work-block rationales, operator notes — and a
244
+ * contract-valid finding may legitimately contain one: a worker summary
245
+ * carrying a JSON-escaped backspace (a mangled regex word boundary) parses
246
+ * fine, stores fine in `audit-findings.json` (JSON escapes it), and then lands
247
+ * as a literal 0x08 in `audit-report.md`, where `check:control-bytes` correctly
248
+ * reds the build. Scrubbed by hand once already; this is the mechanism instead.
249
+ *
250
+ * The permitted set is EXACTLY the byte gate's — tab, LF, CR — so this
251
+ * function's contract and the gate that checks it cannot disagree: everything
252
+ * else below 0x20 is re-escaped as its printable `\uXXXX` form rather than
253
+ * deleted. Deleting would silently rewrite the worker's text (a mangled word
254
+ * boundary loses the mangling, which is the signal a reader needs); the escape
255
+ * keeps the information AND the file text.
256
+ *
257
+ * Written as a code-point test rather than a control-character regex: the
258
+ * literal bytes are exactly what must not appear in this source file, and a
259
+ * regex range spelling them is the trap being fixed, one level up.
260
+ *
261
+ * Applied as ONE final pass over the assembled document rather than per field:
262
+ * a per-field scrub only covers the fields someone remembered, and the whole
263
+ * point is that an unreviewed host-authored string cannot reach the deliverable
264
+ * raw. It runs at the render boundary, so every present and future field is
265
+ * covered by construction.
266
+ */
267
+ export declare function escapeControlCharacters(markdown: string): string;
162
268
  export declare function renderAuditReportMarkdown(report: RenderableAuditReport, options?: RenderAuditReportOptions): string;
163
269
  /**
164
270
  * Re-derive the summary fields that can be computed from the existing findings
@@ -166,6 +272,17 @@ export declare function renderAuditReportMarkdown(report: RenderableAuditReport,
166
272
  * upstream-derived fields that cannot be reconstructed (audited/excluded counts,
167
273
  * runtime validation breakdown) untouched.
168
274
  *
275
+ * The `critical` evidence bar runs HERE as well as in the model builder, and
276
+ * that second call is the F2 fix rather than a duplicate: a promoted
277
+ * `audit-findings.json` can have been written by an older contract version, so
278
+ * `cmdResynthesize` — which reads that record and renders it WITHOUT the model
279
+ * builder — was the one path where a critical could reach the deliverable
280
+ * un-barred while the render's disclosure line claimed the bar was enforced.
281
+ * One implementation at the boundary both draws share means a re-synthesized
282
+ * report and a freshly-built one state the same thing about the same finding;
283
+ * the function is idempotent, so re-normalizing an already-barred record is a
284
+ * no-op rather than a second downgrade.
285
+ *
169
286
  * Safe to call on already-promoted `audit-findings.json` files without access to
170
287
  * the pruned `.audit-tools/audit` working-bundle intermediates.
171
288
  */
@@ -1 +1 @@
1
- {"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../../src/audit/reporting/synthesis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../../src/audit/reporting/synthesis.ts"],"names":[],"mappings":"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"}