audit-tools 0.52.5 → 0.53.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 (347) hide show
  1. package/dist/audit/cli/auditStep.d.ts +1 -1
  2. package/dist/audit/cli/dispatch/hostHandoff.d.ts +2 -0
  3. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  4. package/dist/audit/cli/dispatch/hostHandoff.js +1 -1
  5. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  6. package/dist/audit/cli/dispatch/packetFilter.d.ts +1 -1
  7. package/dist/audit/cli/dispatch/packetFilter.d.ts.map +1 -1
  8. package/dist/audit/cli/dispatch/packetFilter.js +1 -1
  9. package/dist/audit/cli/dispatch/packetFilter.js.map +1 -1
  10. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  11. package/dist/audit/cli/nextStepCommand.js +42 -20
  12. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  13. package/dist/audit/cli/nextStepHelpers.d.ts +3 -3
  14. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  15. package/dist/audit/cli/nextStepHelpers.js +50 -75
  16. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  17. package/dist/audit/cli/prompts.d.ts +1 -2
  18. package/dist/audit/cli/prompts.d.ts.map +1 -1
  19. package/dist/audit/cli/prompts.js +2 -12
  20. package/dist/audit/cli/prompts.js.map +1 -1
  21. package/dist/audit/cli/sampleRunCommand.d.ts +2 -2
  22. package/dist/audit/cli/semanticReviewStep.d.ts +11 -2
  23. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  24. package/dist/audit/cli/semanticReviewStep.js +14 -10
  25. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  26. package/dist/audit/contracts/workerSchemas.d.ts +14 -14
  27. package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
  28. package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
  29. package/dist/audit/extractors/graphRoutes.js +1 -3
  30. package/dist/audit/extractors/graphRoutes.js.map +1 -1
  31. package/dist/audit/io/artifacts.d.ts.map +1 -1
  32. package/dist/audit/io/artifacts.js +2 -3
  33. package/dist/audit/io/artifacts.js.map +1 -1
  34. package/dist/audit/orchestrator/architectureDiscovery.d.ts +11 -0
  35. package/dist/audit/orchestrator/architectureDiscovery.d.ts.map +1 -0
  36. package/dist/audit/orchestrator/architectureDiscovery.js +174 -0
  37. package/dist/audit/orchestrator/architectureDiscovery.js.map +1 -0
  38. package/dist/audit/orchestrator/designReviewProjection.d.ts +2 -6
  39. package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
  40. package/dist/audit/orchestrator/designReviewProjection.js +2 -6
  41. package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
  42. package/dist/audit/orchestrator/designReviewSnapshot.d.ts +2 -3
  43. package/dist/audit/orchestrator/designReviewSnapshot.d.ts.map +1 -1
  44. package/dist/audit/orchestrator/designReviewSnapshot.js +2 -3
  45. package/dist/audit/orchestrator/designReviewSnapshot.js.map +1 -1
  46. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  47. package/dist/audit/orchestrator/executorRunners.js +1 -22
  48. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  49. package/dist/audit/orchestrator/executors.d.ts.map +1 -1
  50. package/dist/audit/orchestrator/executors.js +1 -13
  51. package/dist/audit/orchestrator/executors.js.map +1 -1
  52. package/dist/audit/orchestrator/nextStep.d.ts +2 -28
  53. package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
  54. package/dist/audit/orchestrator/nextStep.js +5 -37
  55. package/dist/audit/orchestrator/nextStep.js.map +1 -1
  56. package/dist/audit/orchestrator/obligationDerive.d.ts +2 -3
  57. package/dist/audit/orchestrator/obligationDerive.d.ts.map +1 -1
  58. package/dist/audit/orchestrator/obligationDerive.js +2 -3
  59. package/dist/audit/orchestrator/obligationDerive.js.map +1 -1
  60. package/dist/audit/orchestrator/pendingTasks.d.ts +2 -0
  61. package/dist/audit/orchestrator/pendingTasks.d.ts.map +1 -1
  62. package/dist/audit/orchestrator/pendingTasks.js +5 -1
  63. package/dist/audit/orchestrator/pendingTasks.js.map +1 -1
  64. package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
  65. package/dist/audit/orchestrator/planningExecutors.js +9 -0
  66. package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
  67. package/dist/audit/orchestrator/requeueCommand.d.ts +1 -1
  68. package/dist/audit/orchestrator/resultBaseline.d.ts +5 -5
  69. package/dist/audit/orchestrator/resultBaseline.d.ts.map +1 -1
  70. package/dist/audit/orchestrator/resultBaseline.js +24 -47
  71. package/dist/audit/orchestrator/resultBaseline.js.map +1 -1
  72. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.d.ts.map +1 -1
  73. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js +2 -0
  74. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js.map +1 -1
  75. package/dist/audit/orchestrator/state.d.ts.map +1 -1
  76. package/dist/audit/orchestrator/state.js +2 -0
  77. package/dist/audit/orchestrator/state.js.map +1 -1
  78. package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
  79. package/dist/audit/orchestrator/synthesisExecutors.js +3 -0
  80. package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
  81. package/dist/audit/types/auditState.d.ts +6 -6
  82. package/dist/audit/types/flowCoverage.d.ts +6 -6
  83. package/dist/audit/types.d.ts +12 -12
  84. package/dist/remediate/contractPipeline/executionPlan.d.ts +1908 -0
  85. package/dist/remediate/contractPipeline/executionPlan.d.ts.map +1 -0
  86. package/dist/remediate/contractPipeline/executionPlan.js +467 -0
  87. package/dist/remediate/contractPipeline/executionPlan.js.map +1 -0
  88. package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts +12 -0
  89. package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts.map +1 -0
  90. package/dist/remediate/contractPipeline/runtimePlanAuthority.js +41 -0
  91. package/dist/remediate/contractPipeline/runtimePlanAuthority.js.map +1 -0
  92. package/dist/remediate/dedup/crossLensDedup.d.ts +3 -16
  93. package/dist/remediate/dedup/crossLensDedup.d.ts.map +1 -1
  94. package/dist/remediate/dedup/crossLensDedup.js +2 -32
  95. package/dist/remediate/dedup/crossLensDedup.js.map +1 -1
  96. package/dist/remediate/index.d.ts +2 -19
  97. package/dist/remediate/index.d.ts.map +1 -1
  98. package/dist/remediate/index.js +22 -138
  99. package/dist/remediate/index.js.map +1 -1
  100. package/dist/remediate/intake.d.ts +10 -10
  101. package/dist/remediate/intent/intentOrdering.d.ts +6 -8
  102. package/dist/remediate/intent/intentOrdering.d.ts.map +1 -1
  103. package/dist/remediate/intent/intentOrdering.js +24 -47
  104. package/dist/remediate/intent/intentOrdering.js.map +1 -1
  105. package/dist/remediate/phases/close.d.ts +25 -17
  106. package/dist/remediate/phases/close.d.ts.map +1 -1
  107. package/dist/remediate/phases/close.js +278 -218
  108. package/dist/remediate/phases/close.js.map +1 -1
  109. package/dist/remediate/phases/closeAcceptance.d.ts +42 -0
  110. package/dist/remediate/phases/closeAcceptance.d.ts.map +1 -0
  111. package/dist/remediate/phases/closeAcceptance.js +66 -0
  112. package/dist/remediate/phases/closeAcceptance.js.map +1 -0
  113. package/dist/remediate/phases/closeReviewProvenance.d.ts +1 -1
  114. package/dist/remediate/phases/closeReviewProvenance.d.ts.map +1 -1
  115. package/dist/remediate/phases/closeReviewProvenance.js +9 -8
  116. package/dist/remediate/phases/closeReviewProvenance.js.map +1 -1
  117. package/dist/remediate/phases/closeVerifyAnalyzerLeads.d.ts.map +1 -1
  118. package/dist/remediate/phases/closeVerifyAnalyzerLeads.js +11 -9
  119. package/dist/remediate/phases/closeVerifyAnalyzerLeads.js.map +1 -1
  120. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts +21 -86
  121. package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts.map +1 -1
  122. package/dist/remediate/phases/closeVerifyHeadEvidence.js +30 -19
  123. package/dist/remediate/phases/closeVerifyHeadEvidence.js.map +1 -1
  124. package/dist/remediate/phases/plan.d.ts +3 -60
  125. package/dist/remediate/phases/plan.d.ts.map +1 -1
  126. package/dist/remediate/phases/plan.js +3 -227
  127. package/dist/remediate/phases/plan.js.map +1 -1
  128. package/dist/remediate/phases/triage.d.ts.map +1 -1
  129. package/dist/remediate/phases/triage.js +19 -30
  130. package/dist/remediate/phases/triage.js.map +1 -1
  131. package/dist/remediate/riskSignal.d.ts +9 -43
  132. package/dist/remediate/riskSignal.d.ts.map +1 -1
  133. package/dist/remediate/riskSignal.js +7 -28
  134. package/dist/remediate/riskSignal.js.map +1 -1
  135. package/dist/remediate/state/disposition.d.ts +2 -1
  136. package/dist/remediate/state/disposition.d.ts.map +1 -1
  137. package/dist/remediate/state/disposition.js +37 -1
  138. package/dist/remediate/state/disposition.js.map +1 -1
  139. package/dist/remediate/state/runIdentity.d.ts +2 -13
  140. package/dist/remediate/state/runIdentity.d.ts.map +1 -1
  141. package/dist/remediate/state/runIdentity.js +3 -13
  142. package/dist/remediate/state/runIdentity.js.map +1 -1
  143. package/dist/remediate/state/store.d.ts +12 -36
  144. package/dist/remediate/state/store.d.ts.map +1 -1
  145. package/dist/remediate/state/store.js +58 -150
  146. package/dist/remediate/state/store.js.map +1 -1
  147. package/dist/remediate/state/types.d.ts +406 -504
  148. package/dist/remediate/state/types.d.ts.map +1 -1
  149. package/dist/remediate/state/types.js +24 -104
  150. package/dist/remediate/state/types.js.map +1 -1
  151. package/dist/remediate/steps/contractPipeline.d.ts +7 -661
  152. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  153. package/dist/remediate/steps/contractPipeline.js +259 -3854
  154. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  155. package/dist/remediate/steps/contractPipelinePrompts.d.ts +20 -142
  156. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  157. package/dist/remediate/steps/contractPipelinePrompts.js +48 -581
  158. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  159. package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts +4 -1
  160. package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts.map +1 -1
  161. package/dist/remediate/steps/dispatch/contractConformanceReview.js +6 -3
  162. package/dist/remediate/steps/dispatch/contractConformanceReview.js.map +1 -1
  163. package/dist/remediate/steps/dispatch/hostContracts.d.ts +1 -1
  164. package/dist/remediate/steps/dispatch/hostContracts.d.ts.map +1 -1
  165. package/dist/remediate/steps/dispatch/hostHandoff.d.ts +4 -21
  166. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  167. package/dist/remediate/steps/dispatch/hostHandoff.js +161 -383
  168. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  169. package/dist/remediate/steps/finalGate.d.ts +34 -0
  170. package/dist/remediate/steps/finalGate.d.ts.map +1 -1
  171. package/dist/remediate/steps/finalGate.js +44 -4
  172. package/dist/remediate/steps/finalGate.js.map +1 -1
  173. package/dist/remediate/steps/frictionCloseout.d.ts +1 -30
  174. package/dist/remediate/steps/frictionCloseout.d.ts.map +1 -1
  175. package/dist/remediate/steps/frictionCloseout.js +6 -99
  176. package/dist/remediate/steps/frictionCloseout.js.map +1 -1
  177. package/dist/remediate/steps/nextStep.d.ts +2 -15
  178. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  179. package/dist/remediate/steps/nextStep.js +255 -1028
  180. package/dist/remediate/steps/nextStep.js.map +1 -1
  181. package/dist/remediate/steps/prompts.js +12 -12
  182. package/dist/remediate/steps/prompts.js.map +1 -1
  183. package/dist/remediate/steps/stepUtils.d.ts +1 -1
  184. package/dist/remediate/steps/stepUtils.d.ts.map +1 -1
  185. package/dist/remediate/steps/types.d.ts +1 -1
  186. package/dist/remediate/steps/types.d.ts.map +1 -1
  187. package/dist/remediate/steps/types.js +1 -1
  188. package/dist/remediate/steps/types.js.map +1 -1
  189. package/dist/remediate/types/options.d.ts +9 -0
  190. package/dist/remediate/types/options.d.ts.map +1 -1
  191. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  192. package/dist/remediate/validation/artifacts.js +10 -56
  193. package/dist/remediate/validation/artifacts.js.map +1 -1
  194. package/dist/remediate/validation/remediationState.d.ts +2 -2
  195. package/dist/remediate/validation/remediationState.d.ts.map +1 -1
  196. package/dist/remediate/validation/remediationState.js +17 -77
  197. package/dist/remediate/validation/remediationState.js.map +1 -1
  198. package/dist/remediate/validation/verificationReport.d.ts +3 -0
  199. package/dist/remediate/validation/verificationReport.d.ts.map +1 -0
  200. package/dist/remediate/validation/verificationReport.js +28 -0
  201. package/dist/remediate/validation/verificationReport.js.map +1 -0
  202. package/dist/shared/analyzers/types.d.ts +10 -10
  203. package/dist/shared/engine/obligationEngine.d.ts +2 -2
  204. package/dist/shared/friction/triage.d.ts +7 -28
  205. package/dist/shared/friction/triage.d.ts.map +1 -1
  206. package/dist/shared/friction/triage.js +7 -28
  207. package/dist/shared/friction/triage.js.map +1 -1
  208. package/dist/shared/graph/orderedReachability.js +1 -1
  209. package/dist/shared/graph/orderedReachability.js.map +1 -1
  210. package/dist/shared/index.d.ts +5 -6
  211. package/dist/shared/index.d.ts.map +1 -1
  212. package/dist/shared/index.js +3 -4
  213. package/dist/shared/index.js.map +1 -1
  214. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  215. package/dist/shared/loopCorePaths.js +6 -0
  216. package/dist/shared/loopCorePaths.js.map +1 -1
  217. package/dist/shared/prompts.d.ts +1 -2
  218. package/dist/shared/prompts.d.ts.map +1 -1
  219. package/dist/shared/prompts.js +1 -2
  220. package/dist/shared/prompts.js.map +1 -1
  221. package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
  222. package/dist/shared/reReview/projectionDiff.js +6 -14
  223. package/dist/shared/reReview/projectionDiff.js.map +1 -1
  224. package/dist/shared/types/executionPlan.d.ts +416 -0
  225. package/dist/shared/types/executionPlan.d.ts.map +1 -0
  226. package/dist/shared/types/executionPlan.js +132 -0
  227. package/dist/shared/types/executionPlan.js.map +1 -0
  228. package/dist/shared/types/remediationOutcome.d.ts +1378 -12
  229. package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
  230. package/dist/shared/types/remediationOutcome.js +29 -1
  231. package/dist/shared/types/remediationOutcome.js.map +1 -1
  232. package/dist/shared/types/{contractPipeline/verification.d.ts → verificationReport.d.ts} +9 -37
  233. package/dist/shared/types/verificationReport.d.ts.map +1 -0
  234. package/dist/shared/types/verificationReport.js +4 -0
  235. package/dist/shared/types/verificationReport.js.map +1 -0
  236. package/dist/shared/validation/findingGrounding.d.ts +3 -5
  237. package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
  238. package/dist/shared/validation/findingGrounding.js +4 -7
  239. package/dist/shared/validation/findingGrounding.js.map +1 -1
  240. package/package.json +1 -1
  241. package/dist/remediate/contractPipeline/artifactNames.d.ts +0 -8
  242. package/dist/remediate/contractPipeline/artifactNames.d.ts.map +0 -1
  243. package/dist/remediate/contractPipeline/artifactNames.js +0 -28
  244. package/dist/remediate/contractPipeline/artifactNames.js.map +0 -1
  245. package/dist/remediate/contractPipeline/artifactStore.d.ts +0 -219
  246. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +0 -1
  247. package/dist/remediate/contractPipeline/artifactStore.js +0 -436
  248. package/dist/remediate/contractPipeline/artifactStore.js.map +0 -1
  249. package/dist/remediate/contractPipeline/changeClassification.d.ts +0 -130
  250. package/dist/remediate/contractPipeline/changeClassification.d.ts.map +0 -1
  251. package/dist/remediate/contractPipeline/changeClassification.js +0 -446
  252. package/dist/remediate/contractPipeline/changeClassification.js.map +0 -1
  253. package/dist/remediate/contractPipeline/contractReviewBinding.d.ts +0 -28
  254. package/dist/remediate/contractPipeline/contractReviewBinding.d.ts.map +0 -1
  255. package/dist/remediate/contractPipeline/contractReviewBinding.js +0 -75
  256. package/dist/remediate/contractPipeline/contractReviewBinding.js.map +0 -1
  257. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts +0 -27
  258. package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts.map +0 -1
  259. package/dist/remediate/contractPipeline/counterexampleFingerprint.js +0 -37
  260. package/dist/remediate/contractPipeline/counterexampleFingerprint.js.map +0 -1
  261. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts +0 -131
  262. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +0 -1
  263. package/dist/remediate/contractPipeline/cyclicSeamResolution.js +0 -257
  264. package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +0 -1
  265. package/dist/remediate/contractPipeline/derive.d.ts +0 -173
  266. package/dist/remediate/contractPipeline/derive.d.ts.map +0 -1
  267. package/dist/remediate/contractPipeline/derive.js +0 -477
  268. package/dist/remediate/contractPipeline/derive.js.map +0 -1
  269. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts +0 -50
  270. package/dist/remediate/contractPipeline/finalizedContractFields.d.ts.map +0 -1
  271. package/dist/remediate/contractPipeline/finalizedContractFields.js +0 -77
  272. package/dist/remediate/contractPipeline/finalizedContractFields.js.map +0 -1
  273. package/dist/remediate/contractPipeline/idRegistry.d.ts +0 -144
  274. package/dist/remediate/contractPipeline/idRegistry.d.ts.map +0 -1
  275. package/dist/remediate/contractPipeline/idRegistry.js +0 -214
  276. package/dist/remediate/contractPipeline/idRegistry.js.map +0 -1
  277. package/dist/remediate/contractPipeline/obligationKinds.d.ts +0 -27
  278. package/dist/remediate/contractPipeline/obligationKinds.d.ts.map +0 -1
  279. package/dist/remediate/contractPipeline/obligationKinds.js +0 -18
  280. package/dist/remediate/contractPipeline/obligationKinds.js.map +0 -1
  281. package/dist/remediate/contractPipeline/phaseCut.d.ts +0 -125
  282. package/dist/remediate/contractPipeline/phaseCut.d.ts.map +0 -1
  283. package/dist/remediate/contractPipeline/phaseCut.js +0 -339
  284. package/dist/remediate/contractPipeline/phaseCut.js.map +0 -1
  285. package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts +0 -31
  286. package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts.map +0 -1
  287. package/dist/remediate/contractPipeline/phaseCutArtifact.js +0 -48
  288. package/dist/remediate/contractPipeline/phaseCutArtifact.js.map +0 -1
  289. package/dist/remediate/contractPipeline/repairState.d.ts +0 -110
  290. package/dist/remediate/contractPipeline/repairState.d.ts.map +0 -1
  291. package/dist/remediate/contractPipeline/repairState.js +0 -185
  292. package/dist/remediate/contractPipeline/repairState.js.map +0 -1
  293. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts +0 -79
  294. package/dist/remediate/contractPipeline/reviewSnapshot.d.ts.map +0 -1
  295. package/dist/remediate/contractPipeline/reviewSnapshot.js +0 -140
  296. package/dist/remediate/contractPipeline/reviewSnapshot.js.map +0 -1
  297. package/dist/remediate/contractPipeline/semanticProjection.d.ts +0 -64
  298. package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +0 -1
  299. package/dist/remediate/contractPipeline/semanticProjection.js +0 -136
  300. package/dist/remediate/contractPipeline/semanticProjection.js.map +0 -1
  301. package/dist/remediate/contractPipeline/sketchSource.d.ts +0 -194
  302. package/dist/remediate/contractPipeline/sketchSource.d.ts.map +0 -1
  303. package/dist/remediate/contractPipeline/sketchSource.js +0 -262
  304. package/dist/remediate/contractPipeline/sketchSource.js.map +0 -1
  305. package/dist/remediate/contractPipeline/testPlanCarry.d.ts +0 -17
  306. package/dist/remediate/contractPipeline/testPlanCarry.d.ts.map +0 -1
  307. package/dist/remediate/contractPipeline/testPlanCarry.js +0 -72
  308. package/dist/remediate/contractPipeline/testPlanCarry.js.map +0 -1
  309. package/dist/remediate/steps/dispatch/marshal.d.ts +0 -7
  310. package/dist/remediate/steps/dispatch/marshal.d.ts.map +0 -1
  311. package/dist/remediate/steps/dispatch/marshal.js +0 -11
  312. package/dist/remediate/steps/dispatch/marshal.js.map +0 -1
  313. package/dist/remediate/validation/contractPipeline.d.ts +0 -35
  314. package/dist/remediate/validation/contractPipeline.d.ts.map +0 -1
  315. package/dist/remediate/validation/contractPipeline.js +0 -613
  316. package/dist/remediate/validation/contractPipeline.js.map +0 -1
  317. package/dist/remediate/validation/contractPipelineGates.d.ts +0 -272
  318. package/dist/remediate/validation/contractPipelineGates.d.ts.map +0 -1
  319. package/dist/remediate/validation/contractPipelineGates.js +0 -1397
  320. package/dist/remediate/validation/contractPipelineGates.js.map +0 -1
  321. package/dist/shared/types/contractPipeline/design.d.ts +0 -79
  322. package/dist/shared/types/contractPipeline/design.d.ts.map +0 -1
  323. package/dist/shared/types/contractPipeline/design.js +0 -16
  324. package/dist/shared/types/contractPipeline/design.js.map +0 -1
  325. package/dist/shared/types/contractPipeline/goal.d.ts +0 -41
  326. package/dist/shared/types/contractPipeline/goal.d.ts.map +0 -1
  327. package/dist/shared/types/contractPipeline/goal.js +0 -10
  328. package/dist/shared/types/contractPipeline/goal.js.map +0 -1
  329. package/dist/shared/types/contractPipeline/implementation.d.ts +0 -118
  330. package/dist/shared/types/contractPipeline/implementation.d.ts.map +0 -1
  331. package/dist/shared/types/contractPipeline/implementation.js +0 -13
  332. package/dist/shared/types/contractPipeline/implementation.js.map +0 -1
  333. package/dist/shared/types/contractPipeline/obligations.d.ts +0 -283
  334. package/dist/shared/types/contractPipeline/obligations.d.ts.map +0 -1
  335. package/dist/shared/types/contractPipeline/obligations.js +0 -84
  336. package/dist/shared/types/contractPipeline/obligations.js.map +0 -1
  337. package/dist/shared/types/contractPipeline/verification.d.ts.map +0 -1
  338. package/dist/shared/types/contractPipeline/verification.js +0 -10
  339. package/dist/shared/types/contractPipeline/verification.js.map +0 -1
  340. package/dist/shared/types/contractPipeline.d.ts +0 -48
  341. package/dist/shared/types/contractPipeline.d.ts.map +0 -1
  342. package/dist/shared/types/contractPipeline.js +0 -32
  343. package/dist/shared/types/contractPipeline.js.map +0 -1
  344. package/dist/shared/types/obligationLedger.d.ts +0 -39
  345. package/dist/shared/types/obligationLedger.d.ts.map +0 -1
  346. package/dist/shared/types/obligationLedger.js +0 -49
  347. package/dist/shared/types/obligationLedger.js.map +0 -1
@@ -1,339 +0,0 @@
1
- /**
2
- * Deterministic phase-cut derivation (remediator auto-phasing, T3).
3
- *
4
- * When `/remediate-code` is pointed at an arbitrary N-goal input (e.g. the whole
5
- * backlog), the independent conceptual-design critique used to reject the run as
6
- * "over-scoped" and the HOST had to manually re-scope to a phase at intake. That
7
- * is the tool's job, not the host's: given the module-dependency DAG (the
8
- * producer/consumer `artifact:<name>` token edges declared in the contracts'
9
- * inputs/outputs), the tool derives a foundations→consumers
10
- * phase cut MECHANICALLY — ordered tiers where every module sits one tier below
11
- * the modules that depend on it. The critique is then handed the derived cut, so
12
- * it assesses design quality WITHIN a mechanically dependency-ordered phasing
13
- * rather than rejecting breadth (over-scoping is already handled by construction).
14
- *
15
- * Pure + deterministic (no I/O, no Date/Math.random, stable ordering): the same
16
- * modules always yield the same cut. Cycle-safe — a dependency cycle cannot be
17
- * topologically tiered, so its members are placed together at the tier just past
18
- * their highest acyclic dependency (named-sorted, fail toward a LATER tier so a
19
- * cyclic module never front-runs a real foundation it transitively needs).
20
- */
21
- import { moduleSlugForObligationId } from "./idRegistry.js";
22
- import { compareCodeUnits } from "../../shared/compareCodeUnits.js";
23
- import { findCyclicComponents } from "../../shared/graph/directedCycles.js";
24
- /** Stable label for a tier ordinal. */
25
- function phaseName(ordinal, lastOrdinal) {
26
- if (ordinal === 0)
27
- return "foundations";
28
- if (ordinal === lastOrdinal)
29
- return "integration";
30
- return `consumers-${ordinal}`;
31
- }
32
- /**
33
- * Derive the ordered phase cut from a module-dependency DAG. Each module's tier is
34
- * the length of its longest dependency chain (foundations = 0). Edges to unknown
35
- * module names are ignored (a `needs` on a module not in scope is not a phase
36
- * constraint here). Returns one phase per occupied tier, covering every module.
37
- */
38
- export function derivePhaseCut(modules) {
39
- const names = modules.map((m) => m.name);
40
- const known = new Set(names);
41
- // Normalize edges: keep only deps that name a real in-scope module, drop self-edges.
42
- const deps = new Map();
43
- for (const m of modules) {
44
- deps.set(m.name, [...new Set(m.depends_on)].filter((d) => d !== m.name && known.has(d)));
45
- }
46
- // Longest-dependency-chain tier via memoized DFS with cycle detection. A node on
47
- // an active path (cycle) resolves to the max tier of its already-settled deps + 1
48
- // (fail toward a later tier), and the cycle flag is raised.
49
- const tier = new Map();
50
- const visiting = new Set();
51
- let hasCycle = false;
52
- const computeTier = (name) => {
53
- const cached = tier.get(name);
54
- if (cached !== undefined)
55
- return cached;
56
- if (visiting.has(name)) {
57
- // Back-edge: a cycle. Don't recurse through it; treat as no added depth here.
58
- hasCycle = true;
59
- return 0;
60
- }
61
- visiting.add(name);
62
- let maxDep = -1;
63
- // Sort deps for deterministic traversal (tier values are order-independent, but
64
- // keep traversal stable for predictability under future changes).
65
- for (const d of [...(deps.get(name) ?? [])].sort()) {
66
- maxDep = Math.max(maxDep, computeTier(d));
67
- }
68
- visiting.delete(name);
69
- const t = maxDep + 1;
70
- tier.set(name, t);
71
- return t;
72
- };
73
- for (const name of [...names].sort())
74
- computeTier(name);
75
- const lastOrdinal = Math.max(0, ...[...tier.values()]);
76
- const byTier = new Map();
77
- for (const [name, t] of tier) {
78
- const bucket = byTier.get(t) ?? [];
79
- bucket.push(name);
80
- byTier.set(t, bucket);
81
- }
82
- const phases = [];
83
- for (let ordinal = 0; ordinal <= lastOrdinal; ordinal++) {
84
- const members = byTier.get(ordinal);
85
- if (!members || members.length === 0)
86
- continue;
87
- phases.push({
88
- ordinal,
89
- name: phaseName(ordinal, lastOrdinal),
90
- modules: [...members].sort(),
91
- });
92
- }
93
- const module_phase = {};
94
- for (const [name, t] of tier)
95
- module_phase[name] = t;
96
- return { phases, has_cycle: hasCycle, module_phase };
97
- }
98
- /**
99
- * The id fragment obligation ids encode — re-exported from the id registry,
100
- * which owns both this and the mint that produces `OBL-<slug>-…`, so encoder and
101
- * decoder cannot drift. Kept exported here because this module is where the
102
- * node→phase decoders live and import it from.
103
- */
104
- export { moduleSlug } from "./idRegistry.js";
105
- /**
106
- * Resolve the phase ordinal for an implementation-DAG node from the obligation
107
- * ids it discharges. Every derived obligation id is `OBL-<moduleSlug>-<suffix>`,
108
- * so the owning module (hence phase) is recoverable by the EXACT join in
109
- * `idRegistry.moduleSlugForObligationId` — no lossy slug reversal, and no
110
- * longest-prefix guess (that rule resolved `OBL-auth-service-…` to `auth`
111
- * whenever `auth-service` was not in the slug set, silently handing the node
112
- * another module's phase and file scope). A node spanning modules in several
113
- * phases takes the MAX ordinal (fail-toward-later: it cannot land before the
114
- * latest module it touches is reachable). A node whose obligations match no
115
- * in-scope module slug — a counterexample-only node, or an obligation from a
116
- * module dropped from the cut — defaults to the LAST phase (integration), never
117
- * front-running a foundation.
118
- *
119
- * `slugToOrdinal` is the module-phase map re-keyed by `moduleSlug(name)`.
120
- */
121
- export function phaseOrdinalForObligations(obligationIds, slugToOrdinal, lastOrdinal) {
122
- const knownSlugs = new Set(slugToOrdinal.keys());
123
- let max = -1;
124
- let matchedAny = false;
125
- for (const id of obligationIds) {
126
- const slug = moduleSlugForObligationId(id, knownSlugs);
127
- if (slug === null)
128
- continue;
129
- max = Math.max(max, slugToOrdinal.get(slug) ?? 0);
130
- matchedAny = true;
131
- }
132
- return matchedAny ? max : lastOrdinal;
133
- }
134
- export { moduleSlugForObligationId };
135
- /**
136
- * A structured artifact reference embedded anywhere inside a module's free-prose
137
- * `inputs`/`outputs` string: the token `artifact:<name>`, where `<name>` is a
138
- * stable identifier (letters, digits, `_`, `-`, `.`, `/`). The rest of the string
139
- * stays human prose. A module PRODUCES every artifact token in its `outputs` and
140
- * CONSUMES every token in its `inputs`; the tool matches producer→consumer to
141
- * derive data-flow ordering, so the ordering is tool-enforced from the finalized
142
- * contracts rather than relying on the host to hand-add `depends_on` edges.
143
- * Matching is case-insensitive so `artifact:Roster` (produced) and `artifact:roster`
144
- * (consumed) still pair.
145
- */
146
- const ARTIFACT_TOKEN_PATTERN = /\bartifact:([A-Za-z0-9_./-]+)/gi;
147
- /** The normalized artifact names referenced by a module's inputs/outputs list. */
148
- function extractArtifactNames(entries) {
149
- const names = new Set();
150
- if (!Array.isArray(entries))
151
- return names;
152
- for (const entry of entries) {
153
- if (typeof entry !== "string")
154
- continue;
155
- for (const match of entry.matchAll(ARTIFACT_TOKEN_PATTERN)) {
156
- // Trim trailing separator/punctuation the greedy class may have swallowed
157
- // (e.g. a token ending a sentence: "artifact:roster.").
158
- const name = match[1].replace(/[._/-]+$/, "").toLowerCase();
159
- if (name.length > 0)
160
- names.add(name);
161
- }
162
- }
163
- return names;
164
- }
165
- /**
166
- * Derive the DECLARED module-dependency graph from producer/consumer artifact
167
- * tokens in the contracts' `inputs`/`outputs`. For each module M and each
168
- * artifact M consumes (an `artifact:<name>` token in M's `inputs`), M depends
169
- * on every OTHER module that produces that artifact (the token in its
170
- * `outputs`). Returns both the dependency map (module name → set of module
171
- * names that must run first) and the per-edge artifact attribution, so a cycle
172
- * can be reported with the exact tokens that form it. Tolerant of malformed
173
- * payloads: anything unparseable contributes no edge.
174
- */
175
- function deriveModuleArtifactGraph(contractsPayload) {
176
- const root = contractsPayload;
177
- const list = Array.isArray(root?.module_contracts) ? root.module_contracts : [];
178
- const producers = new Map(); // artifact name → producing modules
179
- const consumes = new Map(); // module name → consumed artifact names
180
- const moduleNames = [];
181
- for (const mod of list) {
182
- if (typeof mod !== "object" || mod === null)
183
- continue;
184
- const m = mod;
185
- if (typeof m.name !== "string" || m.name.length === 0)
186
- continue;
187
- moduleNames.push(m.name);
188
- for (const artifact of extractArtifactNames(m.outputs)) {
189
- const set = producers.get(artifact) ?? new Set();
190
- set.add(m.name);
191
- producers.set(artifact, set);
192
- }
193
- consumes.set(m.name, extractArtifactNames(m.inputs));
194
- }
195
- const deps = new Map();
196
- const edges = [];
197
- for (const name of moduleNames) {
198
- const set = new Set();
199
- for (const artifact of consumes.get(name) ?? []) {
200
- for (const producer of producers.get(artifact) ?? []) {
201
- if (producer === name)
202
- continue;
203
- set.add(producer);
204
- edges.push({ consumer: name, producer, artifact });
205
- }
206
- }
207
- deps.set(name, set);
208
- }
209
- return { deps, edges };
210
- }
211
- /**
212
- * Build {@link PhaseCutModule}s from finalized module contracts. A module's
213
- * `depends_on` derives from producer/consumer artifact-token matching over
214
- * `inputs`/`outputs` ALONE. Drafted `neighbor_needs` never enter this graph
215
- * (open-bugs.md:106): they are symmetric coordination prose whose directions
216
- * per-module drafting agents routinely invert, and unioning them in let prose
217
- * override every declared token edge — finalization drops the field instead.
218
- * A module that consumes from another is one tier ABOVE it. Tolerant of
219
- * malformed payloads: anything unparseable contributes no module/edge.
220
- */
221
- export function phaseCutModulesFromContracts(contractsPayload) {
222
- const root = contractsPayload;
223
- const list = Array.isArray(root?.module_contracts) ? root.module_contracts : [];
224
- const { deps } = deriveModuleArtifactGraph(contractsPayload);
225
- const out = [];
226
- for (const mod of list) {
227
- if (typeof mod !== "object" || mod === null)
228
- continue;
229
- const m = mod;
230
- if (typeof m.name !== "string" || m.name.length === 0)
231
- continue;
232
- out.push({ name: m.name, depends_on: [...(deps.get(m.name) ?? [])] });
233
- }
234
- return out;
235
- }
236
- /**
237
- * Detect cycles in the DECLARED module-dependency graph — the producer/consumer
238
- * `artifact:` token edges of a module-contracts payload (drafted or finalized;
239
- * finalization copies `inputs`/`outputs` verbatim, so the two graphs are equal).
240
- * A cycle here is a VALIDATION error at the contract boundary (open-bugs.md:106):
241
- * the phase cut must never be derived over a cyclic declared graph, because the
242
- * fail-toward-later tiering silently drops a back-edge and places token
243
- * consumers ahead of their producers. Members and their linking edges are
244
- * reported so the repair prompt can name exactly which tokens form each cycle.
245
- */
246
- export function detectContractTokenCycles(contractsPayload) {
247
- const { deps, edges } = deriveModuleArtifactGraph(contractsPayload);
248
- const components = findCyclicComponents([...deps.entries()].map(([id, dependsOn]) => ({ id, depends_on: [...dependsOn] })));
249
- return components.map((members) => {
250
- const memberSet = new Set(members);
251
- return {
252
- members,
253
- edges: edges.filter((e) => memberSet.has(e.consumer) && memberSet.has(e.producer)),
254
- };
255
- });
256
- }
257
- /**
258
- * Add Path-A seam-preparation edges to the contract-derived module DAG. The
259
- * decomposition gate has already guaranteed one preparer per required seam;
260
- * this projection makes every implementation module for either participating
261
- * work block depend on that preparer, yielding a seam-first phase followed by
262
- * parallel refactor modules.
263
- */
264
- export function applyWorkBlockSeamDependencies(modules, moduleDecompositionPayload, pathASeedPayload) {
265
- const decomposition = moduleDecompositionPayload;
266
- const decomposed = Array.isArray(decomposition?.modules) ? decomposition.modules : [];
267
- const seed = pathASeedPayload;
268
- const seams = Array.isArray(seed?.work_block_seams) ? seed.work_block_seams : [];
269
- if (decomposed.length === 0 || seams.length === 0)
270
- return modules;
271
- const sourceBlocksByModule = new Map();
272
- const preparerBySeam = new Map();
273
- for (const value of decomposed) {
274
- if (typeof value !== "object" || value === null)
275
- continue;
276
- const mod = value;
277
- if (typeof mod.name !== "string")
278
- continue;
279
- sourceBlocksByModule.set(mod.name, new Set(Array.isArray(mod.source_work_block_ids)
280
- ? mod.source_work_block_ids.filter((id) => typeof id === "string")
281
- : []));
282
- for (const seamId of Array.isArray(mod.prepares_seam_ids)
283
- ? mod.prepares_seam_ids
284
- : []) {
285
- if (typeof seamId === "string" && !preparerBySeam.has(seamId)) {
286
- preparerBySeam.set(seamId, mod.name);
287
- }
288
- }
289
- }
290
- const extraDeps = new Map();
291
- for (const value of seams) {
292
- if (typeof value !== "object" || value === null)
293
- continue;
294
- const seam = value;
295
- if (seam.requires_preparation !== true || typeof seam.id !== "string")
296
- continue;
297
- const preparer = preparerBySeam.get(seam.id);
298
- if (!preparer)
299
- continue;
300
- const blockIds = new Set(Array.isArray(seam.block_ids)
301
- ? seam.block_ids.filter((id) => typeof id === "string")
302
- : []);
303
- for (const [moduleName, sourceBlocks] of sourceBlocksByModule) {
304
- if (moduleName === preparer)
305
- continue;
306
- if (![...sourceBlocks].some((id) => blockIds.has(id)))
307
- continue;
308
- const deps = extraDeps.get(moduleName) ?? new Set();
309
- deps.add(preparer);
310
- extraDeps.set(moduleName, deps);
311
- }
312
- }
313
- return modules.map((module) => ({
314
- ...module,
315
- depends_on: [
316
- ...new Set([...module.depends_on, ...(extraDeps.get(module.name) ?? [])]),
317
- ].sort((a, b) => compareCodeUnits(a, b)),
318
- }));
319
- }
320
- /** Render the derived phase cut as a markdown section for the critique prompt. */
321
- export function renderPhaseCutSection(cut) {
322
- const lines = cut.phases.map((p) => `- **Phase ${p.ordinal} — ${p.name}** (${p.modules.length} module(s)): ${p.modules.join(", ")}`);
323
- return `## Mechanically-Derived Phase Cut
324
-
325
- This change is **not** executed as one monolithic landing. The tool derived the
326
- following ordered, dependency-gated phase cut from the module-dependency DAG —
327
- each phase's modules depend only on earlier phases, and the scheduler enforces the
328
- ordering with mechanical dependencies (a later-phase module cannot dispatch until
329
- its foundations are verified-complete, with a whole-repo green gate between phases):
330
-
331
- ${lines.join("\n")}
332
-
333
- Assess the **design quality** within this phasing. Do NOT reject the work as
334
- "over-scoped" or "too large for one change" — breadth is already handled by
335
- construction: the phases land incrementally, green at every commit. Flag a real
336
- design problem (a wrong boundary, a missing invariant, an unsound seam), not the
337
- number of modules.${cut.has_cycle ? "\n\n> NOTE: a dependency cycle was detected among the modules; its members were tiered together. A genuine circular dependency between modules is a design smell worth your scrutiny." : ""}`;
338
- }
339
- //# sourceMappingURL=phaseCut.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phaseCut.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/phaseCut.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- /**
2
- * Phase-cut sidecar artifact (remediator auto-phasing, T3).
3
- *
4
- * The foundations→consumers phase cut derived by {@link derivePhaseCut} is a
5
- * DERIVED, deterministic artifact (a pure function of the finalized module
6
- * contracts' module-dependency DAG — producer/consumer `artifact:<name>` tokens
7
- * in `inputs`/`outputs` alone). It is persisted as a
8
- * first-class sidecar —
9
- * `intake/contract/phase_cut.json` — so the cut the conceptual critique sees and
10
- * the cut the implementation-DAG promotion enforces are ONE source, inspectable
11
- * on disk, not two inline recomputations that could drift.
12
- *
13
- * It is deliberately NOT a member of `CP_ARTIFACT_NAMES`: that enum drives the
14
- * LLM-phase staleness DAG and the phase-progression completeness checks, where an
15
- * "absent" entry perturbs sequencing. The cut is re-derivable on demand from
16
- * `finalized_module_contracts`, so it carries no staleness envelope — it is simply
17
- * (re)written whenever its single upstream is available, and read by consumers.
18
- */
19
- import { type PhaseCut } from "./phaseCut.js";
20
- export declare const PHASE_CUT_FILE = "phase_cut.json";
21
- export declare function phaseCutFilePath(artifactsDir: string): string;
22
- /** Read the persisted cut, or null if it has not been written yet. */
23
- export declare function readPhaseCutArtifact(artifactsDir: string): Promise<PhaseCut | null>;
24
- /**
25
- * Derive the cut from the on-disk `finalized_module_contracts` and (re)write the
26
- * sidecar. Idempotent: a finalized-contracts payload that yields the same DAG
27
- * yields byte-identical JSON. Returns the derived cut, or null when there are no
28
- * in-scope modules to phase (no finalized contracts on disk yet).
29
- */
30
- export declare function ensurePhaseCutArtifact(artifactsDir: string): Promise<PhaseCut | null>;
31
- //# sourceMappingURL=phaseCutArtifact.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phaseCutArtifact.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/phaseCutArtifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAUH,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAE/C,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAE1B;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAiB1B"}
@@ -1,48 +0,0 @@
1
- /**
2
- * Phase-cut sidecar artifact (remediator auto-phasing, T3).
3
- *
4
- * The foundations→consumers phase cut derived by {@link derivePhaseCut} is a
5
- * DERIVED, deterministic artifact (a pure function of the finalized module
6
- * contracts' module-dependency DAG — producer/consumer `artifact:<name>` tokens
7
- * in `inputs`/`outputs` alone). It is persisted as a
8
- * first-class sidecar —
9
- * `intake/contract/phase_cut.json` — so the cut the conceptual critique sees and
10
- * the cut the implementation-DAG promotion enforces are ONE source, inspectable
11
- * on disk, not two inline recomputations that could drift.
12
- *
13
- * It is deliberately NOT a member of `CP_ARTIFACT_NAMES`: that enum drives the
14
- * LLM-phase staleness DAG and the phase-progression completeness checks, where an
15
- * "absent" entry perturbs sequencing. The cut is re-derivable on demand from
16
- * `finalized_module_contracts`, so it carries no staleness envelope — it is simply
17
- * (re)written whenever its single upstream is available, and read by consumers.
18
- */
19
- import { join } from "node:path";
20
- import { readOptionalJsonFile, writeJsonFile } from "audit-tools/shared";
21
- import { contractPipelineDir, pathASeedFilePath, readContractArtifact, envelopePayload, } from "./artifactStore.js";
22
- import { derivePhaseCut, applyWorkBlockSeamDependencies, phaseCutModulesFromContracts, } from "./phaseCut.js";
23
- export const PHASE_CUT_FILE = "phase_cut.json";
24
- export function phaseCutFilePath(artifactsDir) {
25
- return join(contractPipelineDir(artifactsDir), PHASE_CUT_FILE);
26
- }
27
- /** Read the persisted cut, or null if it has not been written yet. */
28
- export async function readPhaseCutArtifact(artifactsDir) {
29
- return (await readOptionalJsonFile(phaseCutFilePath(artifactsDir))) ?? null;
30
- }
31
- /**
32
- * Derive the cut from the on-disk `finalized_module_contracts` and (re)write the
33
- * sidecar. Idempotent: a finalized-contracts payload that yields the same DAG
34
- * yields byte-identical JSON. Returns the derived cut, or null when there are no
35
- * in-scope modules to phase (no finalized contracts on disk yet).
36
- */
37
- export async function ensurePhaseCutArtifact(artifactsDir) {
38
- const finalized = envelopePayload(await readContractArtifact(artifactsDir, "finalized_module_contracts"));
39
- const decomposition = envelopePayload(await readContractArtifact(artifactsDir, "module_decomposition"));
40
- const pathASeed = await readOptionalJsonFile(pathASeedFilePath(artifactsDir));
41
- const modules = applyWorkBlockSeamDependencies(phaseCutModulesFromContracts(finalized), decomposition, pathASeed);
42
- if (modules.length === 0)
43
- return null;
44
- const cut = derivePhaseCut(modules);
45
- await writeJsonFile(phaseCutFilePath(artifactsDir), cut);
46
- return cut;
47
- }
48
- //# sourceMappingURL=phaseCutArtifact.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phaseCutArtifact.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/phaseCutArtifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,8BAA8B,EAC9B,4BAA4B,GAE7B,MAAM,eAAe,CAAC;AAEvB,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAE/C,MAAM,UAAU,gBAAgB,CAAC,YAAoB;IACnD,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC,CAAC;AACjE,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB;IAEpB,OAAO,CAAC,MAAM,oBAAoB,CAAW,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,YAAoB;IAEpB,MAAM,SAAS,GAAG,eAAe,CAC/B,MAAM,oBAAoB,CAAC,YAAY,EAAE,4BAA4B,CAAC,CACvE,CAAC;IACF,MAAM,aAAa,GAAG,eAAe,CACnC,MAAM,oBAAoB,CAAC,YAAY,EAAE,sBAAsB,CAAC,CACjE,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAU,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;IACvF,MAAM,OAAO,GAAG,8BAA8B,CAC5C,4BAA4B,CAAC,SAAS,CAAC,EACvC,aAAa,EACb,SAAS,CACV,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,aAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC;IACzD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,110 +0,0 @@
1
- import { type Counterexample } from "audit-tools/shared";
2
- /** One recorded owner waiver: this counterexample is an accepted limitation of THIS run. */
3
- export interface CounterexampleWaiver {
4
- /** The counterexample id as the judge report / counterexample artifact names it. */
5
- ce_id: string;
6
- /**
7
- * Content-derived identity (`fp:<fingerprint>`, falling back to `id:<raw>`),
8
- * computed at fold time — the SAME keying the convergence gate uses, so a
9
- * waiver survives a re-derived counterexample artifact that re-labels the
10
- * same claim with a new id. A CHANGED claim gets a new fingerprint and
11
- * correctly re-surfaces: the waiver bound the claim, not the label.
12
- */
13
- key: string;
14
- /** Why this counterexample is accepted as a limitation. Required, non-empty. */
15
- rationale: string;
16
- /** Who decided. Attributable identity, not proof — see the module header. */
17
- waived_by: string;
18
- waived_at: string;
19
- }
20
- export interface ContractRepairState {
21
- schema_version: "remediate-code-contract-pipeline/repair-state/v1alpha1";
22
- /**
23
- * One entry per judge-ordered repair step emission (keyed by judge hash).
24
- * `accepted_ce_ids` records the judge-accepted counterexample ids this repair
25
- * was dispatched to address, for human debugging/display only.
26
- * `addressed_ce_fingerprints` is the CONTENT-keyed form the convergence gate
27
- * actually diffs against — see `counterexampleKeyOf`: raw reviewer
28
- * ids are not stable cross-round identity (two independent adversarial
29
- * rounds commonly both label their top counterexample "CE-001"), so the gate
30
- * resolves each accepted id against the live counterexample artifact and
31
- * keys on content (violated_obligation_ids + normalized claim) instead,
32
- * falling back to raw-id keying only when an id cannot be resolved. The
33
- * cumulative union of fingerprints across repairs is the "already-addressed"
34
- * set; a re-accepted (un-converged) counterexample is detected as a stall
35
- * rather than silently re-repaired. Entries written before this field
36
- * existed lack it — they default to `[]` (fail-open: at most one extra
37
- * repair round on an in-flight upgrade, never a false stall).
38
- */
39
- repairs: {
40
- judge_hash: string;
41
- target: string;
42
- at: string;
43
- accepted_ce_ids?: string[];
44
- addressed_ce_fingerprints?: string[];
45
- }[];
46
- /**
47
- * One entry per conceptual-design-critique-driven design repair (keyed by
48
- * critique hash). `blocking_ids` records the blocking critique-item ids the
49
- * repair was dispatched to address. Target-scoped history permits upstream-to-interface
50
- * progress without resetting the global iteration bound. The per-target union is the
51
- * "already-addressed" set the critique convergence gate diffs each fresh
52
- * critique against, so a re-raised (un-resolved) blocking concern is detected
53
- * as a stall rather than silently re-repaired forever.
54
- */
55
- critique_repairs: {
56
- critique_hash: string;
57
- at: string;
58
- blocking_ids: string[];
59
- target?: "finalized_module_contracts" | "module_decomposition";
60
- }[];
61
- /** One entry per implementation_dag traceability rejection. */
62
- dag_regenerations: {
63
- violations: string[];
64
- at: string;
65
- }[];
66
- /** Recorded owner waivers — absent on ledgers written before the verb existed. */
67
- waivers?: CounterexampleWaiver[];
68
- }
69
- export declare function readRepairState(artifactsDir: string): Promise<ContractRepairState>;
70
- export declare function writeRepairState(artifactsDir: string, state: ContractRepairState): Promise<void>;
71
- /** The tool-named host lane: the operator's waiver decisions land here. */
72
- export declare function counterexampleWaiversPath(artifactsDir: string): string;
73
- /** id → live counterexample entry, from a (possibly absent) artifact payload. */
74
- export declare function counterexamplesByIdOf(counterexamplePayload: unknown): Map<string, Counterexample>;
75
- /**
76
- * Content-keyed identity for a counterexample id: `fp:<fingerprint>` when the
77
- * id resolves against the live artifact, `id:<raw>` otherwise. The ONE keying
78
- * both the convergence gate and the waiver ledger use.
79
- */
80
- export declare function counterexampleKeyOf(counterexamplesById: ReadonlyMap<string, Counterexample>, rawId: string): string;
81
- /** The subset of `acceptedIds` covered by recorded waivers (fingerprint-first, raw-id fallback). */
82
- export declare function waivedAcceptedIds(state: ContractRepairState, counterexamplesById: ReadonlyMap<string, Counterexample>, acceptedIds: readonly string[]): Set<string>;
83
- /**
84
- * Payload-level convenience for the cross-gate callers: which of the CURRENT
85
- * judge report's accepted counterexample ids are waived in the ledger.
86
- */
87
- export declare function waivedJudgeAcceptedIds(state: ContractRepairState, judgeReportPayload: unknown, counterexamplePayload: unknown): Set<string>;
88
- /** Outcome of one waiver-file fold attempt. */
89
- export interface WaiverFold {
90
- /** Validation problems. Non-empty means NOTHING was applied and the file remains. */
91
- issues: string[];
92
- /** Newly recorded waivers (0 when the file is absent or everything was a duplicate). */
93
- folded: number;
94
- }
95
- /**
96
- * Fold the host-written waiver file into the ledger — all-or-nothing.
97
- *
98
- * Absent file: no-op. Any invalid entry (malformed JSON, missing/empty
99
- * `ce_id` / `rationale` / `waived_by`, or a `ce_id` that matches neither a
100
- * live counterexample nor a judge-accepted id) refuses the WHOLE file: nothing
101
- * is applied, the file stays in place, and the issues are returned for the
102
- * blocked step to name — an invalid decision record must never half-apply.
103
- * Valid entries are deduped by content key, appended to `state.waivers`,
104
- * persisted, and the file is consumed (deleted).
105
- */
106
- export declare function foldCounterexampleWaivers(artifactsDir: string, context: {
107
- counterexamplesById: ReadonlyMap<string, Counterexample>;
108
- judgeAcceptedIds: ReadonlySet<string>;
109
- }): Promise<WaiverFold>;
110
- //# sourceMappingURL=repairState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repairState.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/repairState.ts"],"names":[],"mappings":"AAsBA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAC;AAI5B,4FAA4F;AAC5F,MAAM,WAAW,oBAAoB;IACnC,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,wDAAwD,CAAC;IACzE;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,EAAE;QACP,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAC;KACtC,EAAE,CAAC;IACJ;;;;;;;;OAQG;IACH,gBAAgB,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,4BAA4B,GAAG,sBAAsB,CAAA;KAAE,EAAE,CAAC;IAClJ,+DAA+D;IAC/D,iBAAiB,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1D,kFAAkF;IAClF,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAMD,wBAAsB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAYxF;AAED,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,IAAI,CAAC,CAGf;AAMD,2EAA2E;AAC3E,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,iFAAiF;AACjF,wBAAgB,qBAAqB,CACnC,qBAAqB,EAAE,OAAO,GAC7B,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAW7B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EACxD,KAAK,EAAE,MAAM,GACZ,MAAM,CAGR;AAqBD,oGAAoG;AACpG,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,mBAAmB,EAC1B,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EACxD,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,GAAG,CAAC,MAAM,CAAC,CAUb;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,mBAAmB,EAC1B,kBAAkB,EAAE,OAAO,EAC3B,qBAAqB,EAAE,OAAO,GAC7B,GAAG,CAAC,MAAM,CAAC,CAMb;AAED,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,qFAAqF;IACrF,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,wFAAwF;IACxF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;IACP,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzD,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC,GACA,OAAO,CAAC,UAAU,CAAC,CA0ErB"}