audit-tools 0.50.21 → 0.51.1

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 (368) hide show
  1. package/README.md +1 -1
  2. package/dist/audit/cli/auditStep.d.ts +1 -1
  3. package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
  4. package/dist/audit/cli/charterExtractionPrompt.js +14 -1
  5. package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
  6. package/dist/audit/cli/cleanup.d.ts +0 -1
  7. package/dist/audit/cli/cleanup.d.ts.map +1 -1
  8. package/dist/audit/cli/cleanup.js +32 -20
  9. package/dist/audit/cli/cleanup.js.map +1 -1
  10. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  11. package/dist/audit/cli/conceptualDispatch.js +30 -5
  12. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  13. package/dist/audit/cli/dispatch/hostHandoff.d.ts +2 -0
  14. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  15. package/dist/audit/cli/dispatch/hostHandoff.js +48 -20
  16. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  17. package/dist/audit/cli/fanoutLanes.d.ts +7 -0
  18. package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
  19. package/dist/audit/cli/fanoutLanes.js +9 -1
  20. package/dist/audit/cli/fanoutLanes.js.map +1 -1
  21. package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
  22. package/dist/audit/cli/forceSynthesisCommand.js +2 -14
  23. package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
  24. package/dist/audit/cli/intakeCommand.d.ts.map +1 -1
  25. package/dist/audit/cli/intakeCommand.js +3 -13
  26. package/dist/audit/cli/intakeCommand.js.map +1 -1
  27. package/dist/audit/cli/laneSubmissions.d.ts +42 -57
  28. package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
  29. package/dist/audit/cli/laneSubmissions.js +116 -82
  30. package/dist/audit/cli/laneSubmissions.js.map +1 -1
  31. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  32. package/dist/audit/cli/nextStepCommand.js +132 -99
  33. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  34. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  35. package/dist/audit/cli/nextStepHelpers.js +39 -46
  36. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  37. package/dist/audit/cli/resynthesizeCommand.d.ts.map +1 -1
  38. package/dist/audit/cli/resynthesizeCommand.js +5 -2
  39. package/dist/audit/cli/resynthesizeCommand.js.map +1 -1
  40. package/dist/audit/cli/sampleRunCommand.d.ts +3 -2
  41. package/dist/audit/cli/sampleRunCommand.d.ts.map +1 -1
  42. package/dist/audit/cli/stepScaffold.d.ts +21 -0
  43. package/dist/audit/cli/stepScaffold.d.ts.map +1 -0
  44. package/dist/audit/cli/stepScaffold.js +50 -0
  45. package/dist/audit/cli/stepScaffold.js.map +1 -0
  46. package/dist/audit/cli/steps.d.ts +6 -6
  47. package/dist/audit/cli/synthesizeCommand.d.ts.map +1 -1
  48. package/dist/audit/cli/synthesizeCommand.js +2 -14
  49. package/dist/audit/cli/synthesizeCommand.js.map +1 -1
  50. package/dist/audit/contracts/workerSchemas.d.ts +8 -8
  51. package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
  52. package/dist/audit/contracts/workerSchemas.js +12 -6
  53. package/dist/audit/contracts/workerSchemas.js.map +1 -1
  54. package/dist/audit/contracts/wrapperResponse.d.ts +7 -7
  55. package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
  56. package/dist/audit/contracts/wrapperResponse.js +9 -1
  57. package/dist/audit/contracts/wrapperResponse.js.map +1 -1
  58. package/dist/audit/extractors/analyzers/merge.d.ts.map +1 -1
  59. package/dist/audit/extractors/analyzers/merge.js +2 -7
  60. package/dist/audit/extractors/analyzers/merge.js.map +1 -1
  61. package/dist/audit/extractors/commentDecomposition.d.ts +28 -0
  62. package/dist/audit/extractors/commentDecomposition.d.ts.map +1 -1
  63. package/dist/audit/extractors/commentDecomposition.js +151 -22
  64. package/dist/audit/extractors/commentDecomposition.js.map +1 -1
  65. package/dist/audit/extractors/graph.d.ts +1 -1
  66. package/dist/audit/extractors/graph.d.ts.map +1 -1
  67. package/dist/audit/extractors/graph.js +2 -6
  68. package/dist/audit/extractors/graph.js.map +1 -1
  69. package/dist/audit/extractors/graphManifestEdges/cargo.d.ts.map +1 -1
  70. package/dist/audit/extractors/graphManifestEdges/cargo.js +4 -4
  71. package/dist/audit/extractors/graphManifestEdges/cargo.js.map +1 -1
  72. package/dist/audit/extractors/graphManifestEdges/pnpm.d.ts.map +1 -1
  73. package/dist/audit/extractors/graphManifestEdges/pnpm.js +3 -3
  74. package/dist/audit/extractors/graphManifestEdges/pnpm.js.map +1 -1
  75. package/dist/audit/extractors/graphManifestEdges/pyproject.d.ts.map +1 -1
  76. package/dist/audit/extractors/graphManifestEdges/pyproject.js +3 -2
  77. package/dist/audit/extractors/graphManifestEdges/pyproject.js.map +1 -1
  78. package/dist/audit/extractors/graphManifestEdges/toml.d.ts +0 -6
  79. package/dist/audit/extractors/graphManifestEdges/toml.d.ts.map +1 -1
  80. package/dist/audit/extractors/graphManifestEdges/toml.js +0 -13
  81. package/dist/audit/extractors/graphManifestEdges/toml.js.map +1 -1
  82. package/dist/audit/extractors/graphManifestEdges/workspace.d.ts +9 -0
  83. package/dist/audit/extractors/graphManifestEdges/workspace.d.ts.map +1 -1
  84. package/dist/audit/extractors/graphManifestEdges/workspace.js +16 -0
  85. package/dist/audit/extractors/graphManifestEdges/workspace.js.map +1 -1
  86. package/dist/audit/extractors/graphManifestEdges/yaml.d.ts +0 -2
  87. package/dist/audit/extractors/graphManifestEdges/yaml.d.ts.map +1 -1
  88. package/dist/audit/extractors/graphManifestEdges/yaml.js +0 -9
  89. package/dist/audit/extractors/graphManifestEdges/yaml.js.map +1 -1
  90. package/dist/audit/extractors/graphSignals.d.ts.map +1 -1
  91. package/dist/audit/extractors/graphSignals.js +16 -2
  92. package/dist/audit/extractors/graphSignals.js.map +1 -1
  93. package/dist/audit/io/artifacts.d.ts +19 -0
  94. package/dist/audit/io/artifacts.d.ts.map +1 -1
  95. package/dist/audit/io/artifacts.js +44 -2
  96. package/dist/audit/io/artifacts.js.map +1 -1
  97. package/dist/audit/orchestrator/advance.d.ts +0 -22
  98. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  99. package/dist/audit/orchestrator/advance.js +1 -43
  100. package/dist/audit/orchestrator/advance.js.map +1 -1
  101. package/dist/audit/orchestrator/charterDeltaExecutor.d.ts.map +1 -1
  102. package/dist/audit/orchestrator/charterDeltaExecutor.js +14 -0
  103. package/dist/audit/orchestrator/charterDeltaExecutor.js.map +1 -1
  104. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts +16 -6
  105. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
  106. package/dist/audit/orchestrator/charterExtractionExecutor.js +127 -9
  107. package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
  108. package/dist/audit/orchestrator/charterPacketArchive.d.ts +51 -0
  109. package/dist/audit/orchestrator/charterPacketArchive.d.ts.map +1 -0
  110. package/dist/audit/orchestrator/charterPacketArchive.js +173 -0
  111. package/dist/audit/orchestrator/charterPacketArchive.js.map +1 -0
  112. package/dist/audit/orchestrator/charterPackets.d.ts +31 -13
  113. package/dist/audit/orchestrator/charterPackets.d.ts.map +1 -1
  114. package/dist/audit/orchestrator/charterPackets.js +299 -96
  115. package/dist/audit/orchestrator/charterPackets.js.map +1 -1
  116. package/dist/audit/orchestrator/designReviewPrompt.d.ts +20 -4
  117. package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
  118. package/dist/audit/orchestrator/designReviewPrompt.js +89 -12
  119. package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
  120. package/dist/audit/orchestrator/edgeReasoning.d.ts.map +1 -1
  121. package/dist/audit/orchestrator/edgeReasoning.js +4 -9
  122. package/dist/audit/orchestrator/edgeReasoning.js.map +1 -1
  123. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  124. package/dist/audit/orchestrator/executorRunners.js +17 -1
  125. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  126. package/dist/audit/orchestrator/graphEnrichmentExecutor.d.ts.map +1 -1
  127. package/dist/audit/orchestrator/graphEnrichmentExecutor.js +8 -1
  128. package/dist/audit/orchestrator/graphEnrichmentExecutor.js.map +1 -1
  129. package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
  130. package/dist/audit/orchestrator/intentCheckpointGate.js +11 -2
  131. package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
  132. package/dist/audit/orchestrator/lineCounts.d.ts +44 -0
  133. package/dist/audit/orchestrator/lineCounts.d.ts.map +1 -0
  134. package/dist/audit/orchestrator/lineCounts.js +61 -0
  135. package/dist/audit/orchestrator/lineCounts.js.map +1 -0
  136. package/dist/audit/orchestrator/obligationDerive.d.ts +35 -0
  137. package/dist/audit/orchestrator/obligationDerive.d.ts.map +1 -0
  138. package/dist/audit/orchestrator/obligationDerive.js +50 -0
  139. package/dist/audit/orchestrator/obligationDerive.js.map +1 -0
  140. package/dist/audit/orchestrator/reviewPacketMetrics.d.ts.map +1 -1
  141. package/dist/audit/orchestrator/reviewPacketMetrics.js +3 -2
  142. package/dist/audit/orchestrator/reviewPacketMetrics.js.map +1 -1
  143. package/dist/audit/orchestrator/reviewPacketShared.d.ts +0 -2
  144. package/dist/audit/orchestrator/reviewPacketShared.d.ts.map +1 -1
  145. package/dist/audit/orchestrator/reviewPacketShared.js +0 -4
  146. package/dist/audit/orchestrator/reviewPacketShared.js.map +1 -1
  147. package/dist/audit/orchestrator/reviewPackets.d.ts.map +1 -1
  148. package/dist/audit/orchestrator/reviewPackets.js +3 -2
  149. package/dist/audit/orchestrator/reviewPackets.js.map +1 -1
  150. package/dist/audit/orchestrator/selectiveDeepening/conflict.d.ts.map +1 -1
  151. package/dist/audit/orchestrator/selectiveDeepening/conflict.js +3 -2
  152. package/dist/audit/orchestrator/selectiveDeepening/conflict.js.map +1 -1
  153. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.d.ts.map +1 -1
  154. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js +3 -2
  155. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js.map +1 -1
  156. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.d.ts.map +1 -1
  157. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.js +3 -2
  158. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.js.map +1 -1
  159. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.d.ts.map +1 -1
  160. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js +4 -3
  161. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js.map +1 -1
  162. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.d.ts.map +1 -1
  163. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.js +2 -1
  164. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.js.map +1 -1
  165. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts +0 -2
  166. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts.map +1 -1
  167. package/dist/audit/orchestrator/selectiveDeepening/shared.js +0 -27
  168. package/dist/audit/orchestrator/selectiveDeepening/shared.js.map +1 -1
  169. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.d.ts.map +1 -1
  170. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js +10 -1
  171. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js.map +1 -1
  172. package/dist/audit/orchestrator/state.d.ts.map +1 -1
  173. package/dist/audit/orchestrator/state.js +21 -14
  174. package/dist/audit/orchestrator/state.js.map +1 -1
  175. package/dist/audit/orchestrator/synthesisExecutors.d.ts +8 -0
  176. package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
  177. package/dist/audit/orchestrator/synthesisExecutors.js +10 -0
  178. package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
  179. package/dist/audit/reporting/synthesis.d.ts +42 -2
  180. package/dist/audit/reporting/synthesis.d.ts.map +1 -1
  181. package/dist/audit/reporting/synthesis.js +264 -12
  182. package/dist/audit/reporting/synthesis.js.map +1 -1
  183. package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
  184. package/dist/audit/supervisor/operatorHandoff.js +14 -6
  185. package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
  186. package/dist/audit/systemic/secondOrderAdversaryPrompt.d.ts.map +1 -1
  187. package/dist/audit/systemic/secondOrderAdversaryPrompt.js +14 -0
  188. package/dist/audit/systemic/secondOrderAdversaryPrompt.js.map +1 -1
  189. package/dist/audit/types/analyzerCapability.d.ts +35 -11
  190. package/dist/audit/types/analyzerCapability.d.ts.map +1 -1
  191. package/dist/audit/types/analyzerCapability.js +83 -5
  192. package/dist/audit/types/analyzerCapability.js.map +1 -1
  193. package/dist/audit/types/auditState.d.ts +8 -8
  194. package/dist/audit/types/charterRegister.d.ts +33 -3
  195. package/dist/audit/types/charterRegister.d.ts.map +1 -1
  196. package/dist/audit/types/charterRegister.js +11 -1
  197. package/dist/audit/types/charterRegister.js.map +1 -1
  198. package/dist/audit/types/conceptualAdjudication.d.ts +395 -16
  199. package/dist/audit/types/conceptualAdjudication.d.ts.map +1 -1
  200. package/dist/audit/types/conceptualAdjudication.js +109 -5
  201. package/dist/audit/types/conceptualAdjudication.js.map +1 -1
  202. package/dist/audit/types/designAssessment.d.ts +1 -1
  203. package/dist/audit/types/designAssessment.d.ts.map +1 -1
  204. package/dist/audit/types.d.ts +9 -4
  205. package/dist/audit/types.d.ts.map +1 -1
  206. package/dist/remediate/droppedFindingsRecord.d.ts +13 -0
  207. package/dist/remediate/droppedFindingsRecord.d.ts.map +1 -0
  208. package/dist/remediate/droppedFindingsRecord.js +113 -0
  209. package/dist/remediate/droppedFindingsRecord.js.map +1 -0
  210. package/dist/remediate/intake.d.ts +17 -0
  211. package/dist/remediate/intake.d.ts.map +1 -1
  212. package/dist/remediate/intake.js +23 -0
  213. package/dist/remediate/intake.js.map +1 -1
  214. package/dist/remediate/intent/intentOrdering.d.ts.map +1 -1
  215. package/dist/remediate/intent/intentOrdering.js +29 -1
  216. package/dist/remediate/intent/intentOrdering.js.map +1 -1
  217. package/dist/remediate/phases/close.d.ts +1 -1
  218. package/dist/remediate/phases/close.d.ts.map +1 -1
  219. package/dist/remediate/phases/close.js +68 -6
  220. package/dist/remediate/phases/close.js.map +1 -1
  221. package/dist/remediate/phases/grounding.d.ts +12 -4
  222. package/dist/remediate/phases/grounding.d.ts.map +1 -1
  223. package/dist/remediate/phases/grounding.js +23 -60
  224. package/dist/remediate/phases/grounding.js.map +1 -1
  225. package/dist/remediate/state/types.d.ts +17 -6
  226. package/dist/remediate/state/types.d.ts.map +1 -1
  227. package/dist/remediate/state/types.js +3 -1
  228. package/dist/remediate/state/types.js.map +1 -1
  229. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  230. package/dist/remediate/steps/contractPipeline.js +10 -4
  231. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  232. package/dist/remediate/steps/contractPipelinePrompts.d.ts +10 -2
  233. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  234. package/dist/remediate/steps/contractPipelinePrompts.js +56 -12
  235. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  236. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  237. package/dist/remediate/steps/dispatch/hostHandoff.js +277 -146
  238. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  239. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  240. package/dist/remediate/steps/nextStep.js +253 -75
  241. package/dist/remediate/steps/nextStep.js.map +1 -1
  242. package/dist/remediate/steps/prompts.d.ts +14 -0
  243. package/dist/remediate/steps/prompts.d.ts.map +1 -1
  244. package/dist/remediate/steps/prompts.js +52 -4
  245. package/dist/remediate/steps/prompts.js.map +1 -1
  246. package/dist/remediate/steps/types.d.ts +1 -1
  247. package/dist/remediate/steps/types.d.ts.map +1 -1
  248. package/dist/remediate/steps/types.js.map +1 -1
  249. package/dist/remediate/validation/contractPipelineGates.d.ts +0 -34
  250. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  251. package/dist/remediate/validation/contractPipelineGates.js +181 -143
  252. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  253. package/dist/shared/agentReflections.d.ts +44 -3
  254. package/dist/shared/agentReflections.d.ts.map +1 -1
  255. package/dist/shared/agentReflections.js +63 -4
  256. package/dist/shared/agentReflections.js.map +1 -1
  257. package/dist/shared/analyzers/acquisitionEngine.d.ts +20 -1
  258. package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
  259. package/dist/shared/analyzers/acquisitionEngine.js +17 -3
  260. package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
  261. package/dist/shared/analyzers/candidates.d.ts.map +1 -1
  262. package/dist/shared/analyzers/candidates.js +13 -4
  263. package/dist/shared/analyzers/candidates.js.map +1 -1
  264. package/dist/shared/analyzers/types.d.ts +17 -6
  265. package/dist/shared/analyzers/types.d.ts.map +1 -1
  266. package/dist/shared/analyzers/types.js +6 -15
  267. package/dist/shared/analyzers/types.js.map +1 -1
  268. package/dist/shared/decompose/systemicChallenge.d.ts +116 -9
  269. package/dist/shared/decompose/systemicChallenge.d.ts.map +1 -1
  270. package/dist/shared/decompose/systemicChallenge.js +32 -1
  271. package/dist/shared/decompose/systemicChallenge.js.map +1 -1
  272. package/dist/shared/engine/obligationEngine.d.ts +23 -6
  273. package/dist/shared/engine/obligationEngine.d.ts.map +1 -1
  274. package/dist/shared/engine/obligationEngine.js +38 -3
  275. package/dist/shared/engine/obligationEngine.js.map +1 -1
  276. package/dist/shared/findings/dedupe.d.ts +10 -0
  277. package/dist/shared/findings/dedupe.d.ts.map +1 -1
  278. package/dist/shared/findings/dedupe.js +15 -0
  279. package/dist/shared/findings/dedupe.js.map +1 -1
  280. package/dist/shared/friction/triage.d.ts.map +1 -1
  281. package/dist/shared/friction/triage.js +5 -1
  282. package/dist/shared/friction/triage.js.map +1 -1
  283. package/dist/shared/git.d.ts +6 -0
  284. package/dist/shared/git.d.ts.map +1 -1
  285. package/dist/shared/git.js +8 -0
  286. package/dist/shared/git.js.map +1 -1
  287. package/dist/shared/graph/edgeConfidence.d.ts +12 -0
  288. package/dist/shared/graph/edgeConfidence.d.ts.map +1 -0
  289. package/dist/shared/graph/edgeConfidence.js +15 -0
  290. package/dist/shared/graph/edgeConfidence.js.map +1 -0
  291. package/dist/shared/index.d.ts +26 -9
  292. package/dist/shared/index.d.ts.map +1 -1
  293. package/dist/shared/index.js +20 -8
  294. package/dist/shared/index.js.map +1 -1
  295. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  296. package/dist/shared/loopCorePaths.js +4 -0
  297. package/dist/shared/loopCorePaths.js.map +1 -1
  298. package/dist/shared/measurement/measuredOutcome.d.ts +61 -0
  299. package/dist/shared/measurement/measuredOutcome.d.ts.map +1 -0
  300. package/dist/shared/measurement/measuredOutcome.js +109 -0
  301. package/dist/shared/measurement/measuredOutcome.js.map +1 -0
  302. package/dist/shared/reporting/findingDisplay.d.ts +14 -2
  303. package/dist/shared/reporting/findingDisplay.d.ts.map +1 -1
  304. package/dist/shared/reporting/findingDisplay.js +29 -2
  305. package/dist/shared/reporting/findingDisplay.js.map +1 -1
  306. package/dist/shared/reporting/lensCoverage.d.ts +70 -0
  307. package/dist/shared/reporting/lensCoverage.d.ts.map +1 -0
  308. package/dist/shared/reporting/lensCoverage.js +108 -0
  309. package/dist/shared/reporting/lensCoverage.js.map +1 -0
  310. package/dist/shared/submission/hostResultOutcomes.d.ts +42 -0
  311. package/dist/shared/submission/hostResultOutcomes.d.ts.map +1 -0
  312. package/dist/shared/submission/hostResultOutcomes.js +129 -0
  313. package/dist/shared/submission/hostResultOutcomes.js.map +1 -0
  314. package/dist/shared/submission/ingestionChecks.d.ts +146 -0
  315. package/dist/shared/submission/ingestionChecks.d.ts.map +1 -0
  316. package/dist/shared/submission/ingestionChecks.js +157 -0
  317. package/dist/shared/submission/ingestionChecks.js.map +1 -0
  318. package/dist/shared/submission/submissionClassifier.d.ts +8 -0
  319. package/dist/shared/submission/submissionClassifier.d.ts.map +1 -1
  320. package/dist/shared/submission/submissionClassifier.js.map +1 -1
  321. package/dist/shared/submission/submissionLedger.d.ts +24 -1
  322. package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
  323. package/dist/shared/submission/submissionLedger.js +61 -0
  324. package/dist/shared/submission/submissionLedger.js.map +1 -1
  325. package/dist/shared/submission/submissionScan.d.ts +2 -0
  326. package/dist/shared/submission/submissionScan.d.ts.map +1 -1
  327. package/dist/shared/submission/submissionScan.js +4 -0
  328. package/dist/shared/submission/submissionScan.js.map +1 -1
  329. package/dist/shared/tooling/projectFacts.d.ts +71 -0
  330. package/dist/shared/tooling/projectFacts.d.ts.map +1 -0
  331. package/dist/shared/tooling/projectFacts.js +153 -0
  332. package/dist/shared/tooling/projectFacts.js.map +1 -0
  333. package/dist/shared/tooling/projectTestAdmission.d.ts +5 -15
  334. package/dist/shared/tooling/projectTestAdmission.d.ts.map +1 -1
  335. package/dist/shared/tooling/projectTestAdmission.js +14 -5
  336. package/dist/shared/tooling/projectTestAdmission.js.map +1 -1
  337. package/dist/shared/types/charterPacket.d.ts +156 -0
  338. package/dist/shared/types/charterPacket.d.ts.map +1 -0
  339. package/dist/shared/types/charterPacket.js +9 -0
  340. package/dist/shared/types/charterPacket.js.map +1 -0
  341. package/dist/shared/types/closingActions.d.ts +16 -0
  342. package/dist/shared/types/closingActions.d.ts.map +1 -0
  343. package/dist/shared/types/closingActions.js +25 -0
  344. package/dist/shared/types/closingActions.js.map +1 -0
  345. package/dist/shared/types/finding.d.ts +275 -40
  346. package/dist/shared/types/finding.d.ts.map +1 -1
  347. package/dist/shared/types/finding.js +87 -0
  348. package/dist/shared/types/finding.js.map +1 -1
  349. package/dist/shared/types/intentCheckpoint.d.ts +50 -0
  350. package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
  351. package/dist/shared/types/intentCheckpoint.js +31 -0
  352. package/dist/shared/types/intentCheckpoint.js.map +1 -1
  353. package/dist/shared/validation/citationGrounding.d.ts +115 -0
  354. package/dist/shared/validation/citationGrounding.d.ts.map +1 -0
  355. package/dist/shared/validation/citationGrounding.js +347 -0
  356. package/dist/shared/validation/citationGrounding.js.map +1 -0
  357. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  358. package/dist/shared/validation/findingsReport.js +62 -0
  359. package/dist/shared/validation/findingsReport.js.map +1 -1
  360. package/docs/audit-pkg/contracts.md +34 -12
  361. package/docs/audit-pkg/operator-guide.md +10 -7
  362. package/package.json +3 -2
  363. package/schemas/audit-code-v1alpha1.schema.json +2 -1
  364. package/skills/audit-code/audit-code.prompt.md +5 -3
  365. package/dist/remediate/state/closingActions.d.ts +0 -3
  366. package/dist/remediate/state/closingActions.d.ts.map +0 -1
  367. package/dist/remediate/state/closingActions.js +0 -10
  368. package/dist/remediate/state/closingActions.js.map +0 -1
package/README.md CHANGED
@@ -191,7 +191,7 @@ steps (e.g. deterministic subsystem clustering runs before the intent checkpoint
191
191
  1. **Intake** — reads the findings and/or free-form intent, validates the input, and drafts a
192
192
  summary with any open questions.
193
193
  2. **Confirm intent** — you confirm scope, answer open questions, and set the closing action
194
- (commit, push, open PR, publish, or halt).
194
+ (commit, push, open PR, publish, tag, none, or a custom command).
195
195
  3. **Design the change** — decomposes the work into modules, drafts a contract per module in
196
196
  parallel, detects and reconciles seams (where one module's output must match another's
197
197
  input), then derives obligations and a test plan. Riskier changes get an independent
@@ -116,7 +116,7 @@ export declare function ingestBatchAuditResults(options: {
116
116
  status: "blocked" | "complete" | "not_started" | "active";
117
117
  obligations: {
118
118
  id: string;
119
- state: "blocked" | "missing" | "satisfied" | "present" | "stale";
119
+ state: "blocked" | "not_applicable" | "missing" | "satisfied" | "present" | "stale";
120
120
  reason?: string | undefined;
121
121
  }[];
122
122
  last_executor?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"charterExtractionPrompt.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/charterExtractionPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAK/D;;;;;;;;;;;;;;;GAeG;AAEH,uEAAuE;AACvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,OAAO,GAChB,oBAAoB,EAAE,CAExB;AA2CD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE;IACJ,IAAI,EAAE,oBAAoB,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB,GACA,MAAM,CA6FR"}
1
+ {"version":3,"file":"charterExtractionPrompt.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/charterExtractionPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAK/D;;;;;;;;;;;;;;;GAeG;AAEH,uEAAuE;AACvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,OAAO,GAChB,oBAAoB,EAAE,CAExB;AA2CD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE;IACJ,IAAI,EAAE,oBAAoB,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB,GACA,MAAM,CA0GR"}
@@ -77,6 +77,13 @@ export function renderCharterKindLanePrompt(bundle, opts) {
77
77
  "tool to hold exactly this channel's evidence. Do NOT read repository files",
78
78
  "directly, and do NOT read another lane's prompt, packet, or output.",
79
79
  "",
80
+ "The packet already contains everything a correct citation needs, so obeying",
81
+ "that instruction is SUFFICIENT — you never have to open a file to cite one.",
82
+ "Its `## Provenance manifest` block names every excerpt with the exact line",
83
+ "runs delivered, and every content line is prefixed with its TRUE line number",
84
+ "in its own source file (` 12| …`). COPY a citation from there; never count",
85
+ "lines, never infer them, and never cite a range that spans two runs.",
86
+ "",
80
87
  ...lane.channel,
81
88
  "",
82
89
  "## Self-organize a leveled teleology",
@@ -133,7 +140,13 @@ export function renderCharterKindLanePrompt(bundle, opts) {
133
140
  // closedness of the RENDERED text instead of teaching a worker a smaller
134
141
  // contract (an open list here coined a member and quarantined a 34-minute
135
142
  // lane run).
136
- ` "provenance": [{ "kind": "${PROVENANCE_KINDS}", "ref": "<path/id>", "quote": "<optional>" }],`,
143
+ ` "provenance": [{ "kind": "${PROVENANCE_KINDS}", "ref": "<path>:<startLine>-<endLine>", "quote": "<optional>" }],`,
144
+ "",
145
+ " `ref` is COPIED verbatim from ONE line run in your packet's manifest",
146
+ " — never counted, inferred, or spanned across two runs. Use",
147
+ " `<path>:<N>` for a single line, or the bare `<path>` when the claim",
148
+ " names no lines at all. A non-path source (an intent-checkpoint field,",
149
+ " a component id) stays a bare id.",
137
150
  ' "confidence": "high|medium|low"',
138
151
  " }",
139
152
  " ]",
@@ -1 +1 @@
1
- {"version":3,"file":"charterExtractionPrompt.js","sourceRoot":"","sources":["../../../src/audit/cli/charterExtractionPrompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"charterExtractionPrompt.js","sourceRoot":"","sources":["../../../src/audit/cli/charterExtractionPrompt.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import type { AuditState } from "../types/auditState.js";
2
2
  export type CleanupOptions = {
3
3
  force?: boolean;
4
4
  dryRun?: boolean;
5
- preRun?: boolean;
6
5
  };
7
6
  export type CleanupResult = {
8
7
  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;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
+ {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/cleanup.ts"],"names":[],"mappings":"AAIA,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;AA8BF,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CA6CxB"}
@@ -1,24 +1,37 @@
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. 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.
4
+ import { isWorkingDirFullyPromoted } from "../io/artifacts.js";
5
+ // Remove a stale working artifacts directory. Two callers, ONE rule: the
6
+ // `cleanup` CLI command (cmdCleanup) and the next-step pre-run sweep
7
+ // (cmdNextStepBody) call this identically — owner decision 74c89b226ab9b9cd
8
+ // (2026-08-31), which reversed the not_started-only pre-run narrowing of
9
+ // 7ebeccc8 while keeping its protection.
7
10
  //
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.
11
+ // A dir is stale (eligible without --force) when nothing in it is still owed to
12
+ // the host: its run is `not_started` (nothing was produced), or `complete` with
13
+ // nothing left for the completion transition to do every artifact promotion
14
+ // archives is already one level up, byte-identical, as decided by promotion's
15
+ // own archive walk in verify-only mode (isWorkingDirFullyPromoted), never by a
16
+ // second list. A `complete` dir with work left — an unpromoted render, an
17
+ // unarchived contract, friction triage pending — is a live continuation for
18
+ // BOTH callers: at next-step entry the fold's terminal step presents and
19
+ // promotes it; the verb refuses it without --force. Sweeping it would destroy
20
+ // the only copy of a finished audit.
21
+ //
22
+ // Deletion contract: only the working artifacts dir is removed. The promoted
23
+ // final reports live one level up (promotedAuditReportPath /
24
+ // promotedAuditFindingsPath, and the remediation pair beside them) and no
25
+ // cleanup path touches them. A missing state file means there is nothing to
26
+ // clean.
14
27
  //
15
28
  // With options:
16
- // preRun=true pre-run sweep mode: only `not_started` is eligible.
17
- // force=true — delete even when status is active/blocked or state file is missing.
29
+ // force=true delete even when the run is active/blocked, complete with
30
+ // work left, or has no state file.
18
31
  // dryRun=true — skip the actual rm call and return action='dry-run'.
19
- // All default to false.
32
+ // Both default to false.
20
33
  export async function cleanupStaleArtifactsDir(artifactsDir, options = {}) {
21
- const { force = false, dryRun = false, preRun = false } = options;
34
+ const { force = false, dryRun = false } = options;
22
35
  let status = "unknown";
23
36
  try {
24
37
  const state = await readJsonFile(join(artifactsDir, "audit_state.json"));
@@ -30,20 +43,19 @@ export async function cleanupStaleArtifactsDir(artifactsDir, options = {}) {
30
43
  }
31
44
  // State file missing — status stays "unknown".
32
45
  }
33
- const eligibleWithoutForce = preRun
34
- ? status === "not_started"
35
- : status === "complete" || status === "not_started";
46
+ const stale = status === "not_started" ||
47
+ (status === "complete" && (force || (await isWorkingDirFullyPromoted(artifactsDir))));
36
48
  const resumable = status === "active" || status === "blocked";
37
- if (!eligibleWithoutForce && !force) {
49
+ if (!stale && !force) {
38
50
  // active/blocked — caller may want to resume; skip unless forced
39
51
  if (resumable) {
40
52
  const reason = `audit is ${status} and may be resumed — use --force to delete anyway`;
41
53
  return { action: "skipped", status, reason };
42
54
  }
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.
55
+ // complete with work left the dir holds the only copy of the finished
56
+ // audit until the completion transition promotes it.
45
57
  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";
58
+ const reason = "audit is complete but its final report is not fully promoted — this dir holds the only copy; run next-step to present and promote it, or use --force to delete anyway";
47
59
  return { action: "skipped", status, reason };
48
60
  }
49
61
  // unknown (missing state file) — no-op by default; caller decides how to
@@ -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;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
+ {"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,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAc/D,yEAAyE;AACzE,qEAAqE;AACrE,4EAA4E;AAC5E,yEAAyE;AACzE,yCAAyC;AACzC,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,8EAA8E;AAC9E,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,yEAAyE;AACzE,8EAA8E;AAC9E,qCAAqC;AACrC,EAAE;AACF,6EAA6E;AAC7E,6DAA6D;AAC7D,0EAA0E;AAC1E,4EAA4E;AAC5E,SAAS;AACT,EAAE;AACF,gBAAgB;AAChB,4EAA4E;AAC5E,mDAAmD;AACnD,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,KAAK,GACT,MAAM,KAAK,aAAa;QACxB,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,yBAAyB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,CAAC;IAE9D,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,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,qDAAqD;QACrD,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,MAAM,MAAM,GACV,uKAAuK,CAAC;YAC1K,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":"conceptualDispatch.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/conceptualDispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAezD,OAAO,EAML,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,SAAS,GAAG,MAAM,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,EAC1D,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,EACjD,aAAa,EAAE,SAAS,GAAG,MAAM,GAChC,MAAM,CAUR;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,cAAc,GACrB,wBAAwB,CA+B1B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,8CAA8C;IAC9C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,+CAA+C;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mEAAmE;IACnE,SAAS,EAAE,uBAAuB,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,wBAAwB,CAAC;IACnC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAgO9B"}
1
+ {"version":3,"file":"conceptualDispatch.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/conceptualDispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAiBzD,OAAO,EAOL,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,SAAS,GAAG,MAAM,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,EAC1D,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,EACjD,aAAa,EAAE,SAAS,GAAG,MAAM,GAChC,MAAM,CAUR;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,cAAc,GACrB,wBAAwB,CA+B1B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,8CAA8C;IAC9C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,+CAA+C;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mEAAmE;IACnE,SAAS,EAAE,uBAAuB,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,wBAAwB,CAAC;IACnC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2P9B"}
@@ -1,8 +1,9 @@
1
1
  import { charterReviewDisposition, } from "audit-tools/shared";
2
+ import { resolveIntentLensSelection } from "../orchestrator/lensSelection.js";
2
3
  import { renderConceptualReviewPrompt, renderConceptualPerspectivePrompt, renderConceptualJudgePrompt, selectPerspectives, } from "../orchestrator/designReviewPrompt.js";
3
4
  import { materializeFanoutLanes } from "./fanoutLanes.js";
4
- import { clearConceptualReviewRoundManifest, conceptualReviewRoundManifestPath, writeConceptualReviewRoundManifest, } from "../types/conceptualAdjudication.js";
5
- import { AUDIT_GATE_SUBMISSION_SCOPE, GATE_LANES, conceptualPerspectiveLane, conceptualRoundToken, laneSubmissionPath, } from "./laneSubmissions.js";
5
+ import { clearConceptualReviewRoundManifest, conceptualReviewRoundManifestPath, readConceptualReviewRoundManifest, writeConceptualReviewRoundManifest, } from "../types/conceptualAdjudication.js";
6
+ import { AUDIT_GATE_SUBMISSION_SCOPE, GATE_LANES, closeDispatchedLaneOutcomes, conceptualPerspectiveLane, conceptualRoundToken, laneSubmissionPath, } from "./laneSubmissions.js";
6
7
  /**
7
8
  * Render the host-visible reuse notice when a prior `intent_checkpoint.design_review`
8
9
  * drives this workload. Content-sorted lens list keeps the text stable (no churn),
@@ -69,7 +70,28 @@ export async function prepareConceptualDispatch(opts) {
69
70
  // it is the `design_review_conceptual` LANE, so the gate reads one bound path
70
71
  // and the state machine is unchanged by the depth choice.
71
72
  const conceptualResultsPath = laneSubmissionPath(artifactsDir, GATE_LANES.design_review_conceptual);
72
- const reviewOptions = { max_units: settings.max_units };
73
+ // The operator's lens selection reaches EVERY lens-open lane of this pass —
74
+ // the shallow reviewer, each perspective, and the judge. It reached none of
75
+ // them before: this options object had no lens field at all, so the only lens
76
+ // a lane ever saw was the output example's hard-coded literal.
77
+ const lenses = resolveIntentLensSelection(bundle.intent_checkpoint?.lens_selection);
78
+ const reviewOptions = {
79
+ max_units: settings.max_units,
80
+ ...(lenses === undefined ? {} : { lenses }),
81
+ };
82
+ // A round that is about to be superseded — by a re-review, or by a switch to
83
+ // the shallow pass — will never be ingested, so this is the last moment its
84
+ // perspectives' dispatch rows can be closed with what they actually
85
+ // delivered. Read from the manifest the tool wrote; no lane id is parsed.
86
+ const priorRound = await readConceptualReviewRoundManifest(artifactsDir);
87
+ const closePriorRound = async (currentRoundId) => {
88
+ if (!priorRound || priorRound.round_id === currentRoundId)
89
+ return;
90
+ await closeDispatchedLaneOutcomes(artifactsDir, {
91
+ lanes: priorRound.perspectives.map((perspective) => perspective.lane_id),
92
+ roundId: priorRound.round_id,
93
+ });
94
+ };
73
95
  if (settings.conceptual_depth !== "deep") {
74
96
  const fanout = await materializeFanoutLanes({
75
97
  artifactsDir,
@@ -84,6 +106,7 @@ export async function prepareConceptualDispatch(opts) {
84
106
  ],
85
107
  });
86
108
  const conceptualPromptPath = fanout.lanes[0].promptPath;
109
+ await closePriorRound();
87
110
  await clearConceptualReviewRoundManifest(artifactsDir);
88
111
  return {
89
112
  deep: false,
@@ -128,11 +151,11 @@ export async function prepareConceptualDispatch(opts) {
128
151
  resultsPath: laneSubmissionPath(artifactsDir, lane, AUDIT_GATE_SUBMISSION_SCOPE),
129
152
  };
130
153
  });
131
- const judgePromptText = renderConceptualJudgePrompt(perspectiveFiles.map((f) => ({
154
+ const judgePromptText = renderConceptualJudgePrompt(bundle, perspectiveFiles.map((f) => ({
132
155
  name: f.name,
133
156
  path: f.resultsPath,
134
157
  contributor_id: f.lane,
135
- })), roundToken) + reReviewSuffix;
158
+ })), roundToken, reviewOptions) + reReviewSuffix;
136
159
  const laneSpecs = [
137
160
  ...perspectiveFiles.map((f) => ({
138
161
  id: f.lane,
@@ -153,9 +176,11 @@ export async function prepareConceptualDispatch(opts) {
153
176
  promptText: judgePromptText,
154
177
  },
155
178
  ];
179
+ await closePriorRound(roundToken);
156
180
  const fanout = await materializeFanoutLanes({
157
181
  artifactsDir,
158
182
  runId: AUDIT_GATE_SUBMISSION_SCOPE,
183
+ roundId: roundToken,
159
184
  lanes: laneSpecs,
160
185
  });
161
186
  const promptPathFor = (laneId) => fanout.lanes.find((lane) => lane.id === laneId).promptPath;
@@ -1 +1 @@
1
- {"version":3,"file":"conceptualDispatch.js","sourceRoot":"","sources":["../../../src/audit/cli/conceptualDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conceptualDispatch.js","sourceRoot":"","sources":["../../../src/audit/cli/conceptualDispatch.ts"],"names":[],"mappings":"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"}
@@ -82,6 +82,8 @@ export interface AuditHostIngestSummary {
82
82
  * measured drift P25 exists to make visible.
83
83
  */
84
84
  readonly issues: readonly AuditHostIngestIssue[];
85
+ /** Raw issue observations for the sole recorder; excluded from host rendering. */
86
+ readonly raw_issues: readonly AuditHostIngestIssue[];
85
87
  /**
86
88
  * Advisory validation findings on results that WERE accepted — a small
87
89
  * coverage-stat divergence, verification metadata on a non-verification
@@ -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 } from "node:path";
3
- import { createMemoizedSourceReader, appendSubmissionEvent, SUBMISSION_LEDGER_EVENT_CONTRACT_VERSION, bindingIdentity, compareCodeUnits, contentSha256, firstDuplicateIdentity, hasExactKeys, hostHandoffResultPath, isFileMissingError, isRecord, isSha256, parseAllWorkloadItems, parseWorkloadEnvelope, promptSha256, readJsonFile, repoRelativePath, requireNonEmptyString, resolveContainedPath, resolveHostHandoffPaths, resultMapIdentity, scanBoundSubmission, siblingLockPath, sameStrings, stableStringify, verifyFindingGrounding, withFileLock, writeBlockedStepContract, writeJsonFile, } from "audit-tools/shared";
3
+ import { createMemoizedSourceReader, appendSubmissionEvent, SUBMISSION_LEDGER_EVENT_CONTRACT_VERSION, bindingIdentity, compareCodeUnits, contentSha256, firstDuplicateIdentity, hasExactKeys, hostHandoffResultPath, isFileMissingError, isRecord, isSha256, parseAllWorkloadItems, parseWorkloadEnvelope, promptSha256, enrichMissingSubmissionIssues, readTrailingSubmissionRefusals, readJsonFile, repoRelativePath, requireNonEmptyString, resolveContainedPath, resolveHostHandoffPaths, resultMapIdentity, scanBoundSubmission, siblingLockPath, sameStrings, stableStringify, verifyFindingGrounding, withFileLock, writeBlockedStepContract, writeJsonFile, } from "audit-tools/shared";
4
4
  import { findingContractPromptLines } from "../../contracts/findingContractPrompt.js";
5
5
  import { WorkerFindingSchema } from "../../contracts/workerSchemas.js";
6
6
  import { AuditResultSchema } from "../../types.js";
@@ -426,10 +426,10 @@ function validateHandoffBinding(paths, workload, resultMap, taskBindings) {
426
426
  const items = new Map();
427
427
  for (const item of workload.work_items) {
428
428
  if (items.has(item.id)) {
429
- throw new Error(`Duplicate audit host work item: ${item.id}`);
429
+ throw bindingFailure("workload_binding", `Duplicate audit host work item: ${item.id}`);
430
430
  }
431
431
  if (item.result_path !== resultPathFor(paths, item.id)) {
432
- throw new Error(`Unbound audit host result path: ${item.id}`);
432
+ throw bindingFailure("workload_binding", `Unbound audit host result path: ${item.id}`);
433
433
  }
434
434
  const binding = taskBindings.get(item.id);
435
435
  if (binding === undefined ||
@@ -439,7 +439,7 @@ function validateHandoffBinding(paths, workload, resultMap, taskBindings) {
439
439
  item.scope.unit_ids.length !== 1 ||
440
440
  binding.unit_id !== item.scope.unit_ids[0] ||
441
441
  !sameStrings(Object.keys(binding.file_line_counts).sort(compareCodeUnits), [...item.scope.files].sort(compareCodeUnits))) {
442
- throw new Error(`Invalid audit host task binding: ${item.id}`);
442
+ throw bindingFailure("workload_binding", `Invalid audit host task binding: ${item.id}`);
443
443
  }
444
444
  items.set(item.id, item);
445
445
  }
@@ -449,14 +449,24 @@ function validateHandoffBinding(paths, workload, resultMap, taskBindings) {
449
449
  // draw's original refusals survive — they are not collapsed into one.
450
450
  const identity = resultMapIdentity([...items.values()], resultMap.entries);
451
451
  if (!identity.ok) {
452
- throw new Error(identity.reason === "coverage"
452
+ throw bindingFailure("workload_binding", identity.reason === "coverage"
453
453
  ? "Audit host result map does not cover the workload exactly"
454
454
  : `Invalid audit host result binding: ${identity.workItemId ?? "unknown"}`);
455
455
  }
456
456
  return items;
457
457
  }
458
- function refuse(detail) {
459
- return { ok: false, detail };
458
+ /**
459
+ * A persisted-binding failure is a THROW, not an issue: nothing about a host
460
+ * result can be judged until the tool's own workload, result map and task
461
+ * bindings re-derive. The check id is what the throw cites, so the failure is
462
+ * still attributable to a registered ingestion check.
463
+ */
464
+ function bindingFailure(check, message) {
465
+ return new Error(`${message} [${check}]`);
466
+ }
467
+ /** `check` names the registered ingestion check that failed; `detail` is its prose. */
468
+ function refuse(check, detail) {
469
+ return { ok: false, check, detail };
460
470
  }
461
471
  /** `findings[2].affected_files.0.path` — a zod issue path, host-readable. */
462
472
  function issueLocation(prefix, path) {
@@ -477,6 +487,16 @@ function parseFindings(findings) {
477
487
  detail: `findings[${index}].grounding: grounding is tool-computed at ingest and must not be supplied`,
478
488
  };
479
489
  }
490
+ // The same refusal for the second tool-owned verdict: `verification_status`
491
+ // is DERIVED at conceptual ingest from the judge's per-candidate claims, so a
492
+ // worker-supplied value would bypass the derivation and be
493
+ // un-cross-checkable against the adjudication record.
494
+ if (isRecord(finding) && "verification_status" in finding) {
495
+ return {
496
+ ok: false,
497
+ detail: `findings[${index}].verification_status: verification_status is tool-derived at ingest and must not be supplied`,
498
+ };
499
+ }
480
500
  // The STRICT WORKER PROJECTION — the same contract the dispatch prompt
481
501
  // renders (`findingContractPromptLines`). Parsing the lenient base schema
482
502
  // here accepted a prompt-obedient submission that downstream validation
@@ -511,49 +531,49 @@ function parseHostResult(value, runId, item, binding) {
511
531
  value.contract_version !== RESULT_CONTRACT_VERSION ||
512
532
  typeof value.result_id !== "string" ||
513
533
  value.result_id.length === 0) {
514
- return refuse(`result envelope is not ${RESULT_CONTRACT_VERSION} with exactly contract_version, ` +
534
+ return refuse("result_envelope", `result envelope is not ${RESULT_CONTRACT_VERSION} with exactly contract_version, ` +
515
535
  `result_id, run_id, work_item_id, prompt_sha256, file_coverage and findings`);
516
536
  }
517
537
  if (value.run_id !== runId) {
518
- return refuse(`identity binding: run_id is not this run's '${runId}'`);
538
+ return refuse("identity_binding", `identity binding: run_id is not this run's '${runId}'`);
519
539
  }
520
540
  if (value.work_item_id !== item.id) {
521
- return refuse(`identity binding: work_item_id is not '${item.id}'`);
541
+ return refuse("identity_binding", `identity binding: work_item_id is not '${item.id}'`);
522
542
  }
523
543
  if (value.prompt_sha256 !== item.prompt.sha256) {
524
- return refuse("prompt binding: prompt_sha256 is not the sha256 of this work item's prompt");
544
+ return refuse("identity_binding", "prompt binding: prompt_sha256 is not the sha256 of this work item's prompt");
525
545
  }
526
546
  if (!Array.isArray(value.file_coverage)) {
527
- return refuse("file coverage: file_coverage must be an array");
547
+ return refuse("file_coverage", "file coverage: file_coverage must be an array");
528
548
  }
529
549
  if (!Array.isArray(value.findings)) {
530
- return refuse("findings failed the audit finding contract: findings must be an array");
550
+ return refuse("findings_contract", "findings failed the audit finding contract: findings must be an array");
531
551
  }
532
552
  // The parsed findings ride ON the result, so `toAuditResult` never has to
533
553
  // re-parse them (one parse, one door).
534
554
  const findingsParse = parseFindings(value.findings);
535
555
  if (!findingsParse.ok)
536
- return refuse(findingsParse.detail);
556
+ return refuse("findings_contract", findingsParse.detail);
537
557
  const { findings } = findingsParse;
538
558
  const coveragePaths = new Set();
539
559
  for (const coverage of value.file_coverage) {
540
560
  if (!isRecord(coverage) ||
541
561
  !hasExactKeys(coverage, ["path", "reviewed_lines", "total_lines"]) ||
542
562
  typeof coverage.path !== "string") {
543
- return refuse("file coverage: every entry must contain exactly path, reviewed_lines and total_lines");
563
+ return refuse("file_coverage", "file coverage: every entry must contain exactly path, reviewed_lines and total_lines");
544
564
  }
545
565
  if (coveragePaths.has(coverage.path)) {
546
- return refuse(`file coverage: '${coverage.path}' is covered twice`);
566
+ return refuse("file_coverage", `file coverage: '${coverage.path}' is covered twice`);
547
567
  }
548
568
  if (!Number.isInteger(coverage.reviewed_lines) ||
549
569
  !Number.isInteger(coverage.total_lines) ||
550
570
  coverage.reviewed_lines < 0 ||
551
571
  coverage.reviewed_lines !== coverage.total_lines) {
552
- return refuse(`file coverage: '${coverage.path}' must report reviewed_lines equal to total_lines`);
572
+ return refuse("file_coverage", `file coverage: '${coverage.path}' must report reviewed_lines equal to total_lines`);
553
573
  }
554
574
  const boundLines = binding.file_line_counts[coverage.path];
555
575
  if (coverage.total_lines !== boundLines) {
556
- return refuse(boundLines === undefined
576
+ return refuse("file_coverage", boundLines === undefined
557
577
  ? `file coverage: '${coverage.path}' is not one of this work item's bound files`
558
578
  : `file coverage: '${coverage.path}' reports ${String(coverage.total_lines)} ` +
559
579
  `total_lines, not the bound ${String(boundLines)}`);
@@ -562,7 +582,7 @@ function parseHostResult(value, runId, item, binding) {
562
582
  }
563
583
  const uncovered = item.scope.files.filter((path) => !coveragePaths.has(path));
564
584
  if (uncovered.length > 0 || coveragePaths.size !== item.scope.files.length) {
565
- return refuse(uncovered.length > 0
585
+ return refuse("file_coverage", uncovered.length > 0
566
586
  ? `file coverage: the assigned scope is not fully covered (missing ${uncovered.join(", ")})`
567
587
  : "file coverage: entries do not match the assigned scope exactly");
568
588
  }
@@ -671,6 +691,7 @@ export async function ingestAuditHostResults(params) {
671
691
  if (!converted.ok) {
672
692
  issues.push({
673
693
  code: "submission_contract_invalid",
694
+ check: "result_schema",
674
695
  message: `work item '${entry.work_item_id}' submitted a result that does not convert to ` +
675
696
  `an AuditResult: ${converted.detail}`,
676
697
  work_item_id: entry.work_item_id,
@@ -704,6 +725,7 @@ export async function ingestAuditHostResults(params) {
704
725
  if (errors.length > 0) {
705
726
  issues.push({
706
727
  code: "result_validation_failed",
728
+ check: "result_validation",
707
729
  message: `work item '${entry.work_item_id}' failed audit-results validation ` +
708
730
  `(${errors.length} error(s)); fix the result file at its bound path and call next-step again: ` +
709
731
  formatAuditResultIssues(errors),
@@ -788,6 +810,11 @@ export async function ingestAuditHostResults(params) {
788
810
  // production caller — fed these very `issues` and `completed_work_item_ids` —
789
811
  // so every rejection below already lands there in arrival order. A second
790
812
  // writer inside the boundary would double-record the same fact.
813
+ const raw_issues = [...issues];
814
+ const refusals = await readTrailingSubmissionRefusals(paths.artifactsDir, raw_issues
815
+ .map((issue) => issue.work_item_id ?? issue.submission_id)
816
+ .filter((id) => id !== undefined));
817
+ const reportedIssues = enrichMissingSubmissionIssues(raw_issues, refusals, "submission_rejected");
791
818
  return {
792
819
  accepted_count: landed.length,
793
820
  accepted_results: ledger.entries.map((entry) => entry.audit_result),
@@ -796,7 +823,8 @@ export async function ingestAuditHostResults(params) {
796
823
  completed_work_item_ids: [
797
824
  ...new Set(ledger.entries.map((entry) => entry.work_item_id)),
798
825
  ].sort(compareCodeUnits),
799
- issues,
826
+ issues: reportedIssues,
827
+ raw_issues,
800
828
  };
801
829
  }
802
830
  /**