audit-tools 0.50.21 → 0.51.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. package/README.md +1 -1
  2. package/dist/audit/cli/auditStep.d.ts +1 -1
  3. package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
  4. package/dist/audit/cli/charterExtractionPrompt.js +14 -1
  5. package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
  6. package/dist/audit/cli/cleanup.d.ts +0 -1
  7. package/dist/audit/cli/cleanup.d.ts.map +1 -1
  8. package/dist/audit/cli/cleanup.js +32 -20
  9. package/dist/audit/cli/cleanup.js.map +1 -1
  10. package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
  11. package/dist/audit/cli/conceptualDispatch.js +30 -5
  12. package/dist/audit/cli/conceptualDispatch.js.map +1 -1
  13. package/dist/audit/cli/dispatch/hostHandoff.d.ts +2 -0
  14. package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
  15. package/dist/audit/cli/dispatch/hostHandoff.js +48 -20
  16. package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
  17. package/dist/audit/cli/fanoutLanes.d.ts +7 -0
  18. package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
  19. package/dist/audit/cli/fanoutLanes.js +9 -1
  20. package/dist/audit/cli/fanoutLanes.js.map +1 -1
  21. package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
  22. package/dist/audit/cli/forceSynthesisCommand.js +2 -14
  23. package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
  24. package/dist/audit/cli/intakeCommand.d.ts.map +1 -1
  25. package/dist/audit/cli/intakeCommand.js +3 -13
  26. package/dist/audit/cli/intakeCommand.js.map +1 -1
  27. package/dist/audit/cli/laneSubmissions.d.ts +42 -57
  28. package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
  29. package/dist/audit/cli/laneSubmissions.js +116 -82
  30. package/dist/audit/cli/laneSubmissions.js.map +1 -1
  31. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  32. package/dist/audit/cli/nextStepCommand.js +132 -99
  33. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  34. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  35. package/dist/audit/cli/nextStepHelpers.js +39 -46
  36. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  37. package/dist/audit/cli/resynthesizeCommand.d.ts.map +1 -1
  38. package/dist/audit/cli/resynthesizeCommand.js +5 -2
  39. package/dist/audit/cli/resynthesizeCommand.js.map +1 -1
  40. package/dist/audit/cli/sampleRunCommand.d.ts +3 -2
  41. package/dist/audit/cli/sampleRunCommand.d.ts.map +1 -1
  42. package/dist/audit/cli/stepScaffold.d.ts +21 -0
  43. package/dist/audit/cli/stepScaffold.d.ts.map +1 -0
  44. package/dist/audit/cli/stepScaffold.js +50 -0
  45. package/dist/audit/cli/stepScaffold.js.map +1 -0
  46. package/dist/audit/cli/steps.d.ts +6 -6
  47. package/dist/audit/cli/synthesizeCommand.d.ts.map +1 -1
  48. package/dist/audit/cli/synthesizeCommand.js +2 -14
  49. package/dist/audit/cli/synthesizeCommand.js.map +1 -1
  50. package/dist/audit/contracts/workerSchemas.d.ts +8 -8
  51. package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
  52. package/dist/audit/contracts/workerSchemas.js +12 -6
  53. package/dist/audit/contracts/workerSchemas.js.map +1 -1
  54. package/dist/audit/contracts/wrapperResponse.d.ts +7 -7
  55. package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
  56. package/dist/audit/contracts/wrapperResponse.js +9 -1
  57. package/dist/audit/contracts/wrapperResponse.js.map +1 -1
  58. package/dist/audit/extractors/analyzers/merge.d.ts.map +1 -1
  59. package/dist/audit/extractors/analyzers/merge.js +2 -7
  60. package/dist/audit/extractors/analyzers/merge.js.map +1 -1
  61. package/dist/audit/extractors/commentDecomposition.d.ts +28 -0
  62. package/dist/audit/extractors/commentDecomposition.d.ts.map +1 -1
  63. package/dist/audit/extractors/commentDecomposition.js +151 -22
  64. package/dist/audit/extractors/commentDecomposition.js.map +1 -1
  65. package/dist/audit/extractors/graph.d.ts +1 -1
  66. package/dist/audit/extractors/graph.d.ts.map +1 -1
  67. package/dist/audit/extractors/graph.js +2 -6
  68. package/dist/audit/extractors/graph.js.map +1 -1
  69. package/dist/audit/extractors/graphManifestEdges/cargo.d.ts.map +1 -1
  70. package/dist/audit/extractors/graphManifestEdges/cargo.js +4 -4
  71. package/dist/audit/extractors/graphManifestEdges/cargo.js.map +1 -1
  72. package/dist/audit/extractors/graphManifestEdges/pnpm.d.ts.map +1 -1
  73. package/dist/audit/extractors/graphManifestEdges/pnpm.js +3 -3
  74. package/dist/audit/extractors/graphManifestEdges/pnpm.js.map +1 -1
  75. package/dist/audit/extractors/graphManifestEdges/pyproject.d.ts.map +1 -1
  76. package/dist/audit/extractors/graphManifestEdges/pyproject.js +3 -2
  77. package/dist/audit/extractors/graphManifestEdges/pyproject.js.map +1 -1
  78. package/dist/audit/extractors/graphManifestEdges/toml.d.ts +0 -6
  79. package/dist/audit/extractors/graphManifestEdges/toml.d.ts.map +1 -1
  80. package/dist/audit/extractors/graphManifestEdges/toml.js +0 -13
  81. package/dist/audit/extractors/graphManifestEdges/toml.js.map +1 -1
  82. package/dist/audit/extractors/graphManifestEdges/workspace.d.ts +9 -0
  83. package/dist/audit/extractors/graphManifestEdges/workspace.d.ts.map +1 -1
  84. package/dist/audit/extractors/graphManifestEdges/workspace.js +16 -0
  85. package/dist/audit/extractors/graphManifestEdges/workspace.js.map +1 -1
  86. package/dist/audit/extractors/graphManifestEdges/yaml.d.ts +0 -2
  87. package/dist/audit/extractors/graphManifestEdges/yaml.d.ts.map +1 -1
  88. package/dist/audit/extractors/graphManifestEdges/yaml.js +0 -9
  89. package/dist/audit/extractors/graphManifestEdges/yaml.js.map +1 -1
  90. package/dist/audit/extractors/graphSignals.d.ts.map +1 -1
  91. package/dist/audit/extractors/graphSignals.js +16 -2
  92. package/dist/audit/extractors/graphSignals.js.map +1 -1
  93. package/dist/audit/io/artifacts.d.ts +19 -0
  94. package/dist/audit/io/artifacts.d.ts.map +1 -1
  95. package/dist/audit/io/artifacts.js +44 -2
  96. package/dist/audit/io/artifacts.js.map +1 -1
  97. package/dist/audit/orchestrator/advance.d.ts +0 -22
  98. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  99. package/dist/audit/orchestrator/advance.js +1 -43
  100. package/dist/audit/orchestrator/advance.js.map +1 -1
  101. package/dist/audit/orchestrator/charterDeltaExecutor.d.ts.map +1 -1
  102. package/dist/audit/orchestrator/charterDeltaExecutor.js +14 -0
  103. package/dist/audit/orchestrator/charterDeltaExecutor.js.map +1 -1
  104. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts +16 -6
  105. package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
  106. package/dist/audit/orchestrator/charterExtractionExecutor.js +127 -9
  107. package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
  108. package/dist/audit/orchestrator/charterPacketArchive.d.ts +51 -0
  109. package/dist/audit/orchestrator/charterPacketArchive.d.ts.map +1 -0
  110. package/dist/audit/orchestrator/charterPacketArchive.js +173 -0
  111. package/dist/audit/orchestrator/charterPacketArchive.js.map +1 -0
  112. package/dist/audit/orchestrator/charterPackets.d.ts +31 -13
  113. package/dist/audit/orchestrator/charterPackets.d.ts.map +1 -1
  114. package/dist/audit/orchestrator/charterPackets.js +299 -96
  115. package/dist/audit/orchestrator/charterPackets.js.map +1 -1
  116. package/dist/audit/orchestrator/designReviewPrompt.d.ts +20 -4
  117. package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
  118. package/dist/audit/orchestrator/designReviewPrompt.js +89 -12
  119. package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
  120. package/dist/audit/orchestrator/edgeReasoning.d.ts.map +1 -1
  121. package/dist/audit/orchestrator/edgeReasoning.js +4 -9
  122. package/dist/audit/orchestrator/edgeReasoning.js.map +1 -1
  123. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  124. package/dist/audit/orchestrator/executorRunners.js +17 -1
  125. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  126. package/dist/audit/orchestrator/graphEnrichmentExecutor.d.ts.map +1 -1
  127. package/dist/audit/orchestrator/graphEnrichmentExecutor.js +8 -1
  128. package/dist/audit/orchestrator/graphEnrichmentExecutor.js.map +1 -1
  129. package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
  130. package/dist/audit/orchestrator/intentCheckpointGate.js +11 -2
  131. package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
  132. package/dist/audit/orchestrator/lineCounts.d.ts +44 -0
  133. package/dist/audit/orchestrator/lineCounts.d.ts.map +1 -0
  134. package/dist/audit/orchestrator/lineCounts.js +61 -0
  135. package/dist/audit/orchestrator/lineCounts.js.map +1 -0
  136. package/dist/audit/orchestrator/obligationDerive.d.ts +35 -0
  137. package/dist/audit/orchestrator/obligationDerive.d.ts.map +1 -0
  138. package/dist/audit/orchestrator/obligationDerive.js +50 -0
  139. package/dist/audit/orchestrator/obligationDerive.js.map +1 -0
  140. package/dist/audit/orchestrator/reviewPacketMetrics.d.ts.map +1 -1
  141. package/dist/audit/orchestrator/reviewPacketMetrics.js +3 -2
  142. package/dist/audit/orchestrator/reviewPacketMetrics.js.map +1 -1
  143. package/dist/audit/orchestrator/reviewPacketShared.d.ts +0 -2
  144. package/dist/audit/orchestrator/reviewPacketShared.d.ts.map +1 -1
  145. package/dist/audit/orchestrator/reviewPacketShared.js +0 -4
  146. package/dist/audit/orchestrator/reviewPacketShared.js.map +1 -1
  147. package/dist/audit/orchestrator/reviewPackets.d.ts.map +1 -1
  148. package/dist/audit/orchestrator/reviewPackets.js +3 -2
  149. package/dist/audit/orchestrator/reviewPackets.js.map +1 -1
  150. package/dist/audit/orchestrator/selectiveDeepening/conflict.d.ts.map +1 -1
  151. package/dist/audit/orchestrator/selectiveDeepening/conflict.js +3 -2
  152. package/dist/audit/orchestrator/selectiveDeepening/conflict.js.map +1 -1
  153. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.d.ts.map +1 -1
  154. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js +3 -2
  155. package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js.map +1 -1
  156. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.d.ts.map +1 -1
  157. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.js +3 -2
  158. package/dist/audit/orchestrator/selectiveDeepening/highRiskClean.js.map +1 -1
  159. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.d.ts.map +1 -1
  160. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js +4 -3
  161. package/dist/audit/orchestrator/selectiveDeepening/lensVerification.js.map +1 -1
  162. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.d.ts.map +1 -1
  163. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.js +2 -1
  164. package/dist/audit/orchestrator/selectiveDeepening/runtimeValidation.js.map +1 -1
  165. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts +0 -2
  166. package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts.map +1 -1
  167. package/dist/audit/orchestrator/selectiveDeepening/shared.js +0 -27
  168. package/dist/audit/orchestrator/selectiveDeepening/shared.js.map +1 -1
  169. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.d.ts.map +1 -1
  170. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js +10 -1
  171. package/dist/audit/orchestrator/selectiveDeepening/stewardFollowup.js.map +1 -1
  172. package/dist/audit/orchestrator/state.d.ts.map +1 -1
  173. package/dist/audit/orchestrator/state.js +21 -14
  174. package/dist/audit/orchestrator/state.js.map +1 -1
  175. package/dist/audit/orchestrator/synthesisExecutors.d.ts +8 -0
  176. package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
  177. package/dist/audit/orchestrator/synthesisExecutors.js +10 -0
  178. package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
  179. package/dist/audit/reporting/synthesis.d.ts +42 -2
  180. package/dist/audit/reporting/synthesis.d.ts.map +1 -1
  181. package/dist/audit/reporting/synthesis.js +264 -12
  182. package/dist/audit/reporting/synthesis.js.map +1 -1
  183. package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
  184. package/dist/audit/supervisor/operatorHandoff.js +14 -6
  185. package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
  186. package/dist/audit/systemic/secondOrderAdversaryPrompt.d.ts.map +1 -1
  187. package/dist/audit/systemic/secondOrderAdversaryPrompt.js +14 -0
  188. package/dist/audit/systemic/secondOrderAdversaryPrompt.js.map +1 -1
  189. package/dist/audit/types/analyzerCapability.d.ts +35 -11
  190. package/dist/audit/types/analyzerCapability.d.ts.map +1 -1
  191. package/dist/audit/types/analyzerCapability.js +83 -5
  192. package/dist/audit/types/analyzerCapability.js.map +1 -1
  193. package/dist/audit/types/auditState.d.ts +8 -8
  194. package/dist/audit/types/charterRegister.d.ts +33 -3
  195. package/dist/audit/types/charterRegister.d.ts.map +1 -1
  196. package/dist/audit/types/charterRegister.js +11 -1
  197. package/dist/audit/types/charterRegister.js.map +1 -1
  198. package/dist/audit/types/conceptualAdjudication.d.ts +395 -16
  199. package/dist/audit/types/conceptualAdjudication.d.ts.map +1 -1
  200. package/dist/audit/types/conceptualAdjudication.js +109 -5
  201. package/dist/audit/types/conceptualAdjudication.js.map +1 -1
  202. package/dist/audit/types/designAssessment.d.ts +1 -1
  203. package/dist/audit/types/designAssessment.d.ts.map +1 -1
  204. package/dist/audit/types.d.ts +9 -4
  205. package/dist/audit/types.d.ts.map +1 -1
  206. package/dist/remediate/droppedFindingsRecord.d.ts +13 -0
  207. package/dist/remediate/droppedFindingsRecord.d.ts.map +1 -0
  208. package/dist/remediate/droppedFindingsRecord.js +113 -0
  209. package/dist/remediate/droppedFindingsRecord.js.map +1 -0
  210. package/dist/remediate/intake.d.ts +17 -0
  211. package/dist/remediate/intake.d.ts.map +1 -1
  212. package/dist/remediate/intake.js +23 -0
  213. package/dist/remediate/intake.js.map +1 -1
  214. package/dist/remediate/intent/intentOrdering.d.ts.map +1 -1
  215. package/dist/remediate/intent/intentOrdering.js +29 -1
  216. package/dist/remediate/intent/intentOrdering.js.map +1 -1
  217. package/dist/remediate/phases/close.d.ts +1 -1
  218. package/dist/remediate/phases/close.d.ts.map +1 -1
  219. package/dist/remediate/phases/close.js +68 -6
  220. package/dist/remediate/phases/close.js.map +1 -1
  221. package/dist/remediate/phases/grounding.d.ts +12 -4
  222. package/dist/remediate/phases/grounding.d.ts.map +1 -1
  223. package/dist/remediate/phases/grounding.js +23 -60
  224. package/dist/remediate/phases/grounding.js.map +1 -1
  225. package/dist/remediate/state/types.d.ts +17 -6
  226. package/dist/remediate/state/types.d.ts.map +1 -1
  227. package/dist/remediate/state/types.js +3 -1
  228. package/dist/remediate/state/types.js.map +1 -1
  229. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  230. package/dist/remediate/steps/contractPipeline.js +10 -4
  231. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  232. package/dist/remediate/steps/contractPipelinePrompts.d.ts +10 -2
  233. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  234. package/dist/remediate/steps/contractPipelinePrompts.js +56 -12
  235. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  236. package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
  237. package/dist/remediate/steps/dispatch/hostHandoff.js +277 -146
  238. package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
  239. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  240. package/dist/remediate/steps/nextStep.js +253 -75
  241. package/dist/remediate/steps/nextStep.js.map +1 -1
  242. package/dist/remediate/steps/prompts.d.ts +14 -0
  243. package/dist/remediate/steps/prompts.d.ts.map +1 -1
  244. package/dist/remediate/steps/prompts.js +52 -4
  245. package/dist/remediate/steps/prompts.js.map +1 -1
  246. package/dist/remediate/steps/types.d.ts +1 -1
  247. package/dist/remediate/steps/types.d.ts.map +1 -1
  248. package/dist/remediate/steps/types.js.map +1 -1
  249. package/dist/remediate/validation/contractPipelineGates.d.ts +0 -34
  250. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  251. package/dist/remediate/validation/contractPipelineGates.js +181 -143
  252. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  253. package/dist/shared/agentReflections.d.ts +44 -3
  254. package/dist/shared/agentReflections.d.ts.map +1 -1
  255. package/dist/shared/agentReflections.js +63 -4
  256. package/dist/shared/agentReflections.js.map +1 -1
  257. package/dist/shared/analyzers/acquisitionEngine.d.ts +20 -1
  258. package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
  259. package/dist/shared/analyzers/acquisitionEngine.js +17 -3
  260. package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
  261. package/dist/shared/analyzers/candidates.d.ts.map +1 -1
  262. package/dist/shared/analyzers/candidates.js +13 -4
  263. package/dist/shared/analyzers/candidates.js.map +1 -1
  264. package/dist/shared/analyzers/types.d.ts +17 -6
  265. package/dist/shared/analyzers/types.d.ts.map +1 -1
  266. package/dist/shared/analyzers/types.js +6 -15
  267. package/dist/shared/analyzers/types.js.map +1 -1
  268. package/dist/shared/decompose/systemicChallenge.d.ts +116 -9
  269. package/dist/shared/decompose/systemicChallenge.d.ts.map +1 -1
  270. package/dist/shared/decompose/systemicChallenge.js +32 -1
  271. package/dist/shared/decompose/systemicChallenge.js.map +1 -1
  272. package/dist/shared/engine/obligationEngine.d.ts +23 -6
  273. package/dist/shared/engine/obligationEngine.d.ts.map +1 -1
  274. package/dist/shared/engine/obligationEngine.js +38 -3
  275. package/dist/shared/engine/obligationEngine.js.map +1 -1
  276. package/dist/shared/findings/dedupe.d.ts +10 -0
  277. package/dist/shared/findings/dedupe.d.ts.map +1 -1
  278. package/dist/shared/findings/dedupe.js +15 -0
  279. package/dist/shared/findings/dedupe.js.map +1 -1
  280. package/dist/shared/friction/triage.d.ts.map +1 -1
  281. package/dist/shared/friction/triage.js +5 -1
  282. package/dist/shared/friction/triage.js.map +1 -1
  283. package/dist/shared/git.d.ts +6 -0
  284. package/dist/shared/git.d.ts.map +1 -1
  285. package/dist/shared/git.js +8 -0
  286. package/dist/shared/git.js.map +1 -1
  287. package/dist/shared/graph/edgeConfidence.d.ts +12 -0
  288. package/dist/shared/graph/edgeConfidence.d.ts.map +1 -0
  289. package/dist/shared/graph/edgeConfidence.js +15 -0
  290. package/dist/shared/graph/edgeConfidence.js.map +1 -0
  291. package/dist/shared/index.d.ts +26 -9
  292. package/dist/shared/index.d.ts.map +1 -1
  293. package/dist/shared/index.js +20 -8
  294. package/dist/shared/index.js.map +1 -1
  295. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  296. package/dist/shared/loopCorePaths.js +4 -0
  297. package/dist/shared/loopCorePaths.js.map +1 -1
  298. package/dist/shared/measurement/measuredOutcome.d.ts +61 -0
  299. package/dist/shared/measurement/measuredOutcome.d.ts.map +1 -0
  300. package/dist/shared/measurement/measuredOutcome.js +109 -0
  301. package/dist/shared/measurement/measuredOutcome.js.map +1 -0
  302. package/dist/shared/reporting/findingDisplay.d.ts +14 -2
  303. package/dist/shared/reporting/findingDisplay.d.ts.map +1 -1
  304. package/dist/shared/reporting/findingDisplay.js +29 -2
  305. package/dist/shared/reporting/findingDisplay.js.map +1 -1
  306. package/dist/shared/reporting/lensCoverage.d.ts +70 -0
  307. package/dist/shared/reporting/lensCoverage.d.ts.map +1 -0
  308. package/dist/shared/reporting/lensCoverage.js +108 -0
  309. package/dist/shared/reporting/lensCoverage.js.map +1 -0
  310. package/dist/shared/submission/hostResultOutcomes.d.ts +42 -0
  311. package/dist/shared/submission/hostResultOutcomes.d.ts.map +1 -0
  312. package/dist/shared/submission/hostResultOutcomes.js +129 -0
  313. package/dist/shared/submission/hostResultOutcomes.js.map +1 -0
  314. package/dist/shared/submission/ingestionChecks.d.ts +146 -0
  315. package/dist/shared/submission/ingestionChecks.d.ts.map +1 -0
  316. package/dist/shared/submission/ingestionChecks.js +157 -0
  317. package/dist/shared/submission/ingestionChecks.js.map +1 -0
  318. package/dist/shared/submission/submissionClassifier.d.ts +8 -0
  319. package/dist/shared/submission/submissionClassifier.d.ts.map +1 -1
  320. package/dist/shared/submission/submissionClassifier.js.map +1 -1
  321. package/dist/shared/submission/submissionLedger.d.ts +24 -1
  322. package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
  323. package/dist/shared/submission/submissionLedger.js +61 -0
  324. package/dist/shared/submission/submissionLedger.js.map +1 -1
  325. package/dist/shared/submission/submissionScan.d.ts +2 -0
  326. package/dist/shared/submission/submissionScan.d.ts.map +1 -1
  327. package/dist/shared/submission/submissionScan.js +4 -0
  328. package/dist/shared/submission/submissionScan.js.map +1 -1
  329. package/dist/shared/tooling/projectFacts.d.ts +71 -0
  330. package/dist/shared/tooling/projectFacts.d.ts.map +1 -0
  331. package/dist/shared/tooling/projectFacts.js +153 -0
  332. package/dist/shared/tooling/projectFacts.js.map +1 -0
  333. package/dist/shared/tooling/projectTestAdmission.d.ts +5 -15
  334. package/dist/shared/tooling/projectTestAdmission.d.ts.map +1 -1
  335. package/dist/shared/tooling/projectTestAdmission.js +14 -5
  336. package/dist/shared/tooling/projectTestAdmission.js.map +1 -1
  337. package/dist/shared/types/charterPacket.d.ts +156 -0
  338. package/dist/shared/types/charterPacket.d.ts.map +1 -0
  339. package/dist/shared/types/charterPacket.js +9 -0
  340. package/dist/shared/types/charterPacket.js.map +1 -0
  341. package/dist/shared/types/closingActions.d.ts +16 -0
  342. package/dist/shared/types/closingActions.d.ts.map +1 -0
  343. package/dist/shared/types/closingActions.js +25 -0
  344. package/dist/shared/types/closingActions.js.map +1 -0
  345. package/dist/shared/types/finding.d.ts +275 -40
  346. package/dist/shared/types/finding.d.ts.map +1 -1
  347. package/dist/shared/types/finding.js +87 -0
  348. package/dist/shared/types/finding.js.map +1 -1
  349. package/dist/shared/types/intentCheckpoint.d.ts +50 -0
  350. package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
  351. package/dist/shared/types/intentCheckpoint.js +31 -0
  352. package/dist/shared/types/intentCheckpoint.js.map +1 -1
  353. package/dist/shared/validation/citationGrounding.d.ts +115 -0
  354. package/dist/shared/validation/citationGrounding.d.ts.map +1 -0
  355. package/dist/shared/validation/citationGrounding.js +347 -0
  356. package/dist/shared/validation/citationGrounding.js.map +1 -0
  357. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  358. package/dist/shared/validation/findingsReport.js +62 -0
  359. package/dist/shared/validation/findingsReport.js.map +1 -1
  360. package/docs/audit-pkg/contracts.md +34 -12
  361. package/docs/audit-pkg/operator-guide.md +10 -7
  362. package/package.json +3 -2
  363. package/schemas/audit-code-v1alpha1.schema.json +2 -1
  364. package/skills/audit-code/audit-code.prompt.md +5 -3
  365. package/dist/remediate/state/closingActions.d.ts +0 -3
  366. package/dist/remediate/state/closingActions.d.ts.map +0 -1
  367. package/dist/remediate/state/closingActions.js +0 -10
  368. package/dist/remediate/state/closingActions.js.map +0 -1
@@ -0,0 +1,51 @@
1
+ import { type CharterKind } from "audit-tools/shared";
2
+ /** The retained-evidence directory, beside `design-review-snapshots/`. */
3
+ export declare const CHARTER_PACKET_ARCHIVE_DIRNAME = "charter-packets";
4
+ /**
5
+ * One retention record. `archived: false` is a STATED failure, never a silent
6
+ * one: the source packet is still in the lane-asset directory, and the reason
7
+ * says why the archive could not be trusted.
8
+ */
9
+ export interface CharterPacketArchiveRow {
10
+ kind: CharterKind;
11
+ /** Full sha256 of the packet bytes — the identity, even when `archived` is false. */
12
+ sha256: string;
13
+ byte_length: number;
14
+ archived_at: string;
15
+ /** The lane-asset filename the packet was read from. */
16
+ source_filename: string;
17
+ archived: boolean;
18
+ /** Present only on `archived: false`. */
19
+ reason?: string;
20
+ }
21
+ export declare function charterPacketArchiveDir(artifactsDir: string): string;
22
+ export declare function charterPacketIndexPath(artifactsDir: string): string;
23
+ /**
24
+ * The archived packet's filename: `<kind>-<first 12 of sha256>.md`. Keyed by
25
+ * CONTENT, so a re-extraction that produced identical evidence reuses the same
26
+ * file (one copy of one packet) while a re-extraction that produced DIFFERENT
27
+ * evidence lands beside it instead of overwriting the record of what an earlier
28
+ * lane actually read.
29
+ */
30
+ export declare function charterPacketArchiveFilename(kind: CharterKind, sha256: string): string;
31
+ /**
32
+ * Read the retention index. An ABSENT file, and a payload that is not an array,
33
+ * read as no rows. Anything else — a malformed body, a directory in its place,
34
+ * a permission failure — THROWS, deliberately: the caller that overwrites this
35
+ * file must be able to tell "there was nothing to accumulate" from "the record
36
+ * could not be read", and only the second must stop it from clobbering.
37
+ */
38
+ export declare function readCharterPacketIndex(artifactsDir: string): Promise<CharterPacketArchiveRow[]>;
39
+ /**
40
+ * Archive each kind's evidence packet, then remove it from the emitter's read
41
+ * path. Returns the rows written for this pass (the index on disk accumulates
42
+ * across re-extractions). Absent packets are skipped: nothing was delivered, so
43
+ * there is nothing to retain and nothing to report.
44
+ */
45
+ export declare function archiveCharterPackets(params: {
46
+ artifactsDir: string;
47
+ kinds: readonly CharterKind[];
48
+ /** Injectable so a test pins the record rather than the clock. */
49
+ now?: () => string;
50
+ }): Promise<CharterPacketArchiveRow[]>;
51
+ //# sourceMappingURL=charterPacketArchive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"charterPacketArchive.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/charterPacketArchive.ts"],"names":[],"mappings":"AAqCA,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAG5B,0EAA0E;AAC1E,eAAO,MAAM,8BAA8B,oBAAoB,CAAC;AAKhE;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,qFAAqF;IACrF,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,GACb,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAKpC;AAYD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;IAC9B,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAgGrC"}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Charter evidence-packet RETENTION.
3
+ *
4
+ * Packets are consumed inputs: a stale packet left in the lane-asset directory
5
+ * would feed a later staleness-triggered re-extraction yesterday's evidence, so
6
+ * the emitter's read path must be empty after ingest. That reason is real and is
7
+ * preserved verbatim here — what changes is that the bytes are no longer
8
+ * DESTROYED to achieve it.
9
+ *
10
+ * The packet's content was nowhere else when it was unlinked, which inverts the
11
+ * P25-f rule stated 130 lines above the deletion site: a submission is only ever
12
+ * destroyed once its content is somewhere else. So three independent lanes could
13
+ * each report that the request path was absent from their packet, and the
14
+ * orchestrator could not confirm it — a glob against the deleted names matched
15
+ * nothing and produced a confident, meaningless "0 of 3".
16
+ *
17
+ * A HASH ALONE WOULD NOT ANSWER THE QUESTION. `materializeCharterPacket` reads
18
+ * the audited repository from disk, so a packet is a function of bundle + WORKING
19
+ * TREE. Once the audited tree moves the packet is not regenerable and a hash
20
+ * becomes unfalsifiable — it answers "did this lane get the tool's packet", never
21
+ * "what exactly did this lane read". Retain the bytes; carry the hash as identity.
22
+ *
23
+ * ARCHIVE-THEN-UNLINK, never unlink-then-hope. The archived bytes are re-read and
24
+ * re-hashed BEFORE the source is removed; a failed or unverifiable archive leaves
25
+ * the source in place and records `archived: false` with a reason.
26
+ *
27
+ * IT NEVER THROWS. This runs after `runAuditStepUnlocked` has applied the
28
+ * submission and after the lane files are marked applied — the RECORD arm of
29
+ * `514cd31c`, not the throw arm. A throw here would abort a fold whose ingest had
30
+ * already succeeded, which is strictly worse than a stated retention failure.
31
+ *
32
+ * `charter-packets/` is a retained-evidence directory with no `ARTIFACT_DEFINITIONS`
33
+ * row and no dependency-map node — the precedent `design-review-snapshots/` set.
34
+ * Nothing reads it as input, so it adds no DAG edge and cannot re-stale anything.
35
+ */
36
+ import { mkdir, readFile, unlink, writeFile } from "node:fs/promises";
37
+ import { join } from "node:path";
38
+ import { compareCodeUnits, hashContent, laneAssetsDir, readOptionalJsonFile, } from "audit-tools/shared";
39
+ import { charterExtractionPacketFilename } from "../cli/laneSubmissions.js";
40
+ /** The retained-evidence directory, beside `design-review-snapshots/`. */
41
+ export const CHARTER_PACKET_ARCHIVE_DIRNAME = "charter-packets";
42
+ /** Characters of the content digest that name an archived packet file. */
43
+ const ARCHIVE_NAME_DIGEST_CHARS = 12;
44
+ export function charterPacketArchiveDir(artifactsDir) {
45
+ return join(artifactsDir, CHARTER_PACKET_ARCHIVE_DIRNAME);
46
+ }
47
+ export function charterPacketIndexPath(artifactsDir) {
48
+ return join(charterPacketArchiveDir(artifactsDir), "index.json");
49
+ }
50
+ /**
51
+ * The archived packet's filename: `<kind>-<first 12 of sha256>.md`. Keyed by
52
+ * CONTENT, so a re-extraction that produced identical evidence reuses the same
53
+ * file (one copy of one packet) while a re-extraction that produced DIFFERENT
54
+ * evidence lands beside it instead of overwriting the record of what an earlier
55
+ * lane actually read.
56
+ */
57
+ export function charterPacketArchiveFilename(kind, sha256) {
58
+ return `${kind}-${sha256.slice(0, ARCHIVE_NAME_DIGEST_CHARS)}.md`;
59
+ }
60
+ /**
61
+ * Read the retention index. An ABSENT file, and a payload that is not an array,
62
+ * read as no rows. Anything else — a malformed body, a directory in its place,
63
+ * a permission failure — THROWS, deliberately: the caller that overwrites this
64
+ * file must be able to tell "there was nothing to accumulate" from "the record
65
+ * could not be read", and only the second must stop it from clobbering.
66
+ */
67
+ export async function readCharterPacketIndex(artifactsDir) {
68
+ const rows = await readOptionalJsonFile(charterPacketIndexPath(artifactsDir));
69
+ return Array.isArray(rows) ? rows : [];
70
+ }
71
+ /** Stable order: kind, then content digest. Never insertion or IO-completion order. */
72
+ function sortRows(rows) {
73
+ return [...rows].sort((a, b) => compareCodeUnits(a.kind, b.kind) ||
74
+ compareCodeUnits(a.sha256, b.sha256) ||
75
+ (a.archived === b.archived ? 0 : a.archived ? 1 : -1));
76
+ }
77
+ /**
78
+ * Archive each kind's evidence packet, then remove it from the emitter's read
79
+ * path. Returns the rows written for this pass (the index on disk accumulates
80
+ * across re-extractions). Absent packets are skipped: nothing was delivered, so
81
+ * there is nothing to retain and nothing to report.
82
+ */
83
+ export async function archiveCharterPackets(params) {
84
+ const now = params.now ?? (() => new Date().toISOString());
85
+ const archiveDir = charterPacketArchiveDir(params.artifactsDir);
86
+ const written = [];
87
+ for (const kind of params.kinds) {
88
+ const sourceFilename = charterExtractionPacketFilename(kind);
89
+ const sourcePath = join(laneAssetsDir(params.artifactsDir), sourceFilename);
90
+ let bytes;
91
+ try {
92
+ bytes = await readFile(sourcePath);
93
+ }
94
+ catch {
95
+ continue; // No packet on disk — nothing was delivered to retain.
96
+ }
97
+ const digest = hashContent(bytes);
98
+ const row = {
99
+ kind,
100
+ sha256: digest,
101
+ byte_length: bytes.byteLength,
102
+ archived_at: now(),
103
+ source_filename: sourceFilename,
104
+ archived: false,
105
+ };
106
+ try {
107
+ await mkdir(archiveDir, { recursive: true });
108
+ const archivePath = join(archiveDir, charterPacketArchiveFilename(kind, digest));
109
+ await writeFile(archivePath, bytes);
110
+ // Re-read and re-hash BEFORE unlinking: a write that reported success over
111
+ // truncated or unflushed bytes must not be paid for with the only copy.
112
+ const readBack = await readFile(archivePath);
113
+ if (hashContent(readBack) !== digest) {
114
+ row.reason = "archived bytes did not re-hash to the packet's digest";
115
+ }
116
+ else {
117
+ row.archived = true;
118
+ }
119
+ }
120
+ catch (error) {
121
+ row.reason = `archive write failed: ${error instanceof Error ? error.message : String(error)}`;
122
+ }
123
+ if (row.archived) {
124
+ // Only now is the content somewhere else (P25-f). A failed unlink leaves a
125
+ // verified archive plus a live source — recorded, never reported as clean.
126
+ try {
127
+ await unlink(sourcePath);
128
+ }
129
+ catch (error) {
130
+ row.archived = false;
131
+ row.reason = `packet archived but the lane-asset copy survived: ${error instanceof Error ? error.message : String(error)}`;
132
+ }
133
+ }
134
+ written.push(row);
135
+ }
136
+ if (written.length === 0)
137
+ return written;
138
+ // The WHOLE index phase — read, merge, write — is inside one guard. The READ
139
+ // was outside it, and that broke the never-throw contract on one platform
140
+ // only: `readCharterPacketIndex` wraps its own IO failure (`Failed to read
141
+ // <path>`) for anything it cannot classify as absent, and "absent" is decided
142
+ // by an ENOENT test, while a path that traverses a FILE reports ENOENT on
143
+ // win32 and ENOTDIR on POSIX. So the identical filesystem state read as an
144
+ // empty index here and as a rejected promise in Linux CI. A directory in
145
+ // place of the index file (EISDIR on both) escaped everywhere, as did a
146
+ // malformed index, whose parse error is not an absence either.
147
+ try {
148
+ // The index ACCUMULATES — a re-extraction adds what it retained and never
149
+ // overwrites the record of what an earlier lane read. Identical (kind,
150
+ // digest, outcome) rows collapse: same bytes, same packet, already recorded.
151
+ const existing = await readCharterPacketIndex(params.artifactsDir);
152
+ const seen = new Set(existing.map((r) => `${r.kind}|${r.sha256}|${r.archived}`));
153
+ const merged = [...existing];
154
+ for (const row of written) {
155
+ const key = `${row.kind}|${row.sha256}|${row.archived}`;
156
+ if (seen.has(key))
157
+ continue;
158
+ seen.add(key);
159
+ merged.push(row);
160
+ }
161
+ await mkdir(archiveDir, { recursive: true });
162
+ await writeFile(charterPacketIndexPath(params.artifactsDir), `${JSON.stringify(sortRows(merged), null, 2)}\n`, "utf8");
163
+ }
164
+ catch {
165
+ // The index is a convenience over the archived files themselves; failing to
166
+ // write it must not abort a fold whose ingest already succeeded. Nothing is
167
+ // written when the existing rows could not be READ either — the write is
168
+ // reached only through a successful read, so a failed read can never
169
+ // overwrite the accumulated record this index exists to keep.
170
+ }
171
+ return written;
172
+ }
173
+ //# sourceMappingURL=charterPacketArchive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"charterPacketArchive.js","sourceRoot":"","sources":["../../../src/audit/orchestrator/charterPacketArchive.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { CharterKind } from "audit-tools/shared";
1
+ import type { CharterKind, CharterPacketCoverage, CharterPacketManifest, PacketExcerpt } from "audit-tools/shared";
2
2
  import type { ArtifactBundle } from "../io/artifacts.js";
3
+ import { type NumberedSourceLine } from "../extractors/commentDecomposition.js";
3
4
  /**
4
5
  * The charter layer's read-set over the repo: consensus MEMBER files (every
5
6
  * channel is a projection of member content — comments for stated, organization
@@ -21,24 +22,41 @@ export declare function charterPacketReadSet(bundle: ArtifactBundle): {
21
22
  */
22
23
  export declare function memberDependencyEdgeLines(bundle: ArtifactBundle): string[];
23
24
  /**
24
- * Top-level declaration lines of a comment-stripped source: non-blank lines at
25
- * indent zero that do not merely close a scope. A deliberate language-neutral
26
- * HEURISTIC (a lead, not a parse): in brace- and indent-family languages alike,
27
- * a file's organization — imports, exports, signatures, class/type heads — sits
28
- * at column 0 while implementation bodies sit indented. Good enough to show the
29
- * structural channel what the file declares without leaking how it works.
25
+ * Top-level declaration lines of a masked source: non-blank lines at indent zero
26
+ * that do not merely close a scope. A deliberate language-neutral HEURISTIC (a
27
+ * lead, not a parse): in brace- and indent-family languages alike, a file's
28
+ * organization — imports, exports, signatures, class/type heads — sits at column
29
+ * 0 while implementation bodies sit indented. Good enough to show the structural
30
+ * channel what the file declares without leaking how it works.
31
+ *
32
+ * It takes NUMBERED lines and returns numbered lines, so a declaration keeps the
33
+ * line it actually occupies in its own file. Feeding it `stripCommentText` output
34
+ * would number every declaration against a collapsed view — a confidently wrong
35
+ * citation, which is worse than none.
30
36
  */
31
- export declare function topLevelDeclarationLines(strippedSource: string): string[];
37
+ export declare function topLevelDeclarationLines(lines: readonly NumberedSourceLine[]): NumberedSourceLine[];
32
38
  export interface MaterializeCharterPacketParams {
33
39
  root: string;
34
40
  bundle: ArtifactBundle;
35
41
  kind: CharterKind;
36
42
  }
43
+ export interface MaterializedCharterPacket {
44
+ markdown: string;
45
+ coverage: CharterPacketCoverage;
46
+ excerpts: PacketExcerpt[];
47
+ }
48
+ /**
49
+ * The machine header a lane copies its citations from, and — byte-identically —
50
+ * the lane asset the emit pass persists for the ingest pass. ONE function builds
51
+ * both, so what a lane reads and what a validator checks against cannot drift.
52
+ */
53
+ export declare function buildCharterPacketManifest(kind: CharterKind, excerpts: readonly PacketExcerpt[], coverage: CharterPacketCoverage): CharterPacketManifest;
37
54
  /**
38
- * Materialize ONE kind's evidence packet as markdown. Deterministic given the
39
- * bundle + file contents: stable path order, fixed budgets, explicit omitted
40
- * lists. Unreadable/oversized files are named in the omitted list (never
41
- * silently absent) so a lane can say "evidence missing" instead of guessing.
55
+ * Materialize ONE kind's evidence packet. Deterministic given the bundle + file
56
+ * contents: stable path order, every named candidate delivered in full, and an
57
+ * explicit per-class coverage record in which
58
+ * `delivered + omitted.length === named` for every class so a file that
59
+ * contributed nothing is NAMED rather than silently absent.
42
60
  */
43
- export declare function materializeCharterPacket(params: MaterializeCharterPacketParams): Promise<string>;
61
+ export declare function materializeCharterPacket(params: MaterializeCharterPacketParams): Promise<MaterializedCharterPacket>;
44
62
  //# sourceMappingURL=charterPackets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"charterPackets.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/charterPackets.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAYzD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG;IAC5D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAaA;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAa1E;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,CASzE;AA8DD,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,MAAM,CAAC,CAgFjB"}
1
+ {"version":3,"file":"charterPackets.d.ts","sourceRoot":"","sources":["../../../src/audit/orchestrator/charterPackets.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,WAAW,EACX,qBAAqB,EAErB,qBAAqB,EAGrB,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAM5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,uCAAuC,CAAC;AAE/C;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG;IAC5D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAaA;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAa1E;AAGD;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,kBAAkB,EAAE,GACnC,kBAAkB,EAAE,CAatB;AAsGD,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,qBAAqB,GAC9B,qBAAqB,CAcvB;AA0ED;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,yBAAyB,CAAC,CAsGpC"}