audit-tools 0.48.0 → 0.50.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (391) hide show
  1. package/README.md +3 -1
  2. package/dist/audit/clarification/partition.d.ts.map +1 -1
  3. package/dist/audit/clarification/partition.js +2 -1
  4. package/dist/audit/clarification/partition.js.map +1 -1
  5. package/dist/audit/clarification/voiQueue.d.ts.map +1 -1
  6. package/dist/audit/clarification/voiQueue.js +2 -1
  7. package/dist/audit/clarification/voiQueue.js.map +1 -1
  8. package/dist/audit/cli/args.d.ts +27 -0
  9. package/dist/audit/cli/args.d.ts.map +1 -1
  10. package/dist/audit/cli/args.js +32 -2
  11. package/dist/audit/cli/args.js.map +1 -1
  12. package/dist/audit/cli/dispatch/hostHandoff.d.ts +1 -1
  13. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  14. package/dist/audit/cli/dispatch/hostHandoff.js +32 -55
  15. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  16. package/dist/audit/cli/explainTaskCommand.d.ts.map +1 -1
  17. package/dist/audit/cli/explainTaskCommand.js +2 -1
  18. package/dist/audit/cli/explainTaskCommand.js.map +1 -1
  19. package/dist/audit/cli/laneValidators.d.ts +0 -2
  20. package/dist/audit/cli/laneValidators.d.ts.map +1 -1
  21. package/dist/audit/cli/laneValidators.js +2 -6
  22. package/dist/audit/cli/laneValidators.js.map +1 -1
  23. package/dist/audit/cli/lineIndex.d.ts.map +1 -1
  24. package/dist/audit/cli/lineIndex.js +2 -1
  25. package/dist/audit/cli/lineIndex.js.map +1 -1
  26. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  27. package/dist/audit/cli/nextStepHelpers.js +4 -4
  28. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  29. package/dist/audit/contracts/findingContractPrompt.d.ts.map +1 -1
  30. package/dist/audit/contracts/findingContractPrompt.js +2 -2
  31. package/dist/audit/contracts/findingContractPrompt.js.map +1 -1
  32. package/dist/audit/decompose/buildStructureDecomposition.d.ts.map +1 -1
  33. package/dist/audit/decompose/buildStructureDecomposition.js +5 -8
  34. package/dist/audit/decompose/buildStructureDecomposition.js.map +1 -1
  35. package/dist/audit/decompose/findings.js +2 -2
  36. package/dist/audit/decompose/findings.js.map +1 -1
  37. package/dist/audit/decompose/sources.d.ts.map +1 -1
  38. package/dist/audit/decompose/sources.js +8 -11
  39. package/dist/audit/decompose/sources.js.map +1 -1
  40. package/dist/audit/extractors/analyzers/merge.d.ts.map +1 -1
  41. package/dist/audit/extractors/analyzers/merge.js +4 -3
  42. package/dist/audit/extractors/analyzers/merge.js.map +1 -1
  43. package/dist/audit/extractors/browserExtension.d.ts.map +1 -1
  44. package/dist/audit/extractors/browserExtension.js +2 -4
  45. package/dist/audit/extractors/browserExtension.js.map +1 -1
  46. package/dist/audit/extractors/commentDecomposition.d.ts.map +1 -1
  47. package/dist/audit/extractors/commentDecomposition.js +15 -29
  48. package/dist/audit/extractors/commentDecomposition.js.map +1 -1
  49. package/dist/audit/extractors/dataStateCoupling.d.ts.map +1 -1
  50. package/dist/audit/extractors/dataStateCoupling.js +3 -2
  51. package/dist/audit/extractors/dataStateCoupling.js.map +1 -1
  52. package/dist/audit/extractors/designAssessment.d.ts.map +1 -1
  53. package/dist/audit/extractors/designAssessment.js +6 -5
  54. package/dist/audit/extractors/designAssessment.js.map +1 -1
  55. package/dist/audit/extractors/disposition.d.ts.map +1 -1
  56. package/dist/audit/extractors/disposition.js +1 -4
  57. package/dist/audit/extractors/disposition.js.map +1 -1
  58. package/dist/audit/extractors/docsDigest.d.ts.map +1 -1
  59. package/dist/audit/extractors/docsDigest.js +6 -20
  60. package/dist/audit/extractors/docsDigest.js.map +1 -1
  61. package/dist/audit/extractors/fileInventory.d.ts.map +1 -1
  62. package/dist/audit/extractors/fileInventory.js +2 -1
  63. package/dist/audit/extractors/fileInventory.js.map +1 -1
  64. package/dist/audit/extractors/flows.js +3 -3
  65. package/dist/audit/extractors/flows.js.map +1 -1
  66. package/dist/audit/extractors/fsIntake.d.ts.map +1 -1
  67. package/dist/audit/extractors/fsIntake.js +4 -7
  68. package/dist/audit/extractors/fsIntake.js.map +1 -1
  69. package/dist/audit/extractors/graph.d.ts +1 -1
  70. package/dist/audit/extractors/graph.d.ts.map +1 -1
  71. package/dist/audit/extractors/graph.js +9 -12
  72. package/dist/audit/extractors/graph.js.map +1 -1
  73. package/dist/audit/extractors/graphManifestEdges/jsonc.d.ts +10 -0
  74. package/dist/audit/extractors/graphManifestEdges/jsonc.d.ts.map +1 -1
  75. package/dist/audit/extractors/graphManifestEdges/jsonc.js +12 -50
  76. package/dist/audit/extractors/graphManifestEdges/jsonc.js.map +1 -1
  77. package/dist/audit/extractors/graphPythonImports.js +2 -2
  78. package/dist/audit/extractors/graphPythonImports.js.map +1 -1
  79. package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
  80. package/dist/audit/extractors/graphRoutes.js +4 -3
  81. package/dist/audit/extractors/graphRoutes.js.map +1 -1
  82. package/dist/audit/extractors/graphSignals.d.ts.map +1 -1
  83. package/dist/audit/extractors/graphSignals.js +3 -2
  84. package/dist/audit/extractors/graphSignals.js.map +1 -1
  85. package/dist/audit/extractors/graphSuites.d.ts.map +1 -1
  86. package/dist/audit/extractors/graphSuites.js +3 -2
  87. package/dist/audit/extractors/graphSuites.js.map +1 -1
  88. package/dist/audit/extractors/readFileText.d.ts +12 -0
  89. package/dist/audit/extractors/readFileText.d.ts.map +1 -0
  90. package/dist/audit/extractors/readFileText.js +23 -0
  91. package/dist/audit/extractors/readFileText.js.map +1 -0
  92. package/dist/audit/extractors/risk.d.ts.map +1 -1
  93. package/dist/audit/extractors/risk.js +3 -2
  94. package/dist/audit/extractors/risk.js.map +1 -1
  95. package/dist/audit/io/artifacts.d.ts +0 -28
  96. package/dist/audit/io/artifacts.d.ts.map +1 -1
  97. package/dist/audit/io/artifacts.js +1 -65
  98. package/dist/audit/io/artifacts.js.map +1 -1
  99. package/dist/audit/io/toolingManifest.d.ts.map +1 -1
  100. package/dist/audit/io/toolingManifest.js +3 -2
  101. package/dist/audit/io/toolingManifest.js.map +1 -1
  102. package/dist/audit/orchestrator/artifactMetadata.d.ts.map +1 -1
  103. package/dist/audit/orchestrator/artifactMetadata.js +2 -2
  104. package/dist/audit/orchestrator/artifactMetadata.js.map +1 -1
  105. package/dist/audit/orchestrator/autoFixExecutor.d.ts.map +1 -1
  106. package/dist/audit/orchestrator/autoFixExecutor.js +2 -1
  107. package/dist/audit/orchestrator/autoFixExecutor.js.map +1 -1
  108. package/dist/audit/orchestrator/charterPackets.d.ts.map +1 -1
  109. package/dist/audit/orchestrator/charterPackets.js +4 -3
  110. package/dist/audit/orchestrator/charterPackets.js.map +1 -1
  111. package/dist/audit/orchestrator/dependencySlices.d.ts.map +1 -1
  112. package/dist/audit/orchestrator/dependencySlices.js +4 -6
  113. package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
  114. package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
  115. package/dist/audit/orchestrator/designReviewProjection.js +2 -2
  116. package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
  117. package/dist/audit/orchestrator/designReviewSnapshot.d.ts.map +1 -1
  118. package/dist/audit/orchestrator/designReviewSnapshot.js +2 -5
  119. package/dist/audit/orchestrator/designReviewSnapshot.js.map +1 -1
  120. package/dist/audit/orchestrator/edgeReasoning.d.ts.map +1 -1
  121. package/dist/audit/orchestrator/edgeReasoning.js +3 -3
  122. package/dist/audit/orchestrator/edgeReasoning.js.map +1 -1
  123. package/dist/audit/orchestrator/fileAnchors.d.ts.map +1 -1
  124. package/dist/audit/orchestrator/fileAnchors.js +14 -16
  125. package/dist/audit/orchestrator/fileAnchors.js.map +1 -1
  126. package/dist/audit/orchestrator/flowPlanning.d.ts.map +1 -1
  127. package/dist/audit/orchestrator/flowPlanning.js +3 -2
  128. package/dist/audit/orchestrator/flowPlanning.js.map +1 -1
  129. package/dist/audit/orchestrator/graphEnrichmentExecutor.js +5 -5
  130. package/dist/audit/orchestrator/graphEnrichmentExecutor.js.map +1 -1
  131. package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
  132. package/dist/audit/orchestrator/ingestionExecutors.js +2 -1
  133. package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
  134. package/dist/audit/orchestrator/partitionTaskGraph.d.ts.map +1 -1
  135. package/dist/audit/orchestrator/partitionTaskGraph.js +1 -3
  136. package/dist/audit/orchestrator/partitionTaskGraph.js.map +1 -1
  137. package/dist/audit/orchestrator/reviewPacketGraphContext.js +3 -3
  138. package/dist/audit/orchestrator/reviewPacketGraphContext.js.map +1 -1
  139. package/dist/audit/orchestrator/reviewPacketGraphEdges.d.ts.map +1 -1
  140. package/dist/audit/orchestrator/reviewPacketGraphEdges.js +4 -4
  141. package/dist/audit/orchestrator/reviewPacketGraphEdges.js.map +1 -1
  142. package/dist/audit/orchestrator/reviewPacketMetrics.d.ts.map +1 -1
  143. package/dist/audit/orchestrator/reviewPacketMetrics.js +4 -3
  144. package/dist/audit/orchestrator/reviewPacketMetrics.js.map +1 -1
  145. package/dist/audit/orchestrator/reviewPackets.d.ts.map +1 -1
  146. package/dist/audit/orchestrator/reviewPackets.js +1 -4
  147. package/dist/audit/orchestrator/reviewPackets.js.map +1 -1
  148. package/dist/audit/orchestrator/runtimeValidationUpdate.d.ts.map +1 -1
  149. package/dist/audit/orchestrator/runtimeValidationUpdate.js +2 -1
  150. package/dist/audit/orchestrator/runtimeValidationUpdate.js.map +1 -1
  151. package/dist/audit/orchestrator/scope.js +4 -4
  152. package/dist/audit/orchestrator/scope.js.map +1 -1
  153. package/dist/audit/orchestrator/selectiveDeepening/index.d.ts.map +1 -1
  154. package/dist/audit/orchestrator/selectiveDeepening/index.js +4 -3
  155. package/dist/audit/orchestrator/selectiveDeepening/index.js.map +1 -1
  156. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.d.ts.map +1 -1
  157. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js +4 -3
  158. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js.map +1 -1
  159. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts +0 -1
  160. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts.map +1 -1
  161. package/dist/audit/orchestrator/selectiveDeepening/shared.js +2 -5
  162. package/dist/audit/orchestrator/selectiveDeepening/shared.js.map +1 -1
  163. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js +2 -1
  164. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js.map +1 -1
  165. package/dist/audit/orchestrator/taskBuilder.d.ts.map +1 -1
  166. package/dist/audit/orchestrator/taskBuilder.js +5 -12
  167. package/dist/audit/orchestrator/taskBuilder.js.map +1 -1
  168. package/dist/audit/orchestrator/unitBuilder.d.ts.map +1 -1
  169. package/dist/audit/orchestrator/unitBuilder.js +3 -2
  170. package/dist/audit/orchestrator/unitBuilder.js.map +1 -1
  171. package/dist/audit/orchestrator.d.ts.map +1 -1
  172. package/dist/audit/orchestrator.js +1 -4
  173. package/dist/audit/orchestrator.js.map +1 -1
  174. package/dist/audit/reporting/mergeFindings.d.ts.map +1 -1
  175. package/dist/audit/reporting/mergeFindings.js +3 -4
  176. package/dist/audit/reporting/mergeFindings.js.map +1 -1
  177. package/dist/audit/reporting/synthesis.d.ts.map +1 -1
  178. package/dist/audit/reporting/synthesis.js +3 -3
  179. package/dist/audit/reporting/synthesis.js.map +1 -1
  180. package/dist/audit/reporting/workBlocks.d.ts.map +1 -1
  181. package/dist/audit/reporting/workBlocks.js +15 -20
  182. package/dist/audit/reporting/workBlocks.js.map +1 -1
  183. package/dist/audit/supervisor/runLedger.d.ts.map +1 -1
  184. package/dist/audit/supervisor/runLedger.js +1 -4
  185. package/dist/audit/supervisor/runLedger.js.map +1 -1
  186. package/dist/audit/systemic/systemicChallengeLoop.js +2 -2
  187. package/dist/audit/systemic/systemicChallengeLoop.js.map +1 -1
  188. package/dist/audit/validation/artifacts.d.ts.map +1 -1
  189. package/dist/audit/validation/artifacts.js +26 -29
  190. package/dist/audit/validation/artifacts.js.map +1 -1
  191. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts +25 -10
  192. package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +1 -1
  193. package/dist/remediate/contractPipeline/cyclicSeamResolution.js +35 -88
  194. package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +1 -1
  195. package/dist/remediate/contractPipeline/idRegistry.d.ts +10 -20
  196. package/dist/remediate/contractPipeline/idRegistry.d.ts.map +1 -1
  197. package/dist/remediate/contractPipeline/idRegistry.js +10 -24
  198. package/dist/remediate/contractPipeline/idRegistry.js.map +1 -1
  199. package/dist/remediate/contractPipeline/obligationKinds.d.ts +27 -0
  200. package/dist/remediate/contractPipeline/obligationKinds.d.ts.map +1 -0
  201. package/dist/remediate/contractPipeline/obligationKinds.js +18 -0
  202. package/dist/remediate/contractPipeline/obligationKinds.js.map +1 -0
  203. package/dist/remediate/contractPipeline/phaseCut.d.ts.map +1 -1
  204. package/dist/remediate/contractPipeline/phaseCut.js +2 -1
  205. package/dist/remediate/contractPipeline/phaseCut.js.map +1 -1
  206. package/dist/remediate/contractPipeline/testPlanCarry.d.ts.map +1 -1
  207. package/dist/remediate/contractPipeline/testPlanCarry.js +1 -4
  208. package/dist/remediate/contractPipeline/testPlanCarry.js.map +1 -1
  209. package/dist/remediate/dedup/crossLensDedup.d.ts +2 -3
  210. package/dist/remediate/dedup/crossLensDedup.d.ts.map +1 -1
  211. package/dist/remediate/dedup/crossLensDedup.js +2 -4
  212. package/dist/remediate/dedup/crossLensDedup.js.map +1 -1
  213. package/dist/remediate/index.d.ts +38 -8
  214. package/dist/remediate/index.d.ts.map +1 -1
  215. package/dist/remediate/index.js +75 -27
  216. package/dist/remediate/index.js.map +1 -1
  217. package/dist/remediate/phases/close.d.ts.map +1 -1
  218. package/dist/remediate/phases/close.js +3 -3
  219. package/dist/remediate/phases/close.js.map +1 -1
  220. package/dist/remediate/phases/plan.js +2 -2
  221. package/dist/remediate/phases/plan.js.map +1 -1
  222. package/dist/remediate/riskSignal.d.ts +1 -0
  223. package/dist/remediate/riskSignal.d.ts.map +1 -1
  224. package/dist/remediate/riskSignal.js +3 -7
  225. package/dist/remediate/riskSignal.js.map +1 -1
  226. package/dist/remediate/state/accessMemory.d.ts.map +1 -1
  227. package/dist/remediate/state/accessMemory.js +3 -3
  228. package/dist/remediate/state/accessMemory.js.map +1 -1
  229. package/dist/remediate/steps/contractPipeline.d.ts +6 -62
  230. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  231. package/dist/remediate/steps/contractPipeline.js +20 -89
  232. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  233. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  234. package/dist/remediate/steps/dispatch/hostHandoff.js +32 -39
  235. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  236. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  237. package/dist/remediate/steps/nextStep.js +14 -5
  238. package/dist/remediate/steps/nextStep.js.map +1 -1
  239. package/dist/remediate/utils/fileIntegrity.d.ts.map +1 -1
  240. package/dist/remediate/utils/fileIntegrity.js +4 -8
  241. package/dist/remediate/utils/fileIntegrity.js.map +1 -1
  242. package/dist/remediate/validation/artifacts.d.ts.map +1 -1
  243. package/dist/remediate/validation/artifacts.js +8 -14
  244. package/dist/remediate/validation/artifacts.js.map +1 -1
  245. package/dist/remediate/validation/contractPipeline.d.ts +1 -1
  246. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  247. package/dist/remediate/validation/contractPipeline.js +8 -46
  248. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  249. package/dist/remediate/validation/contractPipelineGates.d.ts +12 -20
  250. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  251. package/dist/remediate/validation/contractPipelineGates.js +107 -135
  252. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  253. package/dist/shared/accessMemory.d.ts.map +1 -1
  254. package/dist/shared/accessMemory.js +2 -1
  255. package/dist/shared/accessMemory.js.map +1 -1
  256. package/dist/shared/affinityArtifacts.d.ts +0 -1
  257. package/dist/shared/affinityArtifacts.d.ts.map +1 -1
  258. package/dist/shared/affinityArtifacts.js +1 -3
  259. package/dist/shared/affinityArtifacts.js.map +1 -1
  260. package/dist/shared/agentReflections.d.ts.map +1 -1
  261. package/dist/shared/agentReflections.js +2 -1
  262. package/dist/shared/agentReflections.js.map +1 -1
  263. package/dist/shared/analyzerPolicy.d.ts.map +1 -1
  264. package/dist/shared/analyzerPolicy.js +7 -22
  265. package/dist/shared/analyzerPolicy.js.map +1 -1
  266. package/dist/shared/analyzers/binaryAcquisition.d.ts.map +1 -1
  267. package/dist/shared/analyzers/binaryAcquisition.js +7 -10
  268. package/dist/shared/analyzers/binaryAcquisition.js.map +1 -1
  269. package/dist/shared/analyzers/candidates.d.ts.map +1 -1
  270. package/dist/shared/analyzers/candidates.js +1 -3
  271. package/dist/shared/analyzers/candidates.js.map +1 -1
  272. package/dist/shared/analyzers/normalizeExternal.d.ts.map +1 -1
  273. package/dist/shared/analyzers/normalizeExternal.js +12 -13
  274. package/dist/shared/analyzers/normalizeExternal.js.map +1 -1
  275. package/dist/shared/analyzers/types.d.ts.map +1 -1
  276. package/dist/shared/analyzers/types.js +2 -1
  277. package/dist/shared/analyzers/types.js.map +1 -1
  278. package/dist/shared/artifactFreshness.d.ts.map +1 -1
  279. package/dist/shared/artifactFreshness.js +4 -8
  280. package/dist/shared/artifactFreshness.js.map +1 -1
  281. package/dist/shared/compareCodeUnits.d.ts +9 -0
  282. package/dist/shared/compareCodeUnits.d.ts.map +1 -0
  283. package/dist/shared/compareCodeUnits.js +11 -0
  284. package/dist/shared/compareCodeUnits.js.map +1 -0
  285. package/dist/shared/constitutionalDocPaths.d.ts.map +1 -1
  286. package/dist/shared/constitutionalDocPaths.js +1 -4
  287. package/dist/shared/constitutionalDocPaths.js.map +1 -1
  288. package/dist/shared/contentKey.d.ts.map +1 -1
  289. package/dist/shared/contentKey.js +6 -8
  290. package/dist/shared/contentKey.js.map +1 -1
  291. package/dist/shared/decompose/charterClarification.d.ts.map +1 -1
  292. package/dist/shared/decompose/charterClarification.js +2 -1
  293. package/dist/shared/decompose/charterClarification.js.map +1 -1
  294. package/dist/shared/decompose/charterExtraction.d.ts.map +1 -1
  295. package/dist/shared/decompose/charterExtraction.js +21 -20
  296. package/dist/shared/decompose/charterExtraction.js.map +1 -1
  297. package/dist/shared/decompose/consensus.d.ts.map +1 -1
  298. package/dist/shared/decompose/consensus.js +7 -6
  299. package/dist/shared/decompose/consensus.js.map +1 -1
  300. package/dist/shared/decompose/contentCoherence.d.ts.map +1 -1
  301. package/dist/shared/decompose/contentCoherence.js +4 -10
  302. package/dist/shared/decompose/contentCoherence.js.map +1 -1
  303. package/dist/shared/decompose/modularity.d.ts.map +1 -1
  304. package/dist/shared/decompose/modularity.js +12 -14
  305. package/dist/shared/decompose/modularity.js.map +1 -1
  306. package/dist/shared/decompose/workBlockSeams.js +3 -3
  307. package/dist/shared/decompose/workBlockSeams.js.map +1 -1
  308. package/dist/shared/findings/dedupe.d.ts +4 -11
  309. package/dist/shared/findings/dedupe.d.ts.map +1 -1
  310. package/dist/shared/findings/dedupe.js +198 -164
  311. package/dist/shared/findings/dedupe.js.map +1 -1
  312. package/dist/shared/friction/frictionRecord.d.ts.map +1 -1
  313. package/dist/shared/friction/frictionRecord.js +3 -2
  314. package/dist/shared/friction/frictionRecord.js.map +1 -1
  315. package/dist/shared/friction/triage.d.ts.map +1 -1
  316. package/dist/shared/friction/triage.js +2 -1
  317. package/dist/shared/friction/triage.js.map +1 -1
  318. package/dist/shared/git.d.ts.map +1 -1
  319. package/dist/shared/git.js +5 -4
  320. package/dist/shared/git.js.map +1 -1
  321. package/dist/shared/graph/directedCycles.d.ts +61 -0
  322. package/dist/shared/graph/directedCycles.d.ts.map +1 -0
  323. package/dist/shared/graph/directedCycles.js +190 -0
  324. package/dist/shared/graph/directedCycles.js.map +1 -0
  325. package/dist/shared/index.d.ts +8 -2
  326. package/dist/shared/index.d.ts.map +1 -1
  327. package/dist/shared/index.js +9 -2
  328. package/dist/shared/index.js.map +1 -1
  329. package/dist/shared/io/artifactName.js +2 -2
  330. package/dist/shared/io/artifactName.js.map +1 -1
  331. package/dist/shared/io/frictionCapture.d.ts.map +1 -1
  332. package/dist/shared/io/frictionCapture.js +4 -6
  333. package/dist/shared/io/frictionCapture.js.map +1 -1
  334. package/dist/shared/io/json.d.ts +2 -0
  335. package/dist/shared/io/json.d.ts.map +1 -1
  336. package/dist/shared/io/json.js +2 -1
  337. package/dist/shared/io/json.js.map +1 -1
  338. package/dist/shared/io/repoRoot.d.ts +45 -0
  339. package/dist/shared/io/repoRoot.d.ts.map +1 -1
  340. package/dist/shared/io/repoRoot.js +91 -1
  341. package/dist/shared/io/repoRoot.js.map +1 -1
  342. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  343. package/dist/shared/loopCorePaths.js +1 -4
  344. package/dist/shared/loopCorePaths.js.map +1 -1
  345. package/dist/shared/paths.d.ts +19 -0
  346. package/dist/shared/paths.d.ts.map +1 -0
  347. package/dist/shared/paths.js +23 -0
  348. package/dist/shared/paths.js.map +1 -0
  349. package/dist/shared/reReview/projectionDiff.d.ts +0 -18
  350. package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
  351. package/dist/shared/reReview/projectionDiff.js +2 -1
  352. package/dist/shared/reReview/projectionDiff.js.map +1 -1
  353. package/dist/shared/sessionConfig.d.ts.map +1 -1
  354. package/dist/shared/sessionConfig.js +9 -24
  355. package/dist/shared/sessionConfig.js.map +1 -1
  356. package/dist/shared/stableStringify.d.ts.map +1 -1
  357. package/dist/shared/stableStringify.js +1 -3
  358. package/dist/shared/stableStringify.js.map +1 -1
  359. package/dist/shared/submission/expectedSubmissions.d.ts +0 -19
  360. package/dist/shared/submission/expectedSubmissions.d.ts.map +1 -1
  361. package/dist/shared/submission/expectedSubmissions.js +23 -6
  362. package/dist/shared/submission/expectedSubmissions.js.map +1 -1
  363. package/dist/shared/submission/hostHandoffCore.d.ts +0 -3
  364. package/dist/shared/submission/hostHandoffCore.d.ts.map +1 -1
  365. package/dist/shared/submission/hostHandoffCore.js +2 -7
  366. package/dist/shared/submission/hostHandoffCore.js.map +1 -1
  367. package/dist/shared/submission/submissionIdentity.d.ts.map +1 -1
  368. package/dist/shared/submission/submissionIdentity.js +7 -8
  369. package/dist/shared/submission/submissionIdentity.js.map +1 -1
  370. package/dist/shared/submission/submissionScan.d.ts +86 -0
  371. package/dist/shared/submission/submissionScan.d.ts.map +1 -0
  372. package/dist/shared/submission/submissionScan.js +93 -0
  373. package/dist/shared/submission/submissionScan.js.map +1 -0
  374. package/dist/shared/types/obligationLedger.d.ts +7 -3
  375. package/dist/shared/types/obligationLedger.d.ts.map +1 -1
  376. package/dist/shared/types/obligationLedger.js +9 -37
  377. package/dist/shared/types/obligationLedger.js.map +1 -1
  378. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  379. package/dist/shared/validation/findingsReport.js +2 -1
  380. package/dist/shared/validation/findingsReport.js.map +1 -1
  381. package/dist/shared/validation/schemaFailure.d.ts +9 -0
  382. package/dist/shared/validation/schemaFailure.d.ts.map +1 -0
  383. package/dist/shared/validation/schemaFailure.js +15 -0
  384. package/dist/shared/validation/schemaFailure.js.map +1 -0
  385. package/package.json +5 -2
  386. package/skills/audit-code/audit-code.prompt.md +5 -2
  387. package/wrapper/audit-code-wrapper-install-hosts.mjs +8 -3
  388. package/wrapper/audit-code-wrapper-lib.mjs +10 -3
  389. package/wrapper/installer-verb-help.mjs +3 -1
  390. package/wrapper/remediate-code-wrapper-install-hosts.mjs +8 -3
  391. package/wrapper/repo-root.mjs +80 -0
@@ -1,7 +1,4 @@
1
1
  import { pushValidationIssue, requireKeys, } from "audit-tools/shared";
2
- function pushIssue(issues, path, message) {
3
- pushValidationIssue(issues, path, message);
4
- }
5
2
  function asArray(value) {
6
3
  return Array.isArray(value) ? value : [];
7
4
  }
@@ -99,7 +96,7 @@ function validatePathsCoveredBySet(idx, issues, artifactName, pathsToCheck, erro
99
96
  return;
100
97
  for (const path of idx.repoPaths) {
101
98
  if (!pathsToCheck.has(path)) {
102
- pushIssue(issues, artifactName, errorMessage(path));
99
+ pushValidationIssue(issues, artifactName, errorMessage(path));
103
100
  }
104
101
  }
105
102
  }
@@ -117,18 +114,18 @@ function validateUnitManifest(bundle, idx, issues) {
117
114
  return;
118
115
  for (const unit of idx.unitManifestUnits) {
119
116
  if (unit.files.length === 0) {
120
- pushIssue(issues, `unit_manifest:${unit.unit_id}`, "Unit has no files");
117
+ pushValidationIssue(issues, `unit_manifest:${unit.unit_id}`, "Unit has no files");
121
118
  }
122
119
  if (unit.required_lenses.length === 0) {
123
- pushIssue(issues, `unit_manifest:${unit.unit_id}`, "Unit has no required lenses");
120
+ pushValidationIssue(issues, `unit_manifest:${unit.unit_id}`, "Unit has no required lenses");
124
121
  }
125
122
  for (const path of unit.files) {
126
123
  if (!idx.repoPaths.has(path)) {
127
- pushIssue(issues, `unit_manifest:${unit.unit_id}`, `Unit references unknown file ${path}`);
124
+ pushValidationIssue(issues, `unit_manifest:${unit.unit_id}`, `Unit references unknown file ${path}`);
128
125
  }
129
126
  const disposition = idx.dispositionMap.get(path);
130
127
  if (disposition && disposition !== "included") {
131
- pushIssue(issues, `unit_manifest:${unit.unit_id}`, `Unit includes non-included file ${path} with disposition ${disposition}`);
128
+ pushValidationIssue(issues, `unit_manifest:${unit.unit_id}`, `Unit includes non-included file ${path} with disposition ${disposition}`);
132
129
  }
133
130
  }
134
131
  }
@@ -138,20 +135,20 @@ function validateCoverageMatrixEntries(bundle, idx, issues) {
138
135
  return;
139
136
  for (const file of idx.coverageFiles) {
140
137
  if (!idx.repoPaths.has(file.path)) {
141
- pushIssue(issues, "coverage_matrix", `Coverage contains unknown file ${file.path}`);
138
+ pushValidationIssue(issues, "coverage_matrix", `Coverage contains unknown file ${file.path}`);
142
139
  }
143
140
  for (const unitId of file.unit_ids) {
144
141
  if (!idx.unitIds.has(unitId)) {
145
- pushIssue(issues, `coverage_matrix:${file.path}`, `Coverage references unknown unit ${unitId}`);
142
+ pushValidationIssue(issues, `coverage_matrix:${file.path}`, `Coverage references unknown unit ${unitId}`);
146
143
  }
147
144
  }
148
145
  const disposition = idx.dispositionMap.get(file.path);
149
146
  if (disposition && disposition !== "included" && file.audit_status !== "excluded") {
150
- pushIssue(issues, `coverage_matrix:${file.path}`, `Non-included file should be excluded in coverage; found status ${file.audit_status}`);
147
+ pushValidationIssue(issues, `coverage_matrix:${file.path}`, `Non-included file should be excluded in coverage; found status ${file.audit_status}`);
151
148
  }
152
149
  for (const lens of file.completed_lenses) {
153
150
  if (!file.required_lenses.includes(lens) && file.audit_status !== "excluded") {
154
- pushIssue(issues, `coverage_matrix:${file.path}`, `Completed lens ${lens} is not listed in required_lenses`);
151
+ pushValidationIssue(issues, `coverage_matrix:${file.path}`, `Completed lens ${lens} is not listed in required_lenses`);
155
152
  }
156
153
  }
157
154
  }
@@ -161,18 +158,18 @@ function validateCriticalFlows(bundle, idx, issues) {
161
158
  return;
162
159
  for (const flow of idx.criticalFlows) {
163
160
  if (flow.paths.length === 0) {
164
- pushIssue(issues, `critical_flows:${flow.id}`, "Flow has no paths");
161
+ pushValidationIssue(issues, `critical_flows:${flow.id}`, "Flow has no paths");
165
162
  }
166
163
  if (flow.entrypoints.length === 0) {
167
- pushIssue(issues, `critical_flows:${flow.id}`, "Flow has no entrypoints");
164
+ pushValidationIssue(issues, `critical_flows:${flow.id}`, "Flow has no entrypoints");
168
165
  }
169
166
  for (const path of flow.paths) {
170
167
  if (!idx.repoPaths.has(path)) {
171
- pushIssue(issues, `critical_flows:${flow.id}`, `Flow references unknown file ${path}`);
168
+ pushValidationIssue(issues, `critical_flows:${flow.id}`, `Flow references unknown file ${path}`);
172
169
  }
173
170
  const disposition = idx.dispositionMap.get(path);
174
171
  if (disposition && disposition !== "included") {
175
- pushIssue(issues, `critical_flows:${flow.id}`, `Flow includes non-included file ${path} with disposition ${disposition}`);
172
+ pushValidationIssue(issues, `critical_flows:${flow.id}`, `Flow includes non-included file ${path} with disposition ${disposition}`);
176
173
  }
177
174
  }
178
175
  }
@@ -182,11 +179,11 @@ function validateFlowCoverage(bundle, idx, issues) {
182
179
  return;
183
180
  for (const flow of idx.flowCoverageEntries) {
184
181
  if (!idx.flowIds.has(flow.flow_id)) {
185
- pushIssue(issues, `flow_coverage:${flow.flow_id}`, `Flow coverage references unknown flow ${flow.flow_id}`);
182
+ pushValidationIssue(issues, `flow_coverage:${flow.flow_id}`, `Flow coverage references unknown flow ${flow.flow_id}`);
186
183
  }
187
184
  for (const lens of flow.completed_lenses) {
188
185
  if (!flow.required_lenses.includes(lens)) {
189
- pushIssue(issues, `flow_coverage:${flow.flow_id}`, `Completed lens ${lens} is not in required_lenses`);
186
+ pushValidationIssue(issues, `flow_coverage:${flow.flow_id}`, `Completed lens ${lens} is not in required_lenses`);
190
187
  }
191
188
  }
192
189
  const expectedStatus = flow.required_lenses.length > 0 && flow.required_lenses.every((lens) => flow.completed_lenses.includes(lens))
@@ -195,7 +192,7 @@ function validateFlowCoverage(bundle, idx, issues) {
195
192
  ? "partial"
196
193
  : "pending";
197
194
  if (flow.status !== expectedStatus) {
198
- pushIssue(issues, `flow_coverage:${flow.flow_id}`, `Flow status ${flow.status} does not match expected ${expectedStatus}`);
195
+ pushValidationIssue(issues, `flow_coverage:${flow.flow_id}`, `Flow status ${flow.status} does not match expected ${expectedStatus}`);
199
196
  }
200
197
  }
201
198
  }
@@ -205,7 +202,7 @@ function validateRiskRegister(bundle, idx, issues) {
205
202
  const riskUnitIds = new Set(idx.riskRegisterItems.map((item) => item.unit_id));
206
203
  for (const unit of idx.unitManifestUnits) {
207
204
  if (!riskUnitIds.has(unit.unit_id)) {
208
- pushIssue(issues, "risk_register", `Missing risk entry for unit ${unit.unit_id}`);
205
+ pushValidationIssue(issues, "risk_register", `Missing risk entry for unit ${unit.unit_id}`);
209
206
  }
210
207
  }
211
208
  }
@@ -214,11 +211,11 @@ function validateSurfaceManifest(bundle, idx, issues) {
214
211
  return;
215
212
  for (const surface of idx.surfaceEntries) {
216
213
  if (!idx.repoPaths.has(surface.entrypoint)) {
217
- pushIssue(issues, `surface_manifest:${surface.id}`, `Surface references unknown entrypoint ${surface.entrypoint}`);
214
+ pushValidationIssue(issues, `surface_manifest:${surface.id}`, `Surface references unknown entrypoint ${surface.entrypoint}`);
218
215
  }
219
216
  const disposition = idx.dispositionMap.get(surface.entrypoint);
220
217
  if (disposition && disposition !== "included") {
221
- pushIssue(issues, `surface_manifest:${surface.id}`, `Surface entrypoint ${surface.entrypoint} is not included`);
218
+ pushValidationIssue(issues, `surface_manifest:${surface.id}`, `Surface entrypoint ${surface.entrypoint} is not included`);
222
219
  }
223
220
  }
224
221
  }
@@ -227,11 +224,11 @@ function validateRuntimeValidationTasks(bundle, idx, issues) {
227
224
  return;
228
225
  for (const task of idx.runtimeValidationTasks) {
229
226
  if (task.target_paths.length === 0) {
230
- pushIssue(issues, `runtime_validation_tasks:${task.id}`, "Runtime validation task has no target paths");
227
+ pushValidationIssue(issues, `runtime_validation_tasks:${task.id}`, "Runtime validation task has no target paths");
231
228
  }
232
229
  for (const path of task.target_paths) {
233
230
  if (!idx.repoPaths.has(path)) {
234
- pushIssue(issues, `runtime_validation_tasks:${task.id}`, `Runtime validation task references unknown path ${path}`);
231
+ pushValidationIssue(issues, `runtime_validation_tasks:${task.id}`, `Runtime validation task references unknown path ${path}`);
235
232
  }
236
233
  }
237
234
  }
@@ -241,7 +238,7 @@ function validateRuntimeValidationReport(bundle, idx, issues) {
241
238
  return;
242
239
  for (const result of idx.runtimeValidationResults) {
243
240
  if (!idx.runtimeTaskIds.has(result.task_id)) {
244
- pushIssue(issues, `runtime_validation_report:${result.task_id}`, `Runtime validation result references unknown task ${result.task_id}`);
241
+ pushValidationIssue(issues, `runtime_validation_report:${result.task_id}`, `Runtime validation result references unknown task ${result.task_id}`);
245
242
  }
246
243
  }
247
244
  }
@@ -250,7 +247,7 @@ function validateExternalAnalyzerResults(bundle, idx, issues) {
250
247
  return;
251
248
  for (const item of idx.externalAnalyzerResults) {
252
249
  if (!idx.repoPaths.has(item.path) && bundle.repo_manifest) {
253
- pushIssue(issues, `external_analyzer_results:${item.id}`, `External analyzer result references unknown path ${item.path}`);
250
+ pushValidationIssue(issues, `external_analyzer_results:${item.id}`, `External analyzer result references unknown path ${item.path}`);
254
251
  }
255
252
  }
256
253
  }
@@ -265,13 +262,13 @@ function validateTaskLineRanges(_bundle, idx, issues) {
265
262
  for (const [rangeIndex, range] of (task.line_ranges ?? []).entries()) {
266
263
  const path = `${artifactPath}:${task.task_id}.line_ranges:${rangeIndex}`;
267
264
  if (range.start < 1) {
268
- pushIssue(issues, path, "Line range start must be a positive 1-based integer");
265
+ pushValidationIssue(issues, path, "Line range start must be a positive 1-based integer");
269
266
  }
270
267
  if (range.end < 1) {
271
- pushIssue(issues, path, "Line range end must be a positive 1-based integer");
268
+ pushValidationIssue(issues, path, "Line range end must be a positive 1-based integer");
272
269
  }
273
270
  if (range.end < range.start) {
274
- pushIssue(issues, path, "Line range end must be greater than or equal to start");
271
+ pushValidationIssue(issues, path, "Line range end must be greater than or equal to start");
275
272
  }
276
273
  }
277
274
  }
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/audit/validation/artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/audit/validation/artifacts.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,9 @@
8
8
  * owned by another module. For the purposes of this detector, a module M
9
9
  * is said to need module N when M lists N in its `needs` array.
10
10
  *
11
- * Detection algorithm: Kahn's iterative topological sort over the directed
12
- * graph of (module → modules it needs). Any node that remains after the
13
- * sort is part of a cycle. The resulting connected components are each
14
- * reported as one detected cycle.
11
+ * Detection is the shared directed-cycle core's exact strongly-connected-
12
+ * component membership (`audit-tools/shared` → `findCyclicComponents`). Each
13
+ * cyclic component is reported as one detected cycle.
15
14
  */
16
15
  /** A module node in the seam-obligation graph. */
17
16
  export interface SeamObligationNode {
@@ -20,9 +19,12 @@ export interface SeamObligationNode {
20
19
  /** IDs of modules this module declares an interface obligation toward. */
21
20
  needs: string[];
22
21
  }
23
- /** One detected cycle (N ≥ 2 nodes). */
22
+ /**
23
+ * One detected cycle (N ≥ 1 nodes — a module that needs ITSELF is a 1-member
24
+ * cycle; every other cycle has 2 or more members).
25
+ */
24
26
  export interface DetectedCycle {
25
- /** Ordered list of module IDs that form the cycle (not necessarily in cycle order). */
27
+ /** Module IDs that form the cycle, in input order (not in cycle order). */
26
28
  members: string[];
27
29
  }
28
30
  /** A proposed mediator module that breaks a cycle. */
@@ -58,10 +60,17 @@ export interface AuthoredCycleBreak {
58
60
  /**
59
61
  * Detect cyclic seam obligations in a module graph.
60
62
  *
61
- * Uses Kahn's topological sort: build an in-degree map and a dependency →
62
- * dependent adjacency list, then drain the zero-in-degree queue. Any node
63
- * remaining in the graph after the drain is part of a cycle. Weakly
64
- * connected components among remaining nodes are grouped into cycles.
63
+ * Membership is EXACT: each reported cycle is one strongly connected component
64
+ * of the (module → modules it needs) graph. Two properties follow, and both
65
+ * differ from the Kahn drain this replaced:
66
+ *
67
+ * - a module DOWNSTREAM of a cycle (it needs a member, no member needs it) is
68
+ * not a member and is not reported — the drain reported every node it could
69
+ * not drain, tails included;
70
+ * - two cycles CHAINED by an edge between them are two cycles, not one — the
71
+ * drain's weakly-connected grouping fused them.
72
+ *
73
+ * A module that needs ITSELF is reported as a 1-member cycle.
65
74
  *
66
75
  * Returns an empty array when no cycle is found.
67
76
  */
@@ -80,6 +89,12 @@ export declare function detectCyclicSeamObligations(nodes: SeamObligationNode[])
80
89
  *
81
90
  * If the resulting graph still contains a cycle, the proposed break is
82
91
  * rejected.
92
+ *
93
+ * The mediator appears EXACTLY ONCE in the patched graph. When it is already a
94
+ * node of `allNodes` — which is the live feed from
95
+ * {@link validateAuthoredCycleBreak}, where the mediator is a real obligation —
96
+ * its own entry carries the proposed needs instead of a second entry with the
97
+ * same id being appended.
83
98
  */
84
99
  export declare function validateCycleBreak(originalCycle: DetectedCycle, allNodes: SeamObligationNode[], proposedMediator: ProposedMediator): CycleBreakValidation;
85
100
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"cyclicSeamResolution.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/cyclicSeamResolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,kDAAkD;AAClD,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wCAAwC;AACxC,MAAM,WAAW,aAAa;IAC5B,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,QAAQ,EAAE,UAAU,GAAG,kBAAkB,CAAC;IAC1C,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,kBAAkB,EAAE,GAC1B,aAAa,EAAE,CAiFjB;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,kBAAkB,EAAE,EAC9B,gBAAgB,EAAE,gBAAgB,GACjC,oBAAoB,CAoCtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,kBAAkB,EAAE,EAClC,QAAQ,EAAE,kBAAkB,GAC3B,oBAAoB,CAiHtB"}
1
+ {"version":3,"file":"cyclicSeamResolution.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/cyclicSeamResolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,kDAAkD;AAClD,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,QAAQ,EAAE,UAAU,GAAG,kBAAkB,CAAC;IAC1C,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,kBAAkB,EAAE,GAC1B,aAAa,EAAE,CAMjB;AAID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,kBAAkB,EAAE,EAC9B,gBAAgB,EAAE,gBAAgB,GACjC,oBAAoB,CA6CtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,kBAAkB,EAAE,EAClC,QAAQ,EAAE,kBAAkB,GAC3B,oBAAoB,CAiHtB"}
@@ -8,99 +8,32 @@
8
8
  * owned by another module. For the purposes of this detector, a module M
9
9
  * is said to need module N when M lists N in its `needs` array.
10
10
  *
11
- * Detection algorithm: Kahn's iterative topological sort over the directed
12
- * graph of (module → modules it needs). Any node that remains after the
13
- * sort is part of a cycle. The resulting connected components are each
14
- * reported as one detected cycle.
11
+ * Detection is the shared directed-cycle core's exact strongly-connected-
12
+ * component membership (`audit-tools/shared` → `findCyclicComponents`). Each
13
+ * cyclic component is reported as one detected cycle.
15
14
  */
15
+ import { findCyclicComponents } from "audit-tools/shared";
16
16
  // ── Cycle detection ───────────────────────────────────────────────────────────
17
17
  /**
18
18
  * Detect cyclic seam obligations in a module graph.
19
19
  *
20
- * Uses Kahn's topological sort: build an in-degree map and a dependency →
21
- * dependent adjacency list, then drain the zero-in-degree queue. Any node
22
- * remaining in the graph after the drain is part of a cycle. Weakly
23
- * connected components among remaining nodes are grouped into cycles.
20
+ * Membership is EXACT: each reported cycle is one strongly connected component
21
+ * of the (module → modules it needs) graph. Two properties follow, and both
22
+ * differ from the Kahn drain this replaced:
23
+ *
24
+ * - a module DOWNSTREAM of a cycle (it needs a member, no member needs it) is
25
+ * not a member and is not reported — the drain reported every node it could
26
+ * not drain, tails included;
27
+ * - two cycles CHAINED by an edge between them are two cycles, not one — the
28
+ * drain's weakly-connected grouping fused them.
29
+ *
30
+ * A module that needs ITSELF is reported as a 1-member cycle.
24
31
  *
25
32
  * Returns an empty array when no cycle is found.
26
33
  */
27
34
  export function detectCyclicSeamObligations(nodes) {
28
- if (nodes.length === 0)
29
- return [];
30
- const ids = new Set(nodes.map((n) => n.id));
31
- // adjacency: dep → [dependents]
32
- const adjacency = new Map();
33
- const inDegree = new Map();
34
- for (const id of ids) {
35
- adjacency.set(id, []);
36
- inDegree.set(id, 0);
37
- }
38
- for (const node of nodes) {
39
- for (const dep of node.needs) {
40
- if (!ids.has(dep))
41
- continue; // ignore external refs
42
- // edge: dep → node (dep must come before node)
43
- adjacency.get(dep).push(node.id);
44
- inDegree.set(node.id, (inDegree.get(node.id) ?? 0) + 1);
45
- }
46
- }
47
- // Kahn's drain
48
- const queue = [];
49
- for (const [id, deg] of inDegree.entries()) {
50
- if (deg === 0)
51
- queue.push(id);
52
- }
53
- let visited = 0;
54
- while (queue.length > 0) {
55
- const node = queue.shift();
56
- visited++;
57
- for (const next of adjacency.get(node) ?? []) {
58
- const newDeg = (inDegree.get(next) ?? 0) - 1;
59
- inDegree.set(next, newDeg);
60
- if (newDeg === 0)
61
- queue.push(next);
62
- }
63
- }
64
- if (visited === ids.size)
65
- return []; // no cycles
66
- // Collect cycle members (nodes with in-degree > 0 after drain).
67
- const cycleNodes = [...ids].filter((id) => (inDegree.get(id) ?? 0) > 0);
68
- // Group by weakly connected component using union-find on the original
69
- // needs edges (restricted to cycle nodes).
70
- const cycleSet = new Set(cycleNodes);
71
- const parent = new Map(cycleNodes.map((id) => [id, id]));
72
- function find(x) {
73
- while (parent.get(x) !== x) {
74
- const p = parent.get(x);
75
- parent.set(x, parent.get(p) ?? p);
76
- x = parent.get(x);
77
- }
78
- return x;
79
- }
80
- function union(a, b) {
81
- const ra = find(a);
82
- const rb = find(b);
83
- if (ra !== rb)
84
- parent.set(ra, rb);
85
- }
86
- for (const node of nodes) {
87
- if (!cycleSet.has(node.id))
88
- continue;
89
- for (const dep of node.needs) {
90
- if (cycleSet.has(dep)) {
91
- union(node.id, dep);
92
- }
93
- }
94
- }
95
- // Group by root.
96
- const components = new Map();
97
- for (const id of cycleNodes) {
98
- const root = find(id);
99
- if (!components.has(root))
100
- components.set(root, []);
101
- components.get(root).push(id);
102
- }
103
- return [...components.values()].map((members) => ({ members }));
35
+ const components = findCyclicComponents(nodes.map((node) => ({ id: node.id, depends_on: node.needs })), { includeSelfLoops: true });
36
+ return components.map((members) => ({ members }));
104
37
  }
105
38
  // ── Cycle-break re-check ──────────────────────────────────────────────────────
106
39
  /**
@@ -117,6 +50,12 @@ export function detectCyclicSeamObligations(nodes) {
117
50
  *
118
51
  * If the resulting graph still contains a cycle, the proposed break is
119
52
  * rejected.
53
+ *
54
+ * The mediator appears EXACTLY ONCE in the patched graph. When it is already a
55
+ * node of `allNodes` — which is the live feed from
56
+ * {@link validateAuthoredCycleBreak}, where the mediator is a real obligation —
57
+ * its own entry carries the proposed needs instead of a second entry with the
58
+ * same id being appended.
120
59
  */
121
60
  export function validateCycleBreak(originalCycle, allNodes, proposedMediator) {
122
61
  const cycleSet = new Set(originalCycle.members);
@@ -124,10 +63,16 @@ export function validateCycleBreak(originalCycle, allNodes, proposedMediator) {
124
63
  // - For each cycle member: replace needs-edges to other cycle members with
125
64
  // a needs-edge to the mediator.
126
65
  // - For non-cycle members: unchanged.
127
- // - Add the mediator.
66
+ // - Add the mediator, unless the graph already carries a node with its id.
128
67
  const patched = [];
68
+ const mediatorAlreadyPresent = allNodes.some((node) => node.id === proposedMediator.id);
129
69
  for (const node of allNodes) {
130
- if (cycleSet.has(node.id)) {
70
+ if (node.id === proposedMediator.id) {
71
+ // The mediator's own entry — carry the proposed needs here rather than
72
+ // appending a second node with the same id below.
73
+ patched.push({ id: node.id, needs: [...proposedMediator.needs] });
74
+ }
75
+ else if (cycleSet.has(node.id)) {
131
76
  const newNeeds = node.needs.map((dep) => cycleSet.has(dep) ? proposedMediator.id : dep);
132
77
  // Deduplicate mediator references.
133
78
  patched.push({ id: node.id, needs: [...new Set(newNeeds)] });
@@ -136,8 +81,10 @@ export function validateCycleBreak(originalCycle, allNodes, proposedMediator) {
136
81
  patched.push(node);
137
82
  }
138
83
  }
139
- // Add the mediator itself.
140
- patched.push({ id: proposedMediator.id, needs: proposedMediator.needs });
84
+ // Add the mediator itself, unless the live graph already carries it.
85
+ if (!mediatorAlreadyPresent) {
86
+ patched.push({ id: proposedMediator.id, needs: proposedMediator.needs });
87
+ }
141
88
  const remaining = detectCyclicSeamObligations(patched);
142
89
  if (remaining.length > 0) {
143
90
  const affectedIds = remaining.flatMap((c) => c.members).join(", ");
@@ -1 +1 @@
1
- {"version":3,"file":"cyclicSeamResolution.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/cyclicSeamResolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmDH,iFAAiF;AAEjF;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAA2B;IAE3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,gCAAgC;IAChC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,uBAAuB;YACpD,+CAA+C;YAC/C,SAAS,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,eAAe;IACf,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3C,IAAI,GAAG,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC5B,OAAO,EAAE,CAAC;QACV,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC7C,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC3B,IAAI,MAAM,KAAK,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,OAAO,KAAK,GAAG,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC,CAAC,YAAY;IAEjD,gEAAgE;IAChE,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAExE,uEAAuE;IACvE,2CAA2C;IAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAEzE,SAAS,IAAI,CAAC,CAAS;QACrB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS,KAAK,CAAC,CAAS,EAAE,CAAS;QACjC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAE,SAAS;QACrC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC/C,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpD,UAAU,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAChC,aAA4B,EAC5B,QAA8B,EAC9B,gBAAkC;IAElC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAEhD,+BAA+B;IAC/B,2EAA2E;IAC3E,kCAAkC;IAClC,sCAAsC;IACtC,sBAAsB;IACtB,MAAM,OAAO,GAAyB,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACtC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAC9C,CAAC;YACF,mCAAmC;YACnC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC;IAEzE,MAAM,SAAS,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAEvD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,sBAAsB,gBAAgB,CAAC,EAAE,uCAAuC,WAAW,IAAI;SACxG,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,0BAA0B,CACxC,aAA4B,EAC5B,YAAkC,EAClC,QAA4B;IAE5B,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IAEnD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,OAAO,QAAQ,CAAC,QAAQ,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB;gBACxF,wFAAwF;gBACxF,iFAAiF;SACpF,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACzE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,OAAO,QAAQ,CAAC,QAAQ,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,YAAY,KAAK;gBAC5F,yFAAyF;gBACzF,oDAAoD;SACvD,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QACnE,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,aAAa,YAAY,kCAAkC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB;gBAC7F,kFAAkF;gBAClF,+CAA+C;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,KAAK,kBAAkB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5E,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,qBAAqB,YAAY,+BAA+B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS;gBAC3F,oFAAoF;SACvF,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,+CAA+C;IAC/C,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAS,OAAO,CAAC,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAE,SAAS;QACrC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK;YAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,OAAO,QAAQ,CAAC,QAAQ,iBAAiB,YAAY,8BAA8B;gBACnF,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qEAAqE;gBAC3F,qFAAqF;SACxF,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,sEAAsE;IACtE,MAAM,YAAY,GAAG,2BAA2B,CAAC,YAAY,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAC9C,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAC7C,CAAC;IACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjF,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,UAAU,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,gEAAgE;gBAC5F,GAAG,QAAQ,CAAC,QAAQ,eAAe,YAAY,qCAAqC;gBACpF,IAAI,WAAW,6EAA6E;gBAC5F,oCAAoC;SACvC,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,4EAA4E;IAC5E,gBAAgB;IAChB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM,EACJ,OAAO,QAAQ,CAAC,QAAQ,eAAe,YAAY,uCAAuC;gBAC1F,eAAe,WAAW,kDAAkD;SAC/E,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI,QAAQ,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QACrC,OAAO,kBAAkB,CAAC,aAAa,EAAE,YAAY,EAAE;YACrD,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,KAAK,EAAE,UAAU,CAAC,KAAK;SACxB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"cyclicSeamResolution.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/cyclicSeamResolution.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,16 @@
2
2
  * Single tool-owned authority for the contract-pipeline's id relationships
3
3
  * (S4 of the contract-authoring determinism design).
4
4
  *
5
- * Today it owns the one relationship that caused the recurring "Unknown
6
- * finding_id" merge trap: the `CP-BLOCK-` block-id <-> bare node-id mapping.
5
+ * Its block-id relationship caused the recurring "Unknown
6
+ * finding_id" merge trap: the one-way bare-node-id to `CP-BLOCK-` block-id mint.
7
7
  * Before this module the prefix was constructed by inline string templates at
8
8
  * several sites (the DAG->plan promotion built it for both node block ids AND
9
- * dependency edges; the dispatch alias map built it again), and the reverse was
10
- * only ever recovered by the tolerant alias remap. With the prefix minted and
11
- * reversed in exactly ONE place each, a node id minted by the planner
12
- * round-trips dispatch -> worker result -> merge deterministically, so the
13
- * tolerant alias remap is defence-in-depth rather than load-bearing.
9
+ * dependency edges; the dispatch alias map built it again). With the node id and
10
+ * prefix minted in exactly ONE place each, dispatch and merge consume the same
11
+ * persisted identity without a reverse-mapping API.
14
12
  *
15
- * The mapping is a bijection on bare node ids: `fromBlockId(toBlockId(n)) === n`.
13
+ * The block-id API is intentionally one-way: callers consume the persisted id
14
+ * minted by `toBlockId` rather than reverse-mapping it.
16
15
  * It is a pure module — no IO, no model identity — so it is testable in
17
16
  * isolation and feeds the hash/staleness DAG cleanly.
18
17
  */
@@ -27,9 +26,9 @@ export declare const CP_BLOCK_PREFIX = "CP-BLOCK-";
27
26
  *
28
27
  * This closes a merge-trap: when `node.id` was missing, the finding id used this
29
28
  * fallback (`CP-001`) but the block id was built from the raw `node.id`
30
- * (`CP-BLOCK-undefined`), so `fromBlockId` could not recover the finding id and
31
- * the worker result landed in `unresolved`. Routing every node-id site through
32
- * `ensureNodeId` makes `fromBlockId(toBlockId(ensureNodeId(...)))` round-trip.
29
+ * (`CP-BLOCK-undefined`), so the worker result landed in `unresolved`. Routing
30
+ * every node-id site through `ensureNodeId` keeps the finding and block mints
31
+ * aligned.
33
32
  */
34
33
  export declare function ensureNodeId(rawId: string | undefined, index: number): string;
35
34
  /**
@@ -37,15 +36,6 @@ export declare function ensureNodeId(rawId: string | undefined, index: number):
37
36
  * `CP-BLOCK-` prefix is applied — every producer of a block id goes through here.
38
37
  */
39
38
  export declare function toBlockId(nodeId: string): string;
40
- /** True when `value` is a `CP-BLOCK-` block id minted by `toBlockId`. */
41
- export declare function isBlockId(value: string): boolean;
42
- /**
43
- * Recover the bare node id from a block id — the inverse of `toBlockId`. Returns
44
- * `null` when `value` is not a `CP-BLOCK-` block id (so callers can fall back to
45
- * the tolerant alias remap for non-block aliases such as obligation ids, rather
46
- * than silently producing a wrong node id).
47
- */
48
- export declare function fromBlockId(value: string): string | null;
49
39
  /** The one prefix every derived obligation id carries. */
50
40
  export declare const OBLIGATION_PREFIX = "OBL-";
51
41
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"idRegistry.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/idRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,gFAAgF;AAChF,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,MAAM,GACZ,MAAM,CAER;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAExD;AAED,0DAA0D;AAC1D,eAAO,MAAM,iBAAiB,SAAS,CAAC;AAExC;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEvE"}
1
+ {"version":3,"file":"idRegistry.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/idRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,gFAAgF;AAChF,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,MAAM,GACZ,MAAM,CAER;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,0DAA0D;AAC1D,eAAO,MAAM,iBAAiB,SAAS,CAAC;AAExC;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEvE"}