audit-tools 0.52.5 → 0.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/dist/audit/cli/auditStep.d.ts +1 -1
  2. package/dist/audit/cli/conceptualDispatch.d.ts +2 -2
  3. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  4. package/dist/audit/cli/conceptualDispatch.js +6 -5
  5. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  6. package/dist/audit/cli/confirmIntentStep.d.ts.map +1 -1
  7. package/dist/audit/cli/confirmIntentStep.js +3 -16
  8. package/dist/audit/cli/confirmIntentStep.js.map +1 -1
  9. package/dist/audit/cli/dispatch/hostHandoff.d.ts +2 -0
  10. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  11. package/dist/audit/cli/dispatch/hostHandoff.js +22 -1
  12. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  13. package/dist/audit/cli/dispatch/packetFilter.d.ts +1 -1
  14. package/dist/audit/cli/dispatch/packetFilter.d.ts.map +1 -1
  15. package/dist/audit/cli/dispatch/packetFilter.js +1 -1
  16. package/dist/audit/cli/dispatch/packetFilter.js.map +1 -1
  17. package/dist/audit/cli/functionalPreflight.d.ts.map +1 -1
  18. package/dist/audit/cli/functionalPreflight.js +6 -3
  19. package/dist/audit/cli/functionalPreflight.js.map +1 -1
  20. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  21. package/dist/audit/cli/nextStepCommand.js +57 -34
  22. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  23. package/dist/audit/cli/nextStepHelpers.d.ts +3 -3
  24. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  25. package/dist/audit/cli/nextStepHelpers.js +52 -77
  26. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  27. package/dist/audit/cli/prompts.d.ts +1 -2
  28. package/dist/audit/cli/prompts.d.ts.map +1 -1
  29. package/dist/audit/cli/prompts.js +2 -12
  30. package/dist/audit/cli/prompts.js.map +1 -1
  31. package/dist/audit/cli/sampleRunCommand.d.ts +2 -2
  32. package/dist/audit/cli/semanticReviewStep.d.ts +11 -2
  33. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  34. package/dist/audit/cli/semanticReviewStep.js +14 -10
  35. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  36. package/dist/audit/contracts/workerSchemas.d.ts +14 -14
  37. package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
  38. package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
  39. package/dist/audit/extractors/graphRoutes.js +1 -3
  40. package/dist/audit/extractors/graphRoutes.js.map +1 -1
  41. package/dist/audit/io/artifacts.d.ts.map +1 -1
  42. package/dist/audit/io/artifacts.js +2 -3
  43. package/dist/audit/io/artifacts.js.map +1 -1
  44. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  45. package/dist/audit/orchestrator/advance.js +21 -1
  46. package/dist/audit/orchestrator/advance.js.map +1 -1
  47. package/dist/audit/orchestrator/architectureDiscovery.d.ts +25 -0
  48. package/dist/audit/orchestrator/architectureDiscovery.d.ts.map +1 -0
  49. package/dist/audit/orchestrator/architectureDiscovery.js +193 -0
  50. package/dist/audit/orchestrator/architectureDiscovery.js.map +1 -0
  51. package/dist/audit/orchestrator/dependencyMap.d.ts +20 -0
  52. package/dist/audit/orchestrator/dependencyMap.d.ts.map +1 -1
  53. package/dist/audit/orchestrator/dependencyMap.js +47 -0
  54. package/dist/audit/orchestrator/dependencyMap.js.map +1 -1
  55. package/dist/audit/orchestrator/dependencySlices.d.ts.map +1 -1
  56. package/dist/audit/orchestrator/dependencySlices.js +37 -3
  57. package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
  58. package/dist/audit/orchestrator/designReviewProjection.d.ts +2 -6
  59. package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
  60. package/dist/audit/orchestrator/designReviewProjection.js +2 -6
  61. package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
  62. package/dist/audit/orchestrator/designReviewPrompt.d.ts +2 -2
  63. package/dist/audit/orchestrator/designReviewPrompt.js +2 -2
  64. package/dist/audit/orchestrator/designReviewSnapshot.d.ts +2 -3
  65. package/dist/audit/orchestrator/designReviewSnapshot.d.ts.map +1 -1
  66. package/dist/audit/orchestrator/designReviewSnapshot.js +2 -3
  67. package/dist/audit/orchestrator/designReviewSnapshot.js.map +1 -1
  68. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  69. package/dist/audit/orchestrator/executorRunners.js +1 -22
  70. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  71. package/dist/audit/orchestrator/executors.d.ts.map +1 -1
  72. package/dist/audit/orchestrator/executors.js +0 -12
  73. package/dist/audit/orchestrator/executors.js.map +1 -1
  74. package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
  75. package/dist/audit/orchestrator/ingestionExecutors.js +38 -37
  76. package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
  77. package/dist/audit/orchestrator/nextStep.d.ts +2 -28
  78. package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
  79. package/dist/audit/orchestrator/nextStep.js +4 -37
  80. package/dist/audit/orchestrator/nextStep.js.map +1 -1
  81. package/dist/audit/orchestrator/obligationDerive.d.ts +2 -3
  82. package/dist/audit/orchestrator/obligationDerive.d.ts.map +1 -1
  83. package/dist/audit/orchestrator/obligationDerive.js +2 -3
  84. package/dist/audit/orchestrator/obligationDerive.js.map +1 -1
  85. package/dist/audit/orchestrator/pendingTasks.d.ts +2 -0
  86. package/dist/audit/orchestrator/pendingTasks.d.ts.map +1 -1
  87. package/dist/audit/orchestrator/pendingTasks.js +5 -1
  88. package/dist/audit/orchestrator/pendingTasks.js.map +1 -1
  89. package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
  90. package/dist/audit/orchestrator/planningExecutors.js +9 -0
  91. package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
  92. package/dist/audit/orchestrator/requeueCommand.d.ts +1 -1
  93. package/dist/audit/orchestrator/resultBaseline.d.ts +5 -5
  94. package/dist/audit/orchestrator/resultBaseline.d.ts.map +1 -1
  95. package/dist/audit/orchestrator/resultBaseline.js +24 -47
  96. package/dist/audit/orchestrator/resultBaseline.js.map +1 -1
  97. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.d.ts.map +1 -1
  98. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js +2 -0
  99. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js.map +1 -1
  100. package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
  101. package/dist/audit/orchestrator/staleness.js +14 -10
  102. package/dist/audit/orchestrator/staleness.js.map +1 -1
  103. package/dist/audit/orchestrator/state.js +1 -1
  104. package/dist/audit/orchestrator/state.js.map +1 -1
  105. package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
  106. package/dist/audit/orchestrator/synthesisExecutors.js +3 -0
  107. package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
  108. package/dist/audit/types/auditState.d.ts +6 -6
  109. package/dist/audit/types/flowCoverage.d.ts +6 -6
  110. package/dist/audit/types.d.ts +24 -13
  111. package/dist/audit/types.d.ts.map +1 -1
  112. package/dist/audit/types.js +92 -11
  113. package/dist/audit/types.js.map +1 -1
  114. package/dist/remediate/contractPipeline/executionPlan.d.ts +1908 -0
  115. package/dist/remediate/contractPipeline/executionPlan.d.ts.map +1 -0
  116. package/dist/remediate/contractPipeline/executionPlan.js +467 -0
  117. package/dist/remediate/contractPipeline/executionPlan.js.map +1 -0
  118. package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts +12 -0
  119. package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts.map +1 -0
  120. package/dist/remediate/contractPipeline/runtimePlanAuthority.js +41 -0
  121. package/dist/remediate/contractPipeline/runtimePlanAuthority.js.map +1 -0
  122. package/dist/remediate/dedup/crossLensDedup.d.ts +3 -16
  123. package/dist/remediate/dedup/crossLensDedup.d.ts.map +1 -1
  124. package/dist/remediate/dedup/crossLensDedup.js +2 -32
  125. package/dist/remediate/dedup/crossLensDedup.js.map +1 -1
  126. package/dist/remediate/index.d.ts +2 -19
  127. package/dist/remediate/index.d.ts.map +1 -1
  128. package/dist/remediate/index.js +22 -138
  129. package/dist/remediate/index.js.map +1 -1
  130. package/dist/remediate/intake.d.ts +10 -10
  131. package/dist/remediate/intent/intentOrdering.d.ts +6 -8
  132. package/dist/remediate/intent/intentOrdering.d.ts.map +1 -1
  133. package/dist/remediate/intent/intentOrdering.js +24 -47
  134. package/dist/remediate/intent/intentOrdering.js.map +1 -1
  135. package/dist/remediate/phases/close.d.ts +25 -17
  136. package/dist/remediate/phases/close.d.ts.map +1 -1
  137. package/dist/remediate/phases/close.js +278 -218
  138. package/dist/remediate/phases/close.js.map +1 -1
  139. package/dist/remediate/phases/closeAcceptance.d.ts +42 -0
  140. package/dist/remediate/phases/closeAcceptance.d.ts.map +1 -0
  141. package/dist/remediate/phases/closeAcceptance.js +66 -0
  142. package/dist/remediate/phases/closeAcceptance.js.map +1 -0
  143. package/dist/remediate/phases/closeReviewProvenance.d.ts +1 -1
  144. package/dist/remediate/phases/closeReviewProvenance.d.ts.map +1 -1
  145. package/dist/remediate/phases/closeReviewProvenance.js +9 -8
  146. package/dist/remediate/phases/closeReviewProvenance.js.map +1 -1
  147. package/dist/remediate/phases/closeVerifyAnalyzerLeads.d.ts.map +1 -1
  148. package/dist/remediate/phases/closeVerifyAnalyzerLeads.js +11 -9
  149. package/dist/remediate/phases/closeVerifyAnalyzerLeads.js.map +1 -1
  150. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts +21 -86
  151. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts.map +1 -1
  152. package/dist/remediate/phases/closeVerifyHeadEvidence.js +30 -19
  153. package/dist/remediate/phases/closeVerifyHeadEvidence.js.map +1 -1
  154. package/dist/remediate/phases/plan.d.ts +3 -60
  155. package/dist/remediate/phases/plan.d.ts.map +1 -1
  156. package/dist/remediate/phases/plan.js +3 -227
  157. package/dist/remediate/phases/plan.js.map +1 -1
  158. package/dist/remediate/phases/triage.d.ts.map +1 -1
  159. package/dist/remediate/phases/triage.js +19 -30
  160. package/dist/remediate/phases/triage.js.map +1 -1
  161. package/dist/remediate/riskSignal.d.ts +9 -43
  162. package/dist/remediate/riskSignal.d.ts.map +1 -1
  163. package/dist/remediate/riskSignal.js +7 -28
  164. package/dist/remediate/riskSignal.js.map +1 -1
  165. package/dist/remediate/state/disposition.d.ts +2 -1
  166. package/dist/remediate/state/disposition.d.ts.map +1 -1
  167. package/dist/remediate/state/disposition.js +37 -1
  168. package/dist/remediate/state/disposition.js.map +1 -1
  169. package/dist/remediate/state/runIdentity.d.ts +2 -13
  170. package/dist/remediate/state/runIdentity.d.ts.map +1 -1
  171. package/dist/remediate/state/runIdentity.js +3 -13
  172. package/dist/remediate/state/runIdentity.js.map +1 -1
  173. package/dist/remediate/state/store.d.ts +12 -36
  174. package/dist/remediate/state/store.d.ts.map +1 -1
  175. package/dist/remediate/state/store.js +58 -150
  176. package/dist/remediate/state/store.js.map +1 -1
  177. package/dist/remediate/state/types.d.ts +406 -504
  178. package/dist/remediate/state/types.d.ts.map +1 -1
  179. package/dist/remediate/state/types.js +24 -104
  180. package/dist/remediate/state/types.js.map +1 -1
  181. package/dist/remediate/steps/contractPipeline.d.ts +7 -661
  182. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  183. package/dist/remediate/steps/contractPipeline.js +264 -3851
  184. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  185. package/dist/remediate/steps/contractPipelinePrompts.d.ts +20 -142
  186. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  187. package/dist/remediate/steps/contractPipelinePrompts.js +48 -581
  188. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  189. package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts +4 -1
  190. package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts.map +1 -1
  191. package/dist/remediate/steps/dispatch/contractConformanceReview.js +6 -3
  192. package/dist/remediate/steps/dispatch/contractConformanceReview.js.map +1 -1
  193. package/dist/remediate/steps/dispatch/hostContracts.d.ts +1 -1
  194. package/dist/remediate/steps/dispatch/hostContracts.d.ts.map +1 -1
  195. package/dist/remediate/steps/dispatch/hostHandoff.d.ts +4 -21
  196. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  197. package/dist/remediate/steps/dispatch/hostHandoff.js +161 -383
  198. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  199. package/dist/remediate/steps/finalGate.d.ts +34 -0
  200. package/dist/remediate/steps/finalGate.d.ts.map +1 -1
  201. package/dist/remediate/steps/finalGate.js +44 -4
  202. package/dist/remediate/steps/finalGate.js.map +1 -1
  203. package/dist/remediate/steps/frictionCloseout.d.ts +1 -30
  204. package/dist/remediate/steps/frictionCloseout.d.ts.map +1 -1
  205. package/dist/remediate/steps/frictionCloseout.js +6 -99
  206. package/dist/remediate/steps/frictionCloseout.js.map +1 -1
  207. package/dist/remediate/steps/nextStep.d.ts +2 -15
  208. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  209. package/dist/remediate/steps/nextStep.js +254 -1042
  210. package/dist/remediate/steps/nextStep.js.map +1 -1
  211. package/dist/remediate/steps/prompts.js +16 -16
  212. package/dist/remediate/steps/prompts.js.map +1 -1
  213. package/dist/remediate/steps/stepUtils.d.ts +1 -1
  214. package/dist/remediate/steps/stepUtils.d.ts.map +1 -1
  215. package/dist/remediate/steps/types.d.ts +1 -1
  216. package/dist/remediate/steps/types.d.ts.map +1 -1
  217. package/dist/remediate/steps/types.js +1 -1
  218. package/dist/remediate/steps/types.js.map +1 -1
  219. package/dist/remediate/types/options.d.ts +9 -0
  220. package/dist/remediate/types/options.d.ts.map +1 -1
  221. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  222. package/dist/remediate/validation/artifacts.js +10 -56
  223. package/dist/remediate/validation/artifacts.js.map +1 -1
  224. package/dist/remediate/validation/remediationState.d.ts +2 -2
  225. package/dist/remediate/validation/remediationState.d.ts.map +1 -1
  226. package/dist/remediate/validation/remediationState.js +17 -77
  227. package/dist/remediate/validation/remediationState.js.map +1 -1
  228. package/dist/remediate/validation/verificationReport.d.ts +3 -0
  229. package/dist/remediate/validation/verificationReport.d.ts.map +1 -0
  230. package/dist/remediate/validation/verificationReport.js +28 -0
  231. package/dist/remediate/validation/verificationReport.js.map +1 -0
  232. package/dist/shared/analyzers/types.d.ts +10 -10
  233. package/dist/shared/engine/obligationEngine.d.ts +2 -2
  234. package/dist/shared/friction/triage.d.ts +7 -28
  235. package/dist/shared/friction/triage.d.ts.map +1 -1
  236. package/dist/shared/friction/triage.js +7 -28
  237. package/dist/shared/friction/triage.js.map +1 -1
  238. package/dist/shared/graph/orderedReachability.js +1 -1
  239. package/dist/shared/graph/orderedReachability.js.map +1 -1
  240. package/dist/shared/index.d.ts +5 -6
  241. package/dist/shared/index.d.ts.map +1 -1
  242. package/dist/shared/index.js +3 -4
  243. package/dist/shared/index.js.map +1 -1
  244. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  245. package/dist/shared/loopCorePaths.js +37 -5
  246. package/dist/shared/loopCorePaths.js.map +1 -1
  247. package/dist/shared/prompts.d.ts +24 -10
  248. package/dist/shared/prompts.d.ts.map +1 -1
  249. package/dist/shared/prompts.js +27 -13
  250. package/dist/shared/prompts.js.map +1 -1
  251. package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
  252. package/dist/shared/reReview/projectionDiff.js +6 -14
  253. package/dist/shared/reReview/projectionDiff.js.map +1 -1
  254. package/dist/shared/types/executionPlan.d.ts +416 -0
  255. package/dist/shared/types/executionPlan.d.ts.map +1 -0
  256. package/dist/shared/types/executionPlan.js +132 -0
  257. package/dist/shared/types/executionPlan.js.map +1 -0
  258. package/dist/shared/types/remediationOutcome.d.ts +1378 -12
  259. package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
  260. package/dist/shared/types/remediationOutcome.js +29 -1
  261. package/dist/shared/types/remediationOutcome.js.map +1 -1
  262. package/dist/shared/types/{contractPipeline/verification.d.ts → verificationReport.d.ts} +9 -37
  263. package/dist/shared/types/verificationReport.d.ts.map +1 -0
  264. package/dist/shared/types/verificationReport.js +4 -0
  265. package/dist/shared/types/verificationReport.js.map +1 -0
  266. package/dist/shared/validation/findingGrounding.d.ts +3 -5
  267. package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
  268. package/dist/shared/validation/findingGrounding.js +4 -7
  269. package/dist/shared/validation/findingGrounding.js.map +1 -1
  270. package/package.json +2 -1
  271. package/scripts/shared/primitives.mjs +20 -0
  272. package/skills/audit-code/SKILL.md +5 -12
  273. package/skills/audit-code/audit-code.prompt.md +5 -8
  274. package/skills/audit-code/opencode-command-template.txt +2 -2
  275. package/skills/remediate-code/SKILL.md +5 -7
  276. package/skills/remediate-code/remediate-code.prompt.md +5 -5
  277. package/dispatch/lens-definitions.json +0 -46
  278. package/dist/remediate/contractPipeline/artifactNames.d.ts +0 -8
  279. package/dist/remediate/contractPipeline/artifactNames.d.ts.map +0 -1
  280. package/dist/remediate/contractPipeline/artifactNames.js +0 -28
  281. package/dist/remediate/contractPipeline/artifactNames.js.map +0 -1
  282. package/dist/remediate/contractPipeline/artifactStore.d.ts +0 -219
  283. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +0 -1
  284. package/dist/remediate/contractPipeline/artifactStore.js +0 -436
  285. package/dist/remediate/contractPipeline/artifactStore.js.map +0 -1
  286. package/dist/remediate/contractPipeline/changeClassification.d.ts +0 -130
  287. package/dist/remediate/contractPipeline/changeClassification.d.ts.map +0 -1
  288. package/dist/remediate/contractPipeline/changeClassification.js +0 -446
  289. package/dist/remediate/contractPipeline/changeClassification.js.map +0 -1
  290. package/dist/remediate/contractPipeline/contractReviewBinding.d.ts +0 -28
  291. package/dist/remediate/contractPipeline/contractReviewBinding.d.ts.map +0 -1
  292. package/dist/remediate/contractPipeline/contractReviewBinding.js +0 -75
  293. package/dist/remediate/contractPipeline/contractReviewBinding.js.map +0 -1
  294. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts +0 -27
  295. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts.map +0 -1
  296. package/dist/remediate/contractPipeline/counterexampleFingerprint.js +0 -37
  297. package/dist/remediate/contractPipeline/counterexampleFingerprint.js.map +0 -1
  298. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts +0 -131
  299. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +0 -1
  300. package/dist/remediate/contractPipeline/cyclicSeamResolution.js +0 -257
  301. package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +0 -1
  302. package/dist/remediate/contractPipeline/derive.d.ts +0 -173
  303. package/dist/remediate/contractPipeline/derive.d.ts.map +0 -1
  304. package/dist/remediate/contractPipeline/derive.js +0 -477
  305. package/dist/remediate/contractPipeline/derive.js.map +0 -1
  306. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts +0 -50
  307. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts.map +0 -1
  308. package/dist/remediate/contractPipeline/finalizedContractFields.js +0 -77
  309. package/dist/remediate/contractPipeline/finalizedContractFields.js.map +0 -1
  310. package/dist/remediate/contractPipeline/idRegistry.d.ts +0 -144
  311. package/dist/remediate/contractPipeline/idRegistry.d.ts.map +0 -1
  312. package/dist/remediate/contractPipeline/idRegistry.js +0 -214
  313. package/dist/remediate/contractPipeline/idRegistry.js.map +0 -1
  314. package/dist/remediate/contractPipeline/obligationKinds.d.ts +0 -27
  315. package/dist/remediate/contractPipeline/obligationKinds.d.ts.map +0 -1
  316. package/dist/remediate/contractPipeline/obligationKinds.js +0 -18
  317. package/dist/remediate/contractPipeline/obligationKinds.js.map +0 -1
  318. package/dist/remediate/contractPipeline/phaseCut.d.ts +0 -125
  319. package/dist/remediate/contractPipeline/phaseCut.d.ts.map +0 -1
  320. package/dist/remediate/contractPipeline/phaseCut.js +0 -339
  321. package/dist/remediate/contractPipeline/phaseCut.js.map +0 -1
  322. package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts +0 -31
  323. package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts.map +0 -1
  324. package/dist/remediate/contractPipeline/phaseCutArtifact.js +0 -48
  325. package/dist/remediate/contractPipeline/phaseCutArtifact.js.map +0 -1
  326. package/dist/remediate/contractPipeline/repairState.d.ts +0 -110
  327. package/dist/remediate/contractPipeline/repairState.d.ts.map +0 -1
  328. package/dist/remediate/contractPipeline/repairState.js +0 -185
  329. package/dist/remediate/contractPipeline/repairState.js.map +0 -1
  330. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts +0 -79
  331. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts.map +0 -1
  332. package/dist/remediate/contractPipeline/reviewSnapshot.js +0 -140
  333. package/dist/remediate/contractPipeline/reviewSnapshot.js.map +0 -1
  334. package/dist/remediate/contractPipeline/semanticProjection.d.ts +0 -64
  335. package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +0 -1
  336. package/dist/remediate/contractPipeline/semanticProjection.js +0 -136
  337. package/dist/remediate/contractPipeline/semanticProjection.js.map +0 -1
  338. package/dist/remediate/contractPipeline/sketchSource.d.ts +0 -194
  339. package/dist/remediate/contractPipeline/sketchSource.d.ts.map +0 -1
  340. package/dist/remediate/contractPipeline/sketchSource.js +0 -262
  341. package/dist/remediate/contractPipeline/sketchSource.js.map +0 -1
  342. package/dist/remediate/contractPipeline/testPlanCarry.d.ts +0 -17
  343. package/dist/remediate/contractPipeline/testPlanCarry.d.ts.map +0 -1
  344. package/dist/remediate/contractPipeline/testPlanCarry.js +0 -72
  345. package/dist/remediate/contractPipeline/testPlanCarry.js.map +0 -1
  346. package/dist/remediate/steps/dispatch/marshal.d.ts +0 -7
  347. package/dist/remediate/steps/dispatch/marshal.d.ts.map +0 -1
  348. package/dist/remediate/steps/dispatch/marshal.js +0 -11
  349. package/dist/remediate/steps/dispatch/marshal.js.map +0 -1
  350. package/dist/remediate/validation/contractPipeline.d.ts +0 -35
  351. package/dist/remediate/validation/contractPipeline.d.ts.map +0 -1
  352. package/dist/remediate/validation/contractPipeline.js +0 -613
  353. package/dist/remediate/validation/contractPipeline.js.map +0 -1
  354. package/dist/remediate/validation/contractPipelineGates.d.ts +0 -272
  355. package/dist/remediate/validation/contractPipelineGates.d.ts.map +0 -1
  356. package/dist/remediate/validation/contractPipelineGates.js +0 -1397
  357. package/dist/remediate/validation/contractPipelineGates.js.map +0 -1
  358. package/dist/shared/types/contractPipeline/design.d.ts +0 -79
  359. package/dist/shared/types/contractPipeline/design.d.ts.map +0 -1
  360. package/dist/shared/types/contractPipeline/design.js +0 -16
  361. package/dist/shared/types/contractPipeline/design.js.map +0 -1
  362. package/dist/shared/types/contractPipeline/goal.d.ts +0 -41
  363. package/dist/shared/types/contractPipeline/goal.d.ts.map +0 -1
  364. package/dist/shared/types/contractPipeline/goal.js +0 -10
  365. package/dist/shared/types/contractPipeline/goal.js.map +0 -1
  366. package/dist/shared/types/contractPipeline/implementation.d.ts +0 -118
  367. package/dist/shared/types/contractPipeline/implementation.d.ts.map +0 -1
  368. package/dist/shared/types/contractPipeline/implementation.js +0 -13
  369. package/dist/shared/types/contractPipeline/implementation.js.map +0 -1
  370. package/dist/shared/types/contractPipeline/obligations.d.ts +0 -283
  371. package/dist/shared/types/contractPipeline/obligations.d.ts.map +0 -1
  372. package/dist/shared/types/contractPipeline/obligations.js +0 -84
  373. package/dist/shared/types/contractPipeline/obligations.js.map +0 -1
  374. package/dist/shared/types/contractPipeline/verification.d.ts.map +0 -1
  375. package/dist/shared/types/contractPipeline/verification.js +0 -10
  376. package/dist/shared/types/contractPipeline/verification.js.map +0 -1
  377. package/dist/shared/types/contractPipeline.d.ts +0 -48
  378. package/dist/shared/types/contractPipeline.d.ts.map +0 -1
  379. package/dist/shared/types/contractPipeline.js +0 -32
  380. package/dist/shared/types/contractPipeline.js.map +0 -1
  381. package/dist/shared/types/obligationLedger.d.ts +0 -39
  382. package/dist/shared/types/obligationLedger.d.ts.map +0 -1
  383. package/dist/shared/types/obligationLedger.js +0 -49
  384. package/dist/shared/types/obligationLedger.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import type { Finding } from "../state/types.js";
1
+ import type { Finding } from "audit-tools/shared";
2
2
  export type FindingRiskTier = "safe" | "substantive" | "context_dependent";
3
3
  /** One-line explanation of why the risk rule matched, shown to the reviewing LLM. */
4
4
  export interface FindingClassification {
@@ -1 +1 @@
1
- {"version":3,"file":"stepUtils.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/stepUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,aAAa,GAAG,mBAAmB,CAAC;AAE3E,qFAAqF;AACrF,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAK5E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,qBAAqB,CAmC3E"}
1
+ {"version":3,"file":"stepUtils.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/stepUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,aAAa,GAAG,mBAAmB,CAAC;AAE3E,qFAAqF;AACrF,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAK5E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,qBAAqB,CAmC3E"}
@@ -1,5 +1,5 @@
1
1
  export declare const REMEDIATION_STEP_CONTRACT_VERSION: "remediate-code-step/v1alpha1";
2
- export declare const REMEDIATION_HOST_WORKLOAD_CONTRACT_VERSION: "remediation-host-workload/v1alpha3";
2
+ export declare const REMEDIATION_HOST_WORKLOAD_CONTRACT_VERSION: "remediation-host-workload/v2";
3
3
  export declare const REMEDIATION_HOST_RESULT_CONTRACT_VERSION: "remediation-host-result/v1alpha3";
4
4
  export declare const REMEDIATION_HOST_DECISION_CONTRACT_VERSION: "remediation-host-decision/v1alpha1";
5
5
  export type RemediationStepKind = "operator_resumed" | "operator_paused" | "operator_cancelled" | "confirm_intent" | "confirm_auto_discovered_input" | "confirm_resume_or_restart" | "locate_input" | "collect_starting_point" | "synthesize_intake" | "collect_intake_clarifications" | "contract_pipeline" | "collect_review_approval" | "collect_clarifications" | "dispatch_implement" | "repair_handoff" | "review_contract_conformance" | "phase_busy" | "collect_triage" | "close_run" | "present_report" | "input_conflict" | "unhandled_state" | "zero_documentable_findings" | "final_gate_red" | "blocked" | "fold_did_not_converge" | "extracted_plan_discarded";
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iCAAiC,EAC5C,8BAAuC,CAAC;AAqB1C,eAAO,MAAM,0CAA0C,EACrD,oCAA6C,CAAC;AAEhD,eAAO,MAAM,wCAAwC,EACnD,kCAA2C,CAAC;AAE9C,eAAO,MAAM,0CAA0C,EACrD,oCAA6C,CAAC;AAEhD,MAAM,MAAM,mBAAmB,GAC3B,kBAAkB,GAClB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,+BAA+B,GAC/B,2BAA2B,GAC3B,cAAc,GACd,wBAAwB,GACxB,mBAAmB,GACnB,+BAA+B,GAC/B,mBAAmB,GACnB,yBAAyB,GACzB,wBAAwB,GACxB,oBAAoB,GACpB,gBAAgB,GAChB,6BAA6B,GAC7B,YAAY,GACZ,gBAAgB,GAChB,WAAW,GACX,gBAAgB,GAChB,gBAAgB,GAChB,iBAAiB,GACjB,4BAA4B,GAa5B,gBAAgB,GAIhB,SAAS,GAgBT,uBAAuB,GAqBvB,0BAA0B,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAMxE,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,OAAO,iCAAiC,CAAC;IAC3D,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,eAAO,MAAM,2CAA2C,EACtD,wCAAiD,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,qFAAqF;IACrF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;;OAQG;IACH,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iCAAiC,EAC5C,8BAAuC,CAAC;AAqB1C,eAAO,MAAM,0CAA0C,EACrD,8BAAuC,CAAC;AAE1C,eAAO,MAAM,wCAAwC,EACnD,kCAA2C,CAAC;AAE9C,eAAO,MAAM,0CAA0C,EACrD,oCAA6C,CAAC;AAEhD,MAAM,MAAM,mBAAmB,GAC3B,kBAAkB,GAClB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,+BAA+B,GAC/B,2BAA2B,GAC3B,cAAc,GACd,wBAAwB,GACxB,mBAAmB,GACnB,+BAA+B,GAC/B,mBAAmB,GACnB,yBAAyB,GACzB,wBAAwB,GACxB,oBAAoB,GACpB,gBAAgB,GAChB,6BAA6B,GAC7B,YAAY,GACZ,gBAAgB,GAChB,WAAW,GACX,gBAAgB,GAChB,gBAAgB,GAChB,iBAAiB,GACjB,4BAA4B,GAa5B,gBAAgB,GAIhB,SAAS,GAgBT,uBAAuB,GAqBvB,0BAA0B,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAMxE,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,OAAO,iCAAiC,CAAC;IAC3D,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,eAAO,MAAM,2CAA2C,EACtD,wCAAiD,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,qFAAqF;IACrF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;;;;OAQG;IACH,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB"}
@@ -18,7 +18,7 @@ export const REMEDIATION_STEP_CONTRACT_VERSION = "remediate-code-step/v1alpha1";
18
18
  // derives the changed files from git and reruns the required tests itself. A
19
19
  // persisted workload of an earlier version is reported `workload_stale`, and
20
20
  // the next prepare re-mints its digest under the same binding.
21
- export const REMEDIATION_HOST_WORKLOAD_CONTRACT_VERSION = "remediation-host-workload/v1alpha3";
21
+ export const REMEDIATION_HOST_WORKLOAD_CONTRACT_VERSION = "remediation-host-workload/v2";
22
22
  export const REMEDIATION_HOST_RESULT_CONTRACT_VERSION = "remediation-host-result/v1alpha3";
23
23
  export const REMEDIATION_HOST_DECISION_CONTRACT_VERSION = "remediation-host-decision/v1alpha1";
24
24
  export const REMEDIATION_CLOSING_RESULT_CONTRACT_VERSION = "remediate-code-closing-result/v1alpha1";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"AAAA,oKAAoK;AACpK,MAAM,CAAC,MAAM,iCAAiC,GAC5C,8BAAuC,CAAC;AAE1C,+EAA+E;AAC/E,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,+EAA+E;AAC/E,8EAA8E;AAC9E,yCAAyC;AAEzC,yEAAyE;AACzE,+EAA+E;AAC/E,+EAA+E;AAC/E,aAAa;AACb,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,6EAA6E;AAC7E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,0CAA0C,GACrD,oCAA6C,CAAC;AAEhD,MAAM,CAAC,MAAM,wCAAwC,GACnD,kCAA2C,CAAC;AAE9C,MAAM,CAAC,MAAM,0CAA0C,GACrD,oCAA6C,CAAC;AAuGhD,MAAM,CAAC,MAAM,2CAA2C,GACtD,wCAAiD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"AAAA,oKAAoK;AACpK,MAAM,CAAC,MAAM,iCAAiC,GAC5C,8BAAuC,CAAC;AAE1C,+EAA+E;AAC/E,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,+EAA+E;AAC/E,8EAA8E;AAC9E,yCAAyC;AAEzC,yEAAyE;AACzE,+EAA+E;AAC/E,+EAA+E;AAC/E,aAAa;AACb,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,6EAA6E;AAC7E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,0CAA0C,GACrD,8BAAuC,CAAC;AAE1C,MAAM,CAAC,MAAM,wCAAwC,GACnD,kCAA2C,CAAC;AAE9C,MAAM,CAAC,MAAM,0CAA0C,GACrD,oCAA6C,CAAC;AAuGhD,MAAM,CAAC,MAAM,2CAA2C,GACtD,wCAAiD,CAAC"}
@@ -1,10 +1,19 @@
1
1
  import type { AnalyzerLeadVerifyOverrides } from "../phases/closeVerifyAnalyzerLeads.js";
2
2
  import type { LandingGateVerifyOverrides } from "../phases/closeVerifyLandingGates.js";
3
3
  import type { HeadEvidenceOverrides } from "../phases/closeVerifyHeadEvidence.js";
4
+ import type { GateRunner, ToolOwnedFinalGateResult } from "../steps/finalGate.js";
4
5
  export interface OrchestratorOptions {
5
6
  root: string;
6
7
  artifactsDir: string;
7
8
  input?: string;
9
+ /** The same explicit test-hermeticity control used by next-step. */
10
+ skipFinalGate?: boolean;
11
+ /** Existing final-floor spawn seam; no receipt or worker claim is accepted. */
12
+ finalGateRunner?: GateRunner;
13
+ /** Explicit approval of the previously emitted, unchanged closing preview. */
14
+ finalizeClosing?: boolean;
15
+ /** Presentation only: close has already recorded and stopped on this red. */
16
+ onFinalGateRed?: (gate: ToolOwnedFinalGateResult) => Promise<void>;
8
17
  /**
9
18
  * Test-only seams for the close-gate analyzer re-verify leg
10
19
  * (candidate set / spawn runner / session config). Production passes nothing.
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/remediate/types/options.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAElF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IAC1D;;;OAGG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/remediate/types/options.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAElF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,8EAA8E;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE;;;OAGG;IACH,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IAC1D;;;OAGG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C"}
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/artifacts.ts"],"names":[],"mappings":"AAkDA,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;;;;OASG;IACH,IAAI,EAAE;QACJ,0EAA0E;QAC1E,sBAAsB,EAAE,MAAM,CAAC;QAC/B,sEAAsE;QACtE,qBAAqB,EAAE,MAAM,CAAC;QAC9B,gEAAgE;QAChE,eAAe,EAAE,MAAM,CAAC;QACxB,4EAA4E;QAC5E,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAsWD,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,MAAM,EAMpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,wBAAwB,CAAC,CAwInC"}
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/artifacts.ts"],"names":[],"mappings":"AAkCA,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;;;;OASG;IACH,IAAI,EAAE;QACJ,0EAA0E;QAC1E,sBAAsB,EAAE,MAAM,CAAC;QAC/B,sEAAsE;QACtE,qBAAqB,EAAE,MAAM,CAAC;QAC9B,gEAAgE;QAChE,eAAe,EAAE,MAAM,CAAC;QACxB,4EAA4E;QAC5E,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAsWD,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,MAAM,EAMpB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,wBAAwB,CAAC,CAyFnC"}
@@ -10,14 +10,8 @@ import { isInProgressStatus } from "../state/itemStatus.js";
10
10
  import { validateRemediationPlan, validateTriageResolution, } from "./remediationState.js";
11
11
  import { formatValidationIssues, isRecord, pushValidationIssue, } from "audit-tools/shared";
12
12
  import { REMEDIATION_CLOSING_RESULT_CONTRACT_VERSION, REMEDIATION_HOST_DECISION_CONTRACT_VERSION, REMEDIATION_HOST_RESULT_CONTRACT_VERSION, REMEDIATION_STEP_CONTRACT_VERSION, } from "../steps/types.js";
13
- import { CONTRACT_PIPELINE_VALIDATORS, validateVerificationReport, } from "./contractPipeline.js";
14
- // The OUTCOMES variant, imported from the gate module directly (the same import
15
- // the next-step gates use): it reports which gates actually ran, so an empty
16
- // issues array from a gate whose input was absent is not read as proof-of-clean.
17
- import { evaluateContractPipelineCrossGateOutcomes } from "./contractPipelineGates.js";
18
- import { readRepairState, waivedJudgeAcceptedIds, } from "../contractPipeline/repairState.js";
19
- import { CP_ARTIFACT_NAMES, contractPipelineDir, } from "../contractPipeline/artifactStore.js";
20
- import { intakePaths } from "../intake.js";
13
+ import { validateVerificationReport } from "./verificationReport.js";
14
+ import { readCanonicalPlan, readPlanSource, executionPlanIssues } from "../contractPipeline/executionPlan.js";
21
15
  /**
22
16
  * Funnel a validator's ValidationIssue[] into the human issue log (MNT-19ac220e):
23
17
  * keep only `error`-severity issues and, when any remain, push one formatted line
@@ -208,8 +202,8 @@ function validateHostSubmission(value, path) {
208
202
  async function recordedSubmissionIds(artifactsDir, state) {
209
203
  const recorded = new Set();
210
204
  for (const item of Object.values(state?.items ?? {})) {
211
- if (item.block_id && !isInProgressStatus(item.status)) {
212
- recorded.add(item.block_id);
205
+ if (item.unit_id && !isInProgressStatus(item.status)) {
206
+ recorded.add(item.unit_id);
213
207
  }
214
208
  }
215
209
  try {
@@ -358,52 +352,12 @@ root) {
358
352
  if (closingResult) {
359
353
  pushErrorIssues(issues, validateClosingResult(closingResult, "remediation-closing-result.json"));
360
354
  }
361
- // Contract-pipeline artifact validation (optional — only checked when present).
362
- // Run the SAME full gate set next-step runs, accumulating EVERY failure across
363
- // all present artifacts + gates into ONE result (B1 #3 — no per-invocation
364
- // partial report that would force a fix→re-run→new-failure thrash). Per-artifact
365
- // structural validators run first; the cross-artifact + decomposition gates run
366
- // after so an authoring agent's `validate-artifact` reproduces exactly what
367
- // next-step would reject.
368
- const cpDir = contractPipelineDir(artifactsDir);
369
- const cpPayloads = new Map();
370
- for (const name of CP_ARTIFACT_NAMES) {
371
- const cpPath = join(cpDir, `${name}.json`);
372
- const cpRaw = await readJsonForValidation(cpPath, issues);
373
- if (!cpRaw)
374
- continue;
375
- // The envelope wraps the payload — validate the payload field.
376
- const payload = isRecord(cpRaw) && "payload" in cpRaw ? cpRaw.payload : cpRaw;
377
- cpPayloads.set(name, payload);
378
- pushErrorIssues(issues, CONTRACT_PIPELINE_VALIDATORS[name](payload, name), `${cpPath}:`);
379
- }
380
- // Cross-artifact + decomposition gates. Each gate is individually tolerant of
381
- // an absent input (returns [] when its primary payload is missing/malformed),
382
- // so an incomplete pipeline never fabricates errors — only present artifacts
383
- // are gated.
384
- //
385
- // The plural sweep and the singular `validate-artifact --name X` self-check
386
- // both call `evaluateContractPipelineCrossGateOutcomes`, the single entry
387
- // point that couples each gate's issues with its evaluated/skipped metadata.
388
- let gatesEvaluated = 0;
389
- let gatesSkipped = 0;
390
- if (cpPayloads.size > 0) {
391
- const findingEnumeration = await readJsonForValidation(intakePaths(artifactsDir).findingEnumeration, issues);
392
- for (const outcome of await evaluateContractPipelineCrossGateOutcomes({
393
- payloads: cpPayloads,
394
- findingEnumeration,
395
- root,
396
- // Owner-waived counterexamples are excluded from the coverage gates
397
- // (open-bugs.md:108) — the sweep must agree with next-step's own gating.
398
- waivedCounterexampleIds: waivedJudgeAcceptedIds(await readRepairState(artifactsDir), cpPayloads.get("judge_report"), cpPayloads.get("counterexample")),
399
- })) {
400
- if (outcome.evaluated)
401
- gatesEvaluated += 1;
402
- else
403
- gatesSkipped += 1;
404
- pushErrorIssues(issues, outcome.issues);
405
- }
406
- }
355
+ const canonical = await readCanonicalPlan(artifactsDir);
356
+ const source = await readPlanSource(artifactsDir);
357
+ const gatesEvaluated = canonical && source ? 1 : 0;
358
+ const gatesSkipped = gatesEvaluated ? 0 : 1;
359
+ if (canonical && source)
360
+ issues.push(...executionPlanIssues(root, source, canonical.plan));
407
361
  // Verification report at the root artifacts dir (from FINDING-027).
408
362
  const verificationReportFilePath = verificationReportPath(root);
409
363
  const verificationReport = await readJsonForValidation(verificationReportFilePath, issues);
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/remediate/validation/artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/remediate/validation/artifacts.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type ValidationIssue } from "audit-tools/shared";
2
2
  export declare function validateFinding(value: unknown, path?: string): ValidationIssue[];
3
- export declare function validateRemediationBlock(value: unknown, path?: string): ValidationIssue[];
3
+ export declare function validateExecutionUnit(value: unknown, path?: string): ValidationIssue[];
4
4
  export declare function validateRemediationPlan(value: unknown, path?: string): ValidationIssue[];
5
- export declare function validateTriageResolution(value: unknown, path?: string, knownFindingIds?: ReadonlySet<string>): ValidationIssue[];
5
+ export declare function validateTriageResolution(value: unknown, path?: string, knownUnitIds?: ReadonlySet<string>): ValidationIssue[];
6
6
  //# sourceMappingURL=remediationState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remediationState.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/remediationState.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,eAAe,EAOrB,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,IAAI,SAAY,GACf,eAAe,EAAE,CA0DnB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,IAAI,SAAU,GACb,eAAe,EAAE,CAmDnB;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,IAAI,SAAqB,GACxB,eAAe,EAAE,CAgDnB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,IAAI,SAAsB,EAC1B,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GACpC,eAAe,EAAE,CA6CnB"}
1
+ {"version":3,"file":"remediationState.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/remediationState.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,eAAe,EAMrB,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,IAAI,SAAY,GACf,eAAe,EAAE,CA0DnB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,SAAS,GAAG,eAAe,EAAE,CAGtF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,SAAqB,GAAG,eAAe,EAAE,CAKpG;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,IAAI,SAAsB,EAC1B,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,eAAe,EAAE,CA6CnB"}
@@ -1,6 +1,7 @@
1
- import { ImplementationContextSchema } from "../../shared/types/contractPipeline/implementation.js";
1
+ import { RemediationPlanSchema } from "../state/types.js";
2
+ import { ExecutionUnitSchema, executionPlanReferenceIssues } from "../../shared/types/executionPlan.js";
2
3
  // sites-pinned: tests/remediate/validation.test.ts, tests/remediate/clarification-round-contract.test.ts
3
- import { VALID_SEVERITIES, VALID_CONFIDENCES, isRecord, pushValidationIssue, prefixValidationIssues, requireKeys, } from "audit-tools/shared";
4
+ import { VALID_SEVERITIES, VALID_CONFIDENCES, isRecord, pushValidationIssue, requireKeys, } from "audit-tools/shared";
4
5
  export function validateFinding(value, path = "finding") {
5
6
  const issues = [];
6
7
  issues.push(...requireKeys(value, path, [
@@ -38,78 +39,17 @@ export function validateFinding(value, path = "finding") {
38
39
  }
39
40
  return issues;
40
41
  }
41
- export function validateRemediationBlock(value, path = "block") {
42
- const issues = [];
43
- issues.push(...requireKeys(value, path, [
44
- "block_id",
45
- "items",
46
- "parallel_safe",
47
- "touched_files",
48
- ]));
49
- if (!isRecord(value))
50
- return issues;
51
- if (!Array.isArray(value.items)) {
52
- pushValidationIssue(issues, `${path}.items`, "Expected an array.");
53
- }
54
- if (value.implementation_context !== undefined) {
55
- const parsed = ImplementationContextSchema.safeParse(value.implementation_context);
56
- if (!parsed.success)
57
- for (const issue of parsed.error.issues) {
58
- pushValidationIssue(issues, `${path}.implementation_context.${issue.path.join(".")}`, issue.message);
59
- }
60
- }
61
- if (typeof value.parallel_safe !== "boolean") {
62
- pushValidationIssue(issues, `${path}.parallel_safe`, "Expected a boolean.");
63
- }
64
- // touched_files is REQUIRED and array-typed; an empty array is allowed (the
65
- // block legitimately touches nothing extra), but an omitted field is rejected
66
- // (requireKeys above) so producers cannot silently drop the surface
67
- // declaration the file-ownership scheduler depends on (CE-001 chain head).
68
- if (value.touched_files !== undefined &&
69
- (!Array.isArray(value.touched_files) ||
70
- value.touched_files.some((f) => typeof f !== "string"))) {
71
- pushValidationIssue(issues, `${path}.touched_files`, "Expected an array of strings.");
72
- }
73
- if (value.dependencies !== undefined &&
74
- (!Array.isArray(value.dependencies) ||
75
- value.dependencies.some((d) => typeof d !== "string"))) {
76
- pushValidationIssue(issues, `${path}.dependencies`, "Expected an array of strings when present.");
77
- }
78
- return issues;
42
+ export function validateExecutionUnit(value, path = "unit") {
43
+ const result = ExecutionUnitSchema.safeParse(value);
44
+ return result.success ? [] : result.error.issues.map(issue => ({ path: `${path}.${issue.path.join(".")}`, message: issue.message, severity: "error" }));
79
45
  }
80
46
  export function validateRemediationPlan(value, path = "remediation_plan") {
81
- const issues = [];
82
- issues.push(...requireKeys(value, path, [
83
- "plan_id",
84
- "findings",
85
- "blocks",
86
- "project_type",
87
- "candidate_closing_actions",
88
- ]));
89
- if (!isRecord(value))
90
- return issues;
91
- if (!Array.isArray(value.findings)) {
92
- pushValidationIssue(issues, `${path}.findings`, "Expected an array.");
93
- }
94
- else {
95
- for (const [i, finding] of value.findings.entries()) {
96
- issues.push(...prefixValidationIssues(`${path}.findings[${i}]`, validateFinding(finding, `${path}.findings[${i}]`)));
97
- }
98
- }
99
- if (!Array.isArray(value.blocks)) {
100
- pushValidationIssue(issues, `${path}.blocks`, "Expected an array.");
101
- }
102
- else {
103
- for (const [i, block] of value.blocks.entries()) {
104
- issues.push(...prefixValidationIssues(`${path}.blocks[${i}]`, validateRemediationBlock(block, `${path}.blocks[${i}]`)));
105
- }
106
- }
107
- if (!Array.isArray(value.candidate_closing_actions)) {
108
- pushValidationIssue(issues, `${path}.candidate_closing_actions`, "Expected an array.");
109
- }
110
- return issues;
47
+ const result = RemediationPlanSchema.safeParse(value);
48
+ return result.success
49
+ ? executionPlanReferenceIssues(result.data, result.data.findings.map(finding => finding.id)).map(message => ({ path, message, severity: "error" }))
50
+ : result.error.issues.map(issue => ({ path: `${path}.${issue.path.join(".")}`, message: issue.message, severity: "error" }));
111
51
  }
112
- export function validateTriageResolution(value, path = "triage_resolution", knownFindingIds) {
52
+ export function validateTriageResolution(value, path = "triage_resolution", knownUnitIds) {
113
53
  const issues = [];
114
54
  issues.push(...requireKeys(value, path, ["items"]));
115
55
  if (!isRecord(value))
@@ -124,15 +64,15 @@ export function validateTriageResolution(value, path = "triage_resolution", know
124
64
  pushValidationIssue(issues, `${path}.items[${i}]`, "Expected an object.");
125
65
  continue;
126
66
  }
127
- if (typeof item.finding_id !== "string") {
128
- pushValidationIssue(issues, `${path}.items[${i}].finding_id`, "Expected a string.");
67
+ if (typeof item.unit_id !== "string") {
68
+ pushValidationIssue(issues, `${path}.items[${i}].unit_id`, "Expected a string.");
129
69
  }
130
- else if (knownFindingIds && !knownFindingIds.has(item.finding_id)) {
131
- // Uniform id-join contract: an unknown finding_id is an ERROR, never a
70
+ else if (knownUnitIds && !knownUnitIds.has(item.unit_id)) {
71
+ // Uniform id-join contract: an unknown unit_id is an ERROR, never a
132
72
  // silent no-op — the entry it names would otherwise be dropped whole,
133
73
  // losing the user's triage decision on a typo'd id.
134
- pushValidationIssue(issues, `${path}.items[${i}].finding_id`, `Unknown finding_id "${item.finding_id}" — not in this run's items. ` +
135
- `Valid ids: ${[...knownFindingIds].join(", ")}.`);
74
+ pushValidationIssue(issues, `${path}.items[${i}].unit_id`, `Unknown unit_id "${item.unit_id}" — not in this run's items. ` +
75
+ `Valid ids: ${[...knownUnitIds].join(", ")}.`);
136
76
  }
137
77
  if (typeof item.action !== "string" || !validActions.has(item.action)) {
138
78
  pushValidationIssue(issues, `${path}.items[${i}].action`, `Expected one of ${[...validActions].join(", ")}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"remediationState.js","sourceRoot":"","sources":["../../../src/remediate/validation/remediationState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remediationState.js","sourceRoot":"","sources":["../../../src/remediate/validation/remediationState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type ValidationIssue } from "audit-tools/shared";
2
+ export declare function validateVerificationReport(value: unknown, path?: string): ValidationIssue[];
3
+ //# sourceMappingURL=verificationReport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verificationReport.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/verificationReport.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,SAAwB,GAAG,eAAe,EAAE,CAc1G"}
@@ -0,0 +1,28 @@
1
+ // sites-pinned: tests/remediate/phase-close.test.ts
2
+ import { isRecord } from "audit-tools/shared";
3
+ export function validateVerificationReport(value, path = "verification_report") {
4
+ const errors = [];
5
+ if (!isRecord(value))
6
+ errors.push("Report must be an object.");
7
+ else {
8
+ if (!Array.isArray(value.findings))
9
+ errors.push("findings must be an array.");
10
+ if (value.overall_status !== "passed" && value.overall_status !== "failed")
11
+ errors.push("overall_status must be passed or failed.");
12
+ if (typeof value.created_at !== "string")
13
+ errors.push("created_at must be a string.");
14
+ for (const finding of Array.isArray(value.findings) ? value.findings : []) {
15
+ if (!isRecord(finding) || typeof finding.finding_id !== "string" || !Array.isArray(finding.traces)) {
16
+ errors.push("Each finding must identify its source and evidence traces.");
17
+ continue;
18
+ }
19
+ if (!["passed", "failed", "skipped"].includes(String(finding.overall_status)))
20
+ errors.push("Finding status is invalid.");
21
+ for (const trace of finding.traces)
22
+ if (!isRecord(trace) || typeof trace.trace_id !== "string" || typeof trace.label !== "string" || !Array.isArray(trace.evidence) || !trace.evidence.every(value => typeof value === "string") || !["passed", "failed"].includes(String(trace.status)))
23
+ errors.push("Malformed verification trace.");
24
+ }
25
+ }
26
+ return errors.map(message => ({ path, severity: "error", message }));
27
+ }
28
+ //# sourceMappingURL=verificationReport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verificationReport.js","sourceRoot":"","sources":["../../../src/remediate/validation/verificationReport.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,OAAO,EAAE,QAAQ,EAAwB,MAAM,oBAAoB,CAAC;AACpE,MAAM,UAAU,0BAA0B,CAAC,KAAc,EAAE,IAAI,GAAG,qBAAqB;IACrF,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;SAC1D,CAAC;QACJ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC9E,IAAI,KAAK,CAAC,cAAc,KAAK,QAAQ,IAAI,KAAK,CAAC,cAAc,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACpI,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACtF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1E,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC5L,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACzH,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM;gBAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QACzU,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;AACpE,CAAC"}
@@ -208,7 +208,7 @@ export declare const ExternalAnalyzerToolStatusSchema: z.ZodObject<{
208
208
  source_read_failures: z.ZodOptional<z.ZodNumber>;
209
209
  duration_ms: z.ZodOptional<z.ZodNumber>;
210
210
  }, "strict", z.ZodTypeAny, {
211
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
211
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
212
212
  tool: string;
213
213
  resolved: boolean;
214
214
  error?: string | undefined;
@@ -220,7 +220,7 @@ export declare const ExternalAnalyzerToolStatusSchema: z.ZodObject<{
220
220
  dropped_rows?: number | undefined;
221
221
  source_read_failures?: number | undefined;
222
222
  }, {
223
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
223
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
224
224
  tool: string;
225
225
  resolved: boolean;
226
226
  error?: string | undefined;
@@ -347,7 +347,7 @@ export declare const ExternalAnalyzerResultsSchema: z.ZodObject<{
347
347
  source_read_failures: z.ZodOptional<z.ZodNumber>;
348
348
  duration_ms: z.ZodOptional<z.ZodNumber>;
349
349
  }, "strict", z.ZodTypeAny, {
350
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
350
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
351
351
  tool: string;
352
352
  resolved: boolean;
353
353
  error?: string | undefined;
@@ -359,7 +359,7 @@ export declare const ExternalAnalyzerResultsSchema: z.ZodObject<{
359
359
  dropped_rows?: number | undefined;
360
360
  source_read_failures?: number | undefined;
361
361
  }, {
362
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
362
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
363
363
  tool: string;
364
364
  resolved: boolean;
365
365
  error?: string | undefined;
@@ -467,7 +467,7 @@ export declare const ExternalAnalyzerResultsSchema: z.ZodObject<{
467
467
  kind?: string | undefined;
468
468
  }[] | undefined;
469
469
  tool_statuses?: {
470
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
470
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
471
471
  tool: string;
472
472
  resolved: boolean;
473
473
  error?: string | undefined;
@@ -514,7 +514,7 @@ export declare const ExternalAnalyzerResultsSchema: z.ZodObject<{
514
514
  kind?: string | undefined;
515
515
  }[] | undefined;
516
516
  tool_statuses?: {
517
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
517
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
518
518
  tool: string;
519
519
  resolved: boolean;
520
520
  error?: string | undefined;
@@ -572,7 +572,7 @@ export declare const ExternalAnalyzerAcquisitionMarkerSchema: z.ZodObject<{
572
572
  source_read_failures: z.ZodOptional<z.ZodNumber>;
573
573
  duration_ms: z.ZodOptional<z.ZodNumber>;
574
574
  }, "strict", z.ZodTypeAny, {
575
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
575
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
576
576
  tool: string;
577
577
  resolved: boolean;
578
578
  error?: string | undefined;
@@ -584,7 +584,7 @@ export declare const ExternalAnalyzerAcquisitionMarkerSchema: z.ZodObject<{
584
584
  dropped_rows?: number | undefined;
585
585
  source_read_failures?: number | undefined;
586
586
  }, {
587
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
587
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
588
588
  tool: string;
589
589
  resolved: boolean;
590
590
  error?: string | undefined;
@@ -599,7 +599,7 @@ export declare const ExternalAnalyzerAcquisitionMarkerSchema: z.ZodObject<{
599
599
  }, "strict", z.ZodTypeAny, {
600
600
  enabled: boolean;
601
601
  tool_statuses: {
602
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
602
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
603
603
  tool: string;
604
604
  resolved: boolean;
605
605
  error?: string | undefined;
@@ -615,7 +615,7 @@ export declare const ExternalAnalyzerAcquisitionMarkerSchema: z.ZodObject<{
615
615
  }, {
616
616
  enabled: boolean;
617
617
  tool_statuses: {
618
- status: "findings" | "skipped" | "spawn_error" | "failed" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
618
+ status: "findings" | "skipped" | "failed" | "spawn_error" | "success" | "not_resolved" | "parse_error" | "checksum_mismatch" | "extract_failed";
619
619
  tool: string;
620
620
  resolved: boolean;
621
621
  error?: string | undefined;
@@ -47,11 +47,11 @@ export declare const ObligationSchema: z.ZodObject<{
47
47
  state: z.ZodEnum<["missing", "present", "stale", "blocked", "satisfied", "not_applicable"]>;
48
48
  reason: z.ZodOptional<z.ZodString>;
49
49
  }, "strict", z.ZodTypeAny, {
50
- state: "not_applicable" | "blocked" | "missing" | "satisfied" | "present" | "stale";
50
+ state: "not_applicable" | "blocked" | "missing" | "present" | "stale" | "satisfied";
51
51
  id: string;
52
52
  reason?: string | undefined;
53
53
  }, {
54
- state: "not_applicable" | "blocked" | "missing" | "satisfied" | "present" | "stale";
54
+ state: "not_applicable" | "blocked" | "missing" | "present" | "stale" | "satisfied";
55
55
  id: string;
56
56
  reason?: string | undefined;
57
57
  }>;
@@ -4,35 +4,14 @@ import { type CapturedFrictionItem, type FrictionCategory, type FrictionCategory
4
4
  export type { CapturedFrictionItem, FrictionCategory, FrictionCategoryAttestation, FrictionDisposition, FrictionDispositionRecord, FrictionOpenObservation, TriagedFrictionArtifact, } from './frictionRecord.js';
5
5
  export { FRICTION_CATEGORIES, appendFrictionUnderLock, frictionLockPath, isFrictionCategory, } from './frictionRecord.js';
6
6
  /**
7
- * O1 end-of-run friction TRIAGE — single-sourced for BOTH orchestrators so the
8
- * triage step shape, the disposition vocabulary, the blocking semantics, and the
9
- * close-out deciders cannot drift between the two halves of the pipeline. This is
10
- * the analog (and now the single source) of the former per-orchestrator
11
- * `decideAuditFrictionCloseout` / `decideRemediateFrictionCloseout` deciders,
12
- * collapsed here as one parameterized decider.
7
+ * Explicit development reflection over captured run diagnostics. Both tools use
8
+ * the same event/reflection vocabulary, but neither calls this utility as a
9
+ * condition of target completion. Repository-owned sprint closeout owns the
10
+ * reflection policy.
13
11
  *
14
- * What the triage gates:
15
- * - The MECHANICAL friction events the O3/O2 seams accreted through the sink
16
- * (`captureFrictionEvent` → the per-run `friction/<run_id>.json` record).
17
- * - The OPT-IN agent-feedback reflections workers appended to
18
- * `agent-feedback.jsonl` during the run.
19
- *
20
- * The satisfaction predicate set is the UNION of those two sources. The triage is
21
- * a MANDATORY, BLOCKING end-of-run step: it stays unsatisfied until every captured
22
- * event AND every surfaced reflection carries a recorded disposition. This is
23
- * DISTINCT from the optional, untouched mid-run worker reflection channel — a
24
- * worker MAY append a reflection line, but the blocking triage is the host's
25
- * end-of-run obligation to dispose of what was captured.
26
- *
27
- * False-green is dropped: an empty up-front zero-friction record NO LONGER
28
- * satisfies the close-out. Satisfaction requires either:
29
- * - EMPTY SET: zero events AND zero reflections → trivially disposed (the
30
- * close-out fires once, persists a disposed record, and never re-loops); or
31
- * - DISPOSED: every event id and every reflection key has a `keep|discard|
32
- * annotate` disposition recorded against it.
33
- *
34
- * Friction appends ride O2's `withFileLock` (keyed off the friction record path)
35
- * so a friction append never races the locked critical section.
12
+ * When explicitly requested, triage requires dispositions for captured subjects
13
+ * and an observation or clean attestation for every category. Capture remains
14
+ * best-effort and records are archived even when they have not been triaged.
36
15
  */
37
16
  /** The set of valid dispositions, for validation at the contract boundary. */
38
17
  export declare const FRICTION_DISPOSITIONS: readonly FrictionDisposition[];