audit-tools 0.34.42 → 0.35.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 (396) hide show
  1. package/dist/audit/cli/args.d.ts +6 -0
  2. package/dist/audit/cli/args.d.ts.map +1 -1
  3. package/dist/audit/cli/args.js +21 -4
  4. package/dist/audit/cli/args.js.map +1 -1
  5. package/dist/audit/cli/auditStep.d.ts +6 -15
  6. package/dist/audit/cli/auditStep.d.ts.map +1 -1
  7. package/dist/audit/cli/auditStep.js +1 -1
  8. package/dist/audit/cli/auditStep.js.map +1 -1
  9. package/dist/audit/cli/dispatch/hostFanoutGate.d.ts +21 -61
  10. package/dist/audit/cli/dispatch/hostFanoutGate.d.ts.map +1 -1
  11. package/dist/audit/cli/dispatch/hostFanoutGate.js +18 -167
  12. package/dist/audit/cli/dispatch/hostFanoutGate.js.map +1 -1
  13. package/dist/audit/cli/dispatch/packetFilter.d.ts +2 -2
  14. package/dist/audit/cli/dispatch/packetFilter.d.ts.map +1 -1
  15. package/dist/audit/cli/dispatch/packetFilter.js +3 -1
  16. package/dist/audit/cli/dispatch/packetFilter.js.map +1 -1
  17. package/dist/audit/cli/dispatch/quotaPool.d.ts +2 -14
  18. package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
  19. package/dist/audit/cli/dispatch/quotaPool.js +16 -6
  20. package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
  21. package/dist/audit/cli/dispatch/tierRouting.d.ts +2 -2
  22. package/dist/audit/cli/dispatch/tokenUsageObservation.d.ts.map +1 -1
  23. package/dist/audit/cli/dispatch/tokenUsageObservation.js +10 -2
  24. package/dist/audit/cli/dispatch/tokenUsageObservation.js.map +1 -1
  25. package/dist/audit/cli/dispatch.d.ts +14 -3
  26. package/dist/audit/cli/dispatch.d.ts.map +1 -1
  27. package/dist/audit/cli/dispatch.js +87 -65
  28. package/dist/audit/cli/dispatch.js.map +1 -1
  29. package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
  30. package/dist/audit/cli/forceSynthesisCommand.js +9 -1
  31. package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
  32. package/dist/audit/cli/hybridDispatch.d.ts +4 -9
  33. package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
  34. package/dist/audit/cli/hybridDispatch.js +1 -1
  35. package/dist/audit/cli/hybridDispatch.js.map +1 -1
  36. package/dist/audit/cli/lineIndex.d.ts +2 -0
  37. package/dist/audit/cli/lineIndex.d.ts.map +1 -1
  38. package/dist/audit/cli/lineIndex.js +4 -0
  39. package/dist/audit/cli/lineIndex.js.map +1 -1
  40. package/dist/audit/cli/nextStepCommand.d.ts +0 -26
  41. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  42. package/dist/audit/cli/nextStepCommand.js +18 -360
  43. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  44. package/dist/audit/cli/nextStepHelpers.d.ts +5 -16
  45. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  46. package/dist/audit/cli/nextStepHelpers.js +27 -157
  47. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  48. package/dist/audit/cli/quotaCommand.d.ts.map +1 -1
  49. package/dist/audit/cli/quotaCommand.js +1 -5
  50. package/dist/audit/cli/quotaCommand.js.map +1 -1
  51. package/dist/audit/cli/reviewRun.d.ts.map +1 -1
  52. package/dist/audit/cli/reviewRun.js +58 -23
  53. package/dist/audit/cli/reviewRun.js.map +1 -1
  54. package/dist/audit/cli/rollingAuditDispatch.d.ts +1 -1
  55. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  56. package/dist/audit/cli/semanticReviewStep.js +35 -54
  57. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  58. package/dist/audit/cli/steps.d.ts +4 -4
  59. package/dist/audit/cli/steps.d.ts.map +1 -1
  60. package/dist/audit/cli/steps.js +0 -1
  61. package/dist/audit/cli/steps.js.map +1 -1
  62. package/dist/audit/cli/workPartitionRuntime.d.ts +11 -0
  63. package/dist/audit/cli/workPartitionRuntime.d.ts.map +1 -0
  64. package/dist/audit/cli/workPartitionRuntime.js +39 -0
  65. package/dist/audit/cli/workPartitionRuntime.js.map +1 -0
  66. package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
  67. package/dist/audit/extractors/analyzers/candidates.d.ts.map +1 -1
  68. package/dist/audit/extractors/analyzers/candidates.js +45 -54
  69. package/dist/audit/extractors/analyzers/candidates.js.map +1 -1
  70. package/dist/audit/io/artifacts.d.ts +1 -3
  71. package/dist/audit/io/artifacts.d.ts.map +1 -1
  72. package/dist/audit/io/artifacts.js +0 -3
  73. package/dist/audit/io/artifacts.js.map +1 -1
  74. package/dist/audit/orchestrator/advance.d.ts.map +1 -1
  75. package/dist/audit/orchestrator/advance.js +0 -35
  76. package/dist/audit/orchestrator/advance.js.map +1 -1
  77. package/dist/audit/orchestrator/advanceTypes.d.ts +4 -63
  78. package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
  79. package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
  80. package/dist/audit/orchestrator/executorRunners.js +9 -12
  81. package/dist/audit/orchestrator/executorRunners.js.map +1 -1
  82. package/dist/audit/orchestrator/executors.d.ts +2 -0
  83. package/dist/audit/orchestrator/executors.d.ts.map +1 -1
  84. package/dist/audit/orchestrator/executors.js +8 -7
  85. package/dist/audit/orchestrator/executors.js.map +1 -1
  86. package/dist/audit/orchestrator/hostInputPause.d.ts +1 -1
  87. package/dist/audit/orchestrator/hostInputPause.js +1 -1
  88. package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
  89. package/dist/audit/orchestrator/ingestionExecutors.js +4 -1
  90. package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
  91. package/dist/audit/orchestrator/intakeExecutors.d.ts +1 -65
  92. package/dist/audit/orchestrator/intakeExecutors.d.ts.map +1 -1
  93. package/dist/audit/orchestrator/intakeExecutors.js +3 -425
  94. package/dist/audit/orchestrator/intakeExecutors.js.map +1 -1
  95. package/dist/audit/orchestrator/nextStep.d.ts +0 -13
  96. package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
  97. package/dist/audit/orchestrator/nextStep.js +2 -9
  98. package/dist/audit/orchestrator/nextStep.js.map +1 -1
  99. package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
  100. package/dist/audit/orchestrator/planningExecutors.js +4 -1
  101. package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
  102. package/dist/audit/orchestrator/rollingDispatch.d.ts +1 -1
  103. package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
  104. package/dist/audit/orchestrator/rollingDispatch.js +5 -4
  105. package/dist/audit/orchestrator/rollingDispatch.js.map +1 -1
  106. package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
  107. package/dist/audit/orchestrator/staleness.js +3 -3
  108. package/dist/audit/orchestrator/staleness.js.map +1 -1
  109. package/dist/audit/orchestrator/state.d.ts +0 -39
  110. package/dist/audit/orchestrator/state.d.ts.map +1 -1
  111. package/dist/audit/orchestrator/state.js +3 -29
  112. package/dist/audit/orchestrator/state.js.map +1 -1
  113. package/dist/audit/orchestrator/synthesisExecutors.d.ts +8 -2
  114. package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
  115. package/dist/audit/orchestrator/synthesisExecutors.js +7 -5
  116. package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
  117. package/dist/audit/providers/index.d.ts +12 -6
  118. package/dist/audit/providers/index.d.ts.map +1 -1
  119. package/dist/audit/providers/index.js +24 -14
  120. package/dist/audit/providers/index.js.map +1 -1
  121. package/dist/audit/quota/hostLimits.d.ts +4 -6
  122. package/dist/audit/quota/hostLimits.d.ts.map +1 -1
  123. package/dist/audit/quota/hostLimits.js +5 -8
  124. package/dist/audit/quota/hostLimits.js.map +1 -1
  125. package/dist/audit/reporting/findingIdentity.d.ts +2 -2
  126. package/dist/audit/reporting/findingIdentity.js +2 -2
  127. package/dist/audit/reporting/synthesis.d.ts +7 -1
  128. package/dist/audit/reporting/synthesis.d.ts.map +1 -1
  129. package/dist/audit/reporting/synthesis.js +27 -7
  130. package/dist/audit/reporting/synthesis.js.map +1 -1
  131. package/dist/audit/reporting/workBlocks.d.ts +14 -3
  132. package/dist/audit/reporting/workBlocks.d.ts.map +1 -1
  133. package/dist/audit/reporting/workBlocks.js +163 -73
  134. package/dist/audit/reporting/workBlocks.js.map +1 -1
  135. package/dist/audit/types/activeDispatch.d.ts +8 -7
  136. package/dist/audit/types/activeDispatch.d.ts.map +1 -1
  137. package/dist/audit/types/auditState.d.ts +6 -6
  138. package/dist/audit/types/externalAnalyzer.d.ts +6 -6
  139. package/dist/audit/validation/auditResults.d.ts.map +1 -1
  140. package/dist/audit/validation/auditResults.js +6 -1
  141. package/dist/audit/validation/auditResults.js.map +1 -1
  142. package/dist/audit/validation/sessionConfig.d.ts.map +1 -1
  143. package/dist/audit/validation/sessionConfig.js +27 -29
  144. package/dist/audit/validation/sessionConfig.js.map +1 -1
  145. package/dist/remediate/contractPipeline/phaseCut.d.ts +8 -0
  146. package/dist/remediate/contractPipeline/phaseCut.d.ts.map +1 -1
  147. package/dist/remediate/contractPipeline/phaseCut.js +63 -0
  148. package/dist/remediate/contractPipeline/phaseCut.js.map +1 -1
  149. package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts.map +1 -1
  150. package/dist/remediate/contractPipeline/phaseCutArtifact.js +5 -3
  151. package/dist/remediate/contractPipeline/phaseCutArtifact.js.map +1 -1
  152. package/dist/remediate/phases/plan.d.ts.map +1 -1
  153. package/dist/remediate/phases/plan.js +35 -12
  154. package/dist/remediate/phases/plan.js.map +1 -1
  155. package/dist/remediate/providers/index.d.ts +12 -7
  156. package/dist/remediate/providers/index.d.ts.map +1 -1
  157. package/dist/remediate/providers/index.js +24 -15
  158. package/dist/remediate/providers/index.js.map +1 -1
  159. package/dist/remediate/quota/hostLimits.d.ts +4 -6
  160. package/dist/remediate/quota/hostLimits.d.ts.map +1 -1
  161. package/dist/remediate/quota/hostLimits.js +5 -8
  162. package/dist/remediate/quota/hostLimits.js.map +1 -1
  163. package/dist/remediate/steps/contractPipeline.d.ts +6 -2
  164. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  165. package/dist/remediate/steps/contractPipeline.js +90 -6
  166. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  167. package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
  168. package/dist/remediate/steps/contractPipelinePrompts.js +4 -2
  169. package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
  170. package/dist/remediate/steps/dispatch/marshal.d.ts +6 -0
  171. package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
  172. package/dist/remediate/steps/dispatch/marshal.js +16 -17
  173. package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
  174. package/dist/remediate/steps/dispatch/waveScheduling.d.ts +7 -15
  175. package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
  176. package/dist/remediate/steps/dispatch/waveScheduling.js +26 -19
  177. package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
  178. package/dist/remediate/steps/nextStep.d.ts +6 -8
  179. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  180. package/dist/remediate/steps/nextStep.js +264 -219
  181. package/dist/remediate/steps/nextStep.js.map +1 -1
  182. package/dist/remediate/steps/rollingSession.d.ts +2 -1
  183. package/dist/remediate/steps/rollingSession.d.ts.map +1 -1
  184. package/dist/remediate/steps/rollingSession.js +14 -8
  185. package/dist/remediate/steps/rollingSession.js.map +1 -1
  186. package/dist/remediate/steps/sessionConfigLoad.d.ts +3 -2
  187. package/dist/remediate/steps/sessionConfigLoad.d.ts.map +1 -1
  188. package/dist/remediate/steps/sessionConfigLoad.js +16 -13
  189. package/dist/remediate/steps/sessionConfigLoad.js.map +1 -1
  190. package/dist/remediate/validation/contractPipeline.d.ts +1 -1
  191. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  192. package/dist/remediate/validation/contractPipeline.js +7 -1
  193. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  194. package/dist/remediate/validation/contractPipelineGates.d.ts +8 -0
  195. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  196. package/dist/remediate/validation/contractPipelineGates.js +92 -8
  197. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  198. package/dist/shared/config/resolveSessionConfig.d.ts.map +1 -1
  199. package/dist/shared/config/resolveSessionConfig.js +6 -5
  200. package/dist/shared/config/resolveSessionConfig.js.map +1 -1
  201. package/dist/shared/decompose/workPartition.d.ts +66 -0
  202. package/dist/shared/decompose/workPartition.d.ts.map +1 -0
  203. package/dist/shared/decompose/workPartition.js +523 -0
  204. package/dist/shared/decompose/workPartition.js.map +1 -0
  205. package/dist/shared/dispatch/admissionLoop.d.ts +5 -44
  206. package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -1
  207. package/dist/shared/dispatch/admissionLoop.js +20 -82
  208. package/dist/shared/dispatch/admissionLoop.js.map +1 -1
  209. package/dist/shared/dispatch/coordinator.d.ts +5 -5
  210. package/dist/shared/dispatch/coordinator.d.ts.map +1 -1
  211. package/dist/shared/dispatch/coordinator.js +12 -11
  212. package/dist/shared/dispatch/coordinator.js.map +1 -1
  213. package/dist/shared/dispatch/costRank.d.ts +5 -155
  214. package/dist/shared/dispatch/costRank.d.ts.map +1 -1
  215. package/dist/shared/dispatch/costRank.js +2 -179
  216. package/dist/shared/dispatch/costRank.js.map +1 -1
  217. package/dist/shared/dispatch/dispatchQuotaContract.d.ts +37 -38
  218. package/dist/shared/dispatch/dispatchQuotaContract.d.ts.map +1 -1
  219. package/dist/shared/dispatch/dispatchQuotaContract.js +0 -1
  220. package/dist/shared/dispatch/dispatchQuotaContract.js.map +1 -1
  221. package/dist/shared/dispatch/hybridDispatch.d.ts +6 -2
  222. package/dist/shared/dispatch/hybridDispatch.d.ts.map +1 -1
  223. package/dist/shared/dispatch/hybridDispatch.js +1 -1
  224. package/dist/shared/dispatch/hybridDispatch.js.map +1 -1
  225. package/dist/shared/dispatch/rollingDispatch.d.ts +4 -4
  226. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  227. package/dist/shared/dispatch/rollingDispatch.js +13 -11
  228. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  229. package/dist/shared/dispatch/unifiedRolling.d.ts +2 -2
  230. package/dist/shared/dispatch/unifiedRolling.d.ts.map +1 -1
  231. package/dist/shared/dispatch/unifiedRolling.js +1 -1
  232. package/dist/shared/dispatch/unifiedRolling.js.map +1 -1
  233. package/dist/shared/engine/obligationEngine.d.ts +2 -2
  234. package/dist/shared/friction/stepBoundaryCapture.d.ts +5 -59
  235. package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -1
  236. package/dist/shared/friction/stepBoundaryCapture.js +11 -107
  237. package/dist/shared/friction/stepBoundaryCapture.js.map +1 -1
  238. package/dist/shared/index.d.ts +16 -17
  239. package/dist/shared/index.d.ts.map +1 -1
  240. package/dist/shared/index.js +11 -14
  241. package/dist/shared/index.js.map +1 -1
  242. package/dist/shared/io/stateDir.d.ts +2 -2
  243. package/dist/shared/io/stateDir.js +2 -2
  244. package/dist/shared/providers/agyProvider.d.ts.map +1 -1
  245. package/dist/shared/providers/agyProvider.js +12 -26
  246. package/dist/shared/providers/agyProvider.js.map +1 -1
  247. package/dist/shared/providers/auditorSources.d.ts +10 -84
  248. package/dist/shared/providers/auditorSources.d.ts.map +1 -1
  249. package/dist/shared/providers/auditorSources.js +42 -267
  250. package/dist/shared/providers/auditorSources.js.map +1 -1
  251. package/dist/shared/providers/dispatchExclusion.d.ts +22 -0
  252. package/dist/shared/providers/dispatchExclusion.d.ts.map +1 -0
  253. package/dist/shared/providers/dispatchExclusion.js +23 -0
  254. package/dist/shared/providers/dispatchExclusion.js.map +1 -0
  255. package/dist/shared/providers/identity.d.ts +2 -66
  256. package/dist/shared/providers/identity.d.ts.map +1 -1
  257. package/dist/shared/providers/identity.js +2 -72
  258. package/dist/shared/providers/identity.js.map +1 -1
  259. package/dist/shared/providers/orchestratorBindings.d.ts +42 -0
  260. package/dist/shared/providers/orchestratorBindings.d.ts.map +1 -0
  261. package/dist/shared/providers/orchestratorBindings.js +30 -0
  262. package/dist/shared/providers/orchestratorBindings.js.map +1 -0
  263. package/dist/shared/providers/providerFactory.d.ts +0 -3
  264. package/dist/shared/providers/providerFactory.d.ts.map +1 -1
  265. package/dist/shared/providers/providerFactory.js +8 -37
  266. package/dist/shared/providers/providerFactory.js.map +1 -1
  267. package/dist/shared/providers/providerPathGuard.d.ts +3 -3
  268. package/dist/shared/providers/providerPathGuard.d.ts.map +1 -1
  269. package/dist/shared/providers/providerPathGuard.js +24 -27
  270. package/dist/shared/providers/providerPathGuard.js.map +1 -1
  271. package/dist/shared/quota/apiPool.d.ts +19 -22
  272. package/dist/shared/quota/apiPool.d.ts.map +1 -1
  273. package/dist/shared/quota/apiPool.js +66 -47
  274. package/dist/shared/quota/apiPool.js.map +1 -1
  275. package/dist/shared/quota/capacity.d.ts +29 -24
  276. package/dist/shared/quota/capacity.d.ts.map +1 -1
  277. package/dist/shared/quota/capacity.js +30 -4
  278. package/dist/shared/quota/capacity.js.map +1 -1
  279. package/dist/shared/quota/codexHostConfig.d.ts +6 -13
  280. package/dist/shared/quota/codexHostConfig.d.ts.map +1 -1
  281. package/dist/shared/quota/codexHostConfig.js +8 -14
  282. package/dist/shared/quota/codexHostConfig.js.map +1 -1
  283. package/dist/shared/quota/fileLock.d.ts +7 -0
  284. package/dist/shared/quota/fileLock.d.ts.map +1 -1
  285. package/dist/shared/quota/fileLock.js +32 -4
  286. package/dist/shared/quota/fileLock.js.map +1 -1
  287. package/dist/shared/quota/hostLimits.d.ts +19 -1
  288. package/dist/shared/quota/hostLimits.d.ts.map +1 -1
  289. package/dist/shared/quota/hostLimits.js +21 -11
  290. package/dist/shared/quota/hostLimits.js.map +1 -1
  291. package/dist/shared/quota/hostPool.d.ts +1 -1
  292. package/dist/shared/quota/hostPool.js +2 -2
  293. package/dist/shared/quota/hostPool.js.map +1 -1
  294. package/dist/shared/quota/limits.d.ts +6 -9
  295. package/dist/shared/quota/limits.d.ts.map +1 -1
  296. package/dist/shared/quota/limits.js +67 -50
  297. package/dist/shared/quota/limits.js.map +1 -1
  298. package/dist/shared/quota/scheduler.d.ts +2 -3
  299. package/dist/shared/quota/scheduler.d.ts.map +1 -1
  300. package/dist/shared/quota/scheduler.js +3 -12
  301. package/dist/shared/quota/scheduler.js.map +1 -1
  302. package/dist/shared/quota/types.d.ts +10 -10
  303. package/dist/shared/quota/types.d.ts.map +1 -1
  304. package/dist/shared/quota/types.js +4 -7
  305. package/dist/shared/quota/types.js.map +1 -1
  306. package/dist/shared/repair/brokeredDispatch.d.ts.map +1 -1
  307. package/dist/shared/repair/brokeredDispatch.js +3 -0
  308. package/dist/shared/repair/brokeredDispatch.js.map +1 -1
  309. package/dist/shared/reporting/auditDeliverable.d.ts.map +1 -1
  310. package/dist/shared/reporting/auditDeliverable.js +1 -0
  311. package/dist/shared/reporting/auditDeliverable.js.map +1 -1
  312. package/dist/shared/rolling/pausedState.d.ts +7 -7
  313. package/dist/shared/rolling/pausedState.js +3 -3
  314. package/dist/shared/tokens.d.ts +2 -5
  315. package/dist/shared/tokens.d.ts.map +1 -1
  316. package/dist/shared/tokens.js +15 -15
  317. package/dist/shared/tokens.js.map +1 -1
  318. package/dist/shared/types/auditorDescriptor.d.ts +3 -2
  319. package/dist/shared/types/auditorDescriptor.d.ts.map +1 -1
  320. package/dist/shared/types/auditorDescriptor.js +3 -2
  321. package/dist/shared/types/auditorDescriptor.js.map +1 -1
  322. package/dist/shared/types/finding.d.ts +80 -0
  323. package/dist/shared/types/finding.d.ts.map +1 -1
  324. package/dist/shared/types/finding.js +17 -0
  325. package/dist/shared/types/finding.js.map +1 -1
  326. package/dist/shared/types/sessionConfig.d.ts +8 -8
  327. package/dist/shared/types/sessionConfig.d.ts.map +1 -1
  328. package/dist/shared/types/sessionConfig.js +1 -1
  329. package/dist/shared/validation/findingsReport.d.ts.map +1 -1
  330. package/dist/shared/validation/findingsReport.js +3 -0
  331. package/dist/shared/validation/findingsReport.js.map +1 -1
  332. package/docs/audit-pkg/development.md +3 -2
  333. package/docs/audit-pkg/operator-guide.md +13 -106
  334. package/docs/audit-pkg/product.md +8 -7
  335. package/docs/audit-pkg/release.md +38 -29
  336. package/opencode.json +2 -2
  337. package/package.json +6 -4
  338. package/skills/audit-code/SKILL.md +2 -1
  339. package/skills/audit-code/audit-code.prompt.md +4 -3
  340. package/skills/remediate-code/remediate-code.prompt.md +2 -1
  341. package/dist/audit/cli/providerConfirmationStep.d.ts +0 -106
  342. package/dist/audit/cli/providerConfirmationStep.d.ts.map +0 -1
  343. package/dist/audit/cli/providerConfirmationStep.js +0 -396
  344. package/dist/audit/cli/providerConfirmationStep.js.map +0 -1
  345. package/dist/audit/orchestrator/providerConfirmation.d.ts +0 -25
  346. package/dist/audit/orchestrator/providerConfirmation.d.ts.map +0 -1
  347. package/dist/audit/orchestrator/providerConfirmation.js +0 -60
  348. package/dist/audit/orchestrator/providerConfirmation.js.map +0 -1
  349. package/dist/audit/providers/agyProvider.d.ts +0 -11
  350. package/dist/audit/providers/agyProvider.d.ts.map +0 -1
  351. package/dist/audit/providers/agyProvider.js +0 -18
  352. package/dist/audit/providers/agyProvider.js.map +0 -1
  353. package/dist/audit/providers/claudeCodeProvider.d.ts +0 -11
  354. package/dist/audit/providers/claudeCodeProvider.d.ts.map +0 -1
  355. package/dist/audit/providers/claudeCodeProvider.js +0 -23
  356. package/dist/audit/providers/claudeCodeProvider.js.map +0 -1
  357. package/dist/audit/providers/claudeWorkerProvider.d.ts +0 -10
  358. package/dist/audit/providers/claudeWorkerProvider.d.ts.map +0 -1
  359. package/dist/audit/providers/claudeWorkerProvider.js +0 -15
  360. package/dist/audit/providers/claudeWorkerProvider.js.map +0 -1
  361. package/dist/audit/providers/opencodeProvider.d.ts +0 -2
  362. package/dist/audit/providers/opencodeProvider.d.ts.map +0 -1
  363. package/dist/audit/providers/opencodeProvider.js +0 -7
  364. package/dist/audit/providers/opencodeProvider.js.map +0 -1
  365. package/dist/remediate/providers/agyProvider.d.ts +0 -12
  366. package/dist/remediate/providers/agyProvider.d.ts.map +0 -1
  367. package/dist/remediate/providers/agyProvider.js +0 -19
  368. package/dist/remediate/providers/agyProvider.js.map +0 -1
  369. package/dist/remediate/providers/claudeCodeProvider.d.ts +0 -12
  370. package/dist/remediate/providers/claudeCodeProvider.d.ts.map +0 -1
  371. package/dist/remediate/providers/claudeCodeProvider.js +0 -24
  372. package/dist/remediate/providers/claudeCodeProvider.js.map +0 -1
  373. package/dist/remediate/providers/claudeWorkerProvider.d.ts +0 -11
  374. package/dist/remediate/providers/claudeWorkerProvider.d.ts.map +0 -1
  375. package/dist/remediate/providers/claudeWorkerProvider.js +0 -16
  376. package/dist/remediate/providers/claudeWorkerProvider.js.map +0 -1
  377. package/dist/remediate/providers/opencodeProvider.d.ts +0 -2
  378. package/dist/remediate/providers/opencodeProvider.d.ts.map +0 -1
  379. package/dist/remediate/providers/opencodeProvider.js +0 -7
  380. package/dist/remediate/providers/opencodeProvider.js.map +0 -1
  381. package/dist/shared/providers/providerConfirmation.d.ts +0 -141
  382. package/dist/shared/providers/providerConfirmation.d.ts.map +0 -1
  383. package/dist/shared/providers/providerConfirmation.js +0 -420
  384. package/dist/shared/providers/providerConfirmation.js.map +0 -1
  385. package/dist/shared/providers/proxyCatalog.d.ts +0 -158
  386. package/dist/shared/providers/proxyCatalog.d.ts.map +0 -1
  387. package/dist/shared/providers/proxyCatalog.js +0 -658
  388. package/dist/shared/providers/proxyCatalog.js.map +0 -1
  389. package/dist/shared/providers/sharedProviderConfirmation.d.ts +0 -802
  390. package/dist/shared/providers/sharedProviderConfirmation.d.ts.map +0 -1
  391. package/dist/shared/providers/sharedProviderConfirmation.js +0 -1865
  392. package/dist/shared/providers/sharedProviderConfirmation.js.map +0 -1
  393. package/dist/shared/types/providerConfirmation.d.ts +0 -334
  394. package/dist/shared/types/providerConfirmation.d.ts.map +0 -1
  395. package/dist/shared/types/providerConfirmation.js +0 -35
  396. package/dist/shared/types/providerConfirmation.js.map +0 -1
@@ -181,119 +181,26 @@ Use `ui_mode: "visible"` when debugging provider stdout/stderr. Use
181
181
  `subprocess-template` or `vscode-task` only when you have a reliable launcher
182
182
  bridge.
183
183
 
184
- ## Gate-0 provider confirmation
184
+ ## Relay-backed dispatch sources
185
185
 
186
- The first thing an interactive audit run does — before it reads the repo — is
187
- pause on a **provider confirmation** step (Gate-0). The tool auto-detects the
188
- provider pool it can dispatch to, prices each candidate, and proposes a cost
189
- ordering (cheapest capable first). You confirm, reorder, or amend it. The
190
- mechanism behind the ordering is documented in
191
- [`spec/dispatch-quota.md`](../../spec/dispatch-quota.md); this section is
192
- only how to respond to the step.
193
-
194
- ### When it fires
195
-
196
- - On the conversation/CLI path (`audit-code next-step`) it fires on **every** run,
197
- even when only one — or zero — providers were auto-detected, so you can reorder,
198
- exclude, self-report your own model roster, or add a provider that discovery missed.
199
- - Headless (`audit-code advance-audit`, no interactive host) it auto-completes with
200
- the tool's price-ascending suggestion and never pauses.
201
-
202
- ### How to respond
203
-
204
- The step prints the suggested pool as a priced table and asks you to write your
205
- decision to:
206
-
207
- ```text
208
- .audit-tools/audit/provider-confirmation.input.json
209
- ```
210
-
211
- **Writing that file is what lets the run proceed** — its presence is the "operator
212
- has acted" signal. To accept the suggestion verbatim, write just the version:
213
-
214
- ```json
215
- { "schema_version": "provider-confirmation-input/v1" }
216
- ```
217
-
218
- Every other field is optional:
186
+ Audit-tools does not ask you to confirm provider/model order. Concrete candidates,
187
+ ranking, cooldowns, and failover belong to the external broker. A machine-level
188
+ `sources-declared.json` should expose only provider-neutral intents, for example:
219
189
 
220
190
  ```json
221
191
  {
222
- "schema_version": "provider-confirmation-input/v1",
223
- "cost_order": ["<provider-or-model-key>", "..."],
224
- "exclude": ["transport:<name>", "transport:<name>/<model>", "service:<name>", "host:<endpoint-host>"],
225
- "include": ["<self-spawn-blocked provider to opt back in>"],
226
- "host_models": [{ "model_id": "<your model id>", "tier": "frontier|capable|fast" }]
192
+ "sources": [
193
+ { "id": "relay-fast", "transport": "openai-compatible", "endpoint": "http://127.0.0.1:8791/v1", "model": "pool/fast", "no_auth": true, "worker_kind": "single_shot", "capability_rank": 2 },
194
+ { "id": "relay-coding", "transport": "openai-compatible", "endpoint": "http://127.0.0.1:8791/v1", "model": "pool/coding", "no_auth": true, "worker_kind": "single_shot", "capability_rank": 1 },
195
+ { "id": "relay-reasoning", "transport": "openai-compatible", "endpoint": "http://127.0.0.1:8791/v1", "model": "pool/reasoning", "no_auth": true, "worker_kind": "single_shot", "capability_rank": 0 }
196
+ ]
227
197
  }
228
198
  ```
229
199
 
230
- - `cost_order` — the confirmed ordering, cheapest first, as a list of keys. A key
231
- is either a **provider name** (as shown in the table) or a **host `model_id`** you
232
- report in `host_models`. Keys you omit keep their suggested relative order,
233
- appended after the ones you name; unrecognized keys are ignored. Omit it to accept
234
- the suggested order.
235
- - `exclude` — drops backends from the dispatchable pool. Each entry names its AXIS
236
- explicitly, so the same string means the same thing on every machine. The grammar
237
- is defined in [`spec/backend-identity-axes.md`](../../spec/backend-identity-axes.md)
238
- → *The exclusion grammar: axis-explicit*; what follows is how to use it, and that
239
- spec wins on any disagreement:
240
- - `transport:openai-compatible/gpt-oss-120b` — that **model** of that transport,
241
- leaving its other models routable. This is the granularity to reach for: you are
242
- confirming model choices, so ruling out one model of a multi-model backend
243
- should not rule out the backend.
244
- - `transport:codex` — the whole **transport**, every model of it.
245
- - `service:nim` — every transport reaching that **service**, including ones
246
- discovered later.
247
- - `host:integrate.api.nvidia.com` (or `host:localhost:8000` to pin a port) — every
248
- source at that **endpoint host**.
249
-
250
- The older prefix-less forms (`codex`, `openai-compatible:gpt-oss-120b`,
251
- `integrate.api.nvidia.com`) are still accepted and migrated to the axis form on
252
- read, so saved rules keep working. A rule naming an axis that does not exist —
253
- `model:gpt-oss-120b` — is REFUSED when you submit it, rather than being silently
254
- reinterpreted as a host rule that matches nothing.
255
-
256
- A rule is a durable decision, not a reachability claim: it keeps applying on a
257
- later run and on a different machine, whatever is reachable there. A rule that
258
- matches nothing is legitimate and stays inert — the tool authors one itself every
259
- run — but the confirmation summary lists any of YOUR rules that matched nothing,
260
- as an advisory, so a model-name typo is visible without blocking anything.
261
- - `include` — opts a self-spawn-blocked provider back in. A CLI provider detected
262
- while you are already inside a session of that same agent (`claude-code` under
263
- `CLAUDECODE`, `codex` under `CODEX`) is excluded by default so the run can't
264
- self-spawn a fresh agent; naming it here overrides that. Advanced — normally leave
265
- it excluded.
266
- - `host_models` — reports your own (the host agent's) model roster so those tiers
267
- are priced from the models.dev dataset and orderable here, not just at dispatch.
268
-
269
- You supply only ordering intent plus your model roster. The tool owns the prices
270
- and the capability flags — you never hand-author those. If a
271
- provider you use isn't listed, it wasn't auto-detected: it rides the per-auditor
272
- `--auditor <json>` descriptor (an OpenAI-compatible endpoint or CLI backend as a
273
- `sources[]` entry, resolved from your environment — NOT `session-config.json`, which
274
- no longer accepts dispatch config; see `spec/unified-dispatch-worker-model.md`), then
275
- re-run the step.
276
-
277
- Once the input is written, re-run the continue command the step printed
278
- (`audit-code next-step`). The tool consumes the input and promotes it into both
279
- canonical artifacts: the per-tool `provider_confirmation.json` seam and the shared
280
- `.audit-tools/provider-confirmation.json`.
281
-
282
- ### The confirmed pool persists — you aren't re-prompted
283
-
284
- The shared `.audit-tools/provider-confirmation.json` is written once and reused for
285
- the rest of the audit→remediate session. A later step, and a subsequent
286
- `remediate-code` run against the same repo, read and honor that pool without
287
- prompting again — `remediate-code` has no confirmation step of its own; it consumes
288
- the audit-side pool. You are re-prompted only when a backend you never confirmed
289
- becomes reachable — and then the prompt leads with just that delta, not the whole
290
- table again. A backend that has *disappeared* never re-prompts: it simply drops out
291
- of reach, which needs no decision from you. On an unattended run (`autonomous_mode`)
292
- there is nobody to ask, so a newly-reachable backend is **excluded rather than used**
293
- and a `newly_reachable_backend` friction event records why — confirm or exclude it at
294
- your next attended gate. If the file is absent
295
- (for example a standalone remediate run with no prior audit), the run resolves its
296
- provider independently — absence is never an error.
200
+ The relay owns the concrete model lists behind those pool names. Audit-tools still
201
+ enforces packet size/context fit, capability floors, quota/headroom, concurrency,
202
+ result validation, and the local self-spawn guard. No provider-order input or
203
+ provider-confirmation artifact is created.
297
204
 
298
205
  ## Model selection
299
206
 
@@ -38,17 +38,18 @@ The intended workflow is:
38
38
 
39
39
  1. The user invokes `/audit-code`.
40
40
  2. The prompt runs `audit-code ensure --quiet`.
41
- 3. The conversation confirms (or accepts by default) the discovered provider
42
- pool and cost ordering (`provider_confirmation`) — the pipeline's first
43
- gated step.
44
- 4. Deterministic backend steps build or refresh artifacts.
45
- 5. The active conversation dispatches bounded review packets when semantic
41
+ 3. Deterministic backend steps build or refresh artifacts.
42
+ 4. The active conversation dispatches bounded review packets when semantic
46
43
  judgment is required.
47
- 6. Packet workers submit validated `AuditResult` objects through backend-owned
44
+ 5. Packet workers submit validated `AuditResult` objects through backend-owned
48
45
  commands.
49
- 7. The backend ingests results, performs selective deepening and runtime
46
+ 6. The backend ingests results, performs selective deepening and runtime
50
47
  validation when needed, and writes the final `audit-report.md`.
51
48
 
49
+ Concrete provider/model ordering and failover belong to the external dispatch
50
+ broker. The audit workflow consumes provider-neutral pool intents and never asks
51
+ the user to confirm a provider roster.
52
+
52
53
  Semantic review belongs to the active host conversation by default. The backend
53
54
  provider adapters — the authoritative current roster is `PROVIDER_NAMES`
54
55
  (`src/shared/types/sessionConfig.ts`) — are compatibility bridges for
@@ -9,30 +9,41 @@ npm ci
9
9
  npm run verify:release
10
10
  ```
11
11
 
12
- `verify:release` covers:
12
+ `verify:release` runs `verify:checks` first, then the full vitest suite, then both
13
+ linked-install smokes. The `verify:checks` half is generated from `package.json`
14
+ below — in its real order, so this list cannot drift from the gate:
15
+
16
+ <!-- BEGIN gate-enumeration — generated from package.json by scripts/check-gate-enumeration.mjs -->
13
17
 
14
- - TypeScript typecheck (`build`)
15
- - test-tree typecheck (`check:tests`)
16
18
  - raw control-byte gate (`check:control-bytes`)
17
19
  - version-gate scan (`check:version-gates`)
20
+ - guard wiring/reach reconciliation (`check:guard-reach`)
18
21
  - loop-core pattern-list drift check (`check:loop-core-patterns`)
19
22
  - constitutional-doc-path parity (`check:constitutional-doc-paths`)
20
- - backlog size-budget gate (`check:backlog-budget`)
21
- - backlog status-token gate (`check:backlog-status`)
22
- - backlog seek-index parity (`check:backlog-index`)
23
- - memory-citation check (`check:memory-citations`)
24
- - README philosophy-brief parity (`check:philosophy-brief`)
25
- - nightly scheduler-prompt parity (`check:nightly-routine-prompt`)
26
- - HANDOFF roadmap parity (`check:handoff-roadmap`)
27
23
  - dead-code export gate (`check:deadcode`)
28
24
  - doc-manifest reconciliation gate (`check:doc-manifest`)
29
25
  - relative-link resolution gate (`check:doc-links`)
30
26
  - backticked repo-path citation gate (`check:doc-code-citations`)
27
+ - gate-enumeration parity (this list) (`check:gate-enumeration`)
28
+ - README philosophy-brief parity (`check:philosophy-brief`)
29
+ - nightly scheduler-prompt parity (`check:nightly-routine-prompt`)
30
+ - HANDOFF roadmap parity (`check:handoff-roadmap`)
31
+ - backlog seek-index parity (`check:backlog-index`)
32
+ - memory-citation check (`check:memory-citations`)
33
+ - backlog size-budget gate (`check:backlog-budget`)
34
+ - backlog status-token gate (`check:backlog-status`)
35
+ - test-tree typecheck (`check:tests`)
36
+ - TypeScript typecheck (`build`)
37
+ - host-install verification (audit) (`verify:hosts`)
38
+ - host-install verification (remediate) (`verify:remediate-hosts`)
31
39
  - single-tarball pack smoke (`pack:smoke`)
32
- - full automated test suite (`vitest run`)
33
- - host-install verification for both bins (`verify:hosts`, `verify:remediate-hosts`)
34
- - packaged-install smoke coverage for both bins (`smoke:packaged-audit-code`, `smoke:packaged-remediate-code`)
35
- - linked-install smoke coverage for both bins (`smoke:linked-audit-code`, `smoke:linked-remediate-code`)
40
+ - packaged-install smoke (audit-code) (`smoke:packaged-audit-code`)
41
+ - packaged-install smoke (remediate-code) (`smoke:packaged-remediate-code`)
42
+
43
+ <!-- END gate-enumeration -->
44
+
45
+ …followed by the full automated test suite (`vitest`), then
46
+ `smoke:linked-audit-code` and `smoke:linked-remediate-code`.
36
47
 
37
48
  For live child-process output while debugging smoke tests:
38
49
 
@@ -61,21 +72,19 @@ no-drift guard does not see that, so a human runs these rows at release. A faile
61
72
  row becomes a backlog item.
62
73
 
63
74
  Codex and `agy` are headless CLIs, so they are correctly absent from the GUI-host
64
- table below and their live dispatch is automated instead of listed here — see the
65
- `RUN_PROVIDER_MATRIX_E2E=1`-gated provider-matrix e2e in
66
- `tests/audit/provider-matrix-dispatch-e2e.test.ts` (supersedes the former
67
- per-provider `RUN_CODEX_E2E=1` gate). Run it at release with a live backend
68
- present:
69
-
70
- ```
71
- RUN_PROVIDER_MATRIX_E2E=1 npx vitest run tests/audit/provider-matrix-dispatch-e2e.test.ts
72
- ```
73
-
74
- Coverage gap: that e2e currently exercises only `codex` / `opencode` /
75
- `openai-compatible`. `agy` and `claude-worker` have **no live-dispatch e2e coverage**
76
- yet — until a row is added for each, their real dispatch is unverified by any
77
- automated gate (`claude-worker`'s existing test, `tests/shared/claude-worker-provider.test.ts`,
78
- is a local-mock-HTTP-server unit test of transport/argv/env, not a live-dispatch e2e).
75
+ table below. The `RUN_PROVIDER_MATRIX_E2E=1`-gated provider-matrix live e2e (and
76
+ its `runInProcessAuditDispatch` driver) was **retired with the dispatch
77
+ inversion**: the host and llm-relay own concrete provider/model routing now, so
78
+ audit-tools no longer selects or instantiates those backends for host review and
79
+ the per-backend live round-trip it exercised is no longer this package's seam.
80
+
81
+ Coverage gap, stated so it is not mistaken for coverage: **no headless backend has
82
+ live-dispatch e2e coverage** — worker-side dispatch through a configured source
83
+ (openai-compatible / codex / agy / `claude-worker`) is verified by unit tests over
84
+ local stubs only (e.g. `tests/shared/claude-worker-provider.test.ts` is a
85
+ local-mock-HTTP-server unit test of transport/argv/env, and
86
+ `tests/remediate/hybrid-decision-point-pools.test.ts` drives a local stub
87
+ endpoint), never by a gate against a live backend.
79
88
 
80
89
  ### How to run a row
81
90
 
package/opencode.json CHANGED
@@ -8,9 +8,9 @@
8
8
  "grep": "allow",
9
9
  "edit": {
10
10
  "*": "ask",
11
- ".audit-code/**": "allow",
12
- ".audit-tools/**": "allow",
13
11
  ".remediate-code/**": "allow",
12
+ ".audit-tools/**": "allow",
13
+ ".audit-code/**": "allow",
14
14
  ".audit-artifacts/**": "allow",
15
15
  "audit-report.md": "allow"
16
16
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "audit-tools",
3
- "version": "0.34.42",
3
+ "version": "0.35.1",
4
4
  "private": false,
5
5
  "license": "ISC",
6
6
  "description": "Portable hybrid code auditing + remediation orchestrators for arbitrary repositories.",
@@ -42,12 +42,13 @@
42
42
  "build": "tsc -p tsconfig.json && node scripts/shared/copy-data-assets.mjs",
43
43
  "check": "tsc -p tsconfig.json --noEmit",
44
44
  "check:tests": "tsc -p tsconfig.test.json",
45
- "nightly:review": "node scripts/nightly/serve.mjs",
45
+ "nightly:inbox": "node scripts/nightly/render-inbox.mjs",
46
+ "nightly:ingest": "node scripts/nightly/ingest-answers.mjs",
46
47
  "test:doc-contract": "node scripts/shared/run-vitest-gate.mjs tests/audit/release-contract.test.ts tests/audit/file-lock-doc-sync.test.ts tests/audit/host-asset-renderer-drift.test.ts",
47
48
  "test": "npm run build && node scripts/shared/run-vitest-gate.mjs",
48
49
  "test:single": "npm run build && node scripts/shared/run-vitest-gate.mjs",
49
50
  "verify:guards": "node scripts/shared/run-vitest-gate.mjs --retry=2 --exclude \"**/audit-code-completion.test.ts\" --exclude \"**/audit-code-wrapper.test.ts\" --exclude \"**/audit/next-step.test.ts\" --exclude \"**/seam-host-only-next-step.test.ts\" --exclude \"**/*-e2e.test.*\" --exclude \"**/next-step-implement-dispatch.test.ts\" --exclude \"**/next-step-pipeline-dispatch.test.ts\"",
50
- "verify:checks": "node scripts/shared/profile-run.mjs verify-checks check:control-bytes check:version-gates check:guard-reach check:loop-core-patterns check:constitutional-doc-paths check:deadcode check:doc-manifest check:doc-links check:doc-code-citations check:philosophy-brief check:nightly-routine-prompt check:handoff-roadmap check:backlog-index check:memory-citations check:backlog-budget check:backlog-status check:tests build verify:hosts verify:remediate-hosts pack:smoke smoke:packaged-audit-code smoke:packaged-remediate-code",
51
+ "verify:checks": "node scripts/shared/profile-run.mjs verify-checks check:control-bytes check:version-gates check:guard-reach check:loop-core-patterns check:constitutional-doc-paths check:deadcode check:doc-manifest check:doc-links check:doc-code-citations check:gate-enumeration check:philosophy-brief check:nightly-routine-prompt check:handoff-roadmap check:backlog-index check:memory-citations check:backlog-budget check:backlog-status check:tests build verify:hosts verify:remediate-hosts pack:smoke smoke:packaged-audit-code smoke:packaged-remediate-code",
51
52
  "verify:release": "npm run verify:checks && node scripts/shared/run-vitest-gate.mjs && npm run smoke:linked-audit-code && npm run smoke:linked-remediate-code",
52
53
  "check:control-bytes": "node scripts/check-control-bytes.mjs",
53
54
  "check:guard-reach": "node scripts/check-guard-reach.mjs",
@@ -84,7 +85,8 @@
84
85
  "check:handoff-roadmap": "node scripts/shared/generate-handoff-roadmap.mjs --check",
85
86
  "check:backlog-status": "node scripts/check-backlog-status-tokens.mjs",
86
87
  "check:backlog-index": "node scripts/shared/generate-backlog-index.mjs --check",
87
- "test:rebaseline-flakes": "node scripts/shared/rebaseline-flakes.mjs"
88
+ "test:rebaseline-flakes": "node scripts/shared/rebaseline-flakes.mjs",
89
+ "check:gate-enumeration": "node scripts/check-gate-enumeration.mjs"
88
90
  },
89
91
  "engines": {
90
92
  "node": ">=20"
@@ -63,7 +63,8 @@ Bounded steps are a backend implementation detail, not the intended user experie
63
63
  After `audit-code ensure --quiet` bootstraps the repository, ask the backend for
64
64
  exactly one next step. This is also the **capability handshake**: report what you
65
65
  can dispatch to *right now* on every `next-step` call so the backend sizes review
66
- packets to your real model instead of a conservative 32k floor.
66
+ packets against reported or configured limits. When no authoritative limits are
67
+ available, capacity remains unknown and packet sizing pauses.
67
68
 
68
69
  The whole handshake is a single `--auditor <json>` flag: one object with a `self`
69
70
  field describing the model you drive.
@@ -26,9 +26,10 @@ node audit-code.mjs ensure --quiet
26
26
 
27
27
  Then ask the backend for exactly one next step. This is also the **capability
28
28
  handshake**: report what you can dispatch to *right now* on every `next-step`
29
- call as a single `--auditor <json>` flag, so the backend sizes review packets to
30
- your real model instead of a conservative 32k floor. The JSON is one object with
31
- a `self` field describing the model you drive; report inside `self`:
29
+ call as a single `--auditor <json>` flag, so the backend sizes review packets
30
+ against reported or configured limits. Without them, capacity remains unknown
31
+ and packet sizing pauses. The JSON is one object with a `self` field describing
32
+ the model you drive; report inside `self`:
32
33
 
33
34
  - `roster` — an ordered JSON array (lowest rank first) of the models you can
34
35
  dispatch subagents to *right now*, one entry per relative rank:
@@ -53,7 +53,8 @@ remediate-code next-step
53
53
 
54
54
  Every `next-step` call is also the **capability handshake**: report what you can
55
55
  dispatch to *right now* so the backend sizes remediation waves and per-worker
56
- context to your real model instead of a conservative 32k floor. Report:
56
+ context against reported or configured limits. Without them, capacity remains
57
+ unknown and wave planning pauses. Report:
57
58
 
58
59
  - `--host-can-dispatch-subagents` — whether you can run callable subagents at all
59
60
  (via the `Agent`/`task` tool). Without it the backend runs remediation serially.
@@ -1,106 +0,0 @@
1
- import type { ConfirmedPoolEntry, SourcePoolDisplayEntry, NewlyReachableBackend } from "audit-tools/shared";
2
- /**
3
- * Render the host-facing prompt for the interactive `provider_confirmation` step
4
- * (Gate-0, cost-first routing — spec/dispatch-quota.md). Shows the priced,
5
- * suggested provider pool (ascending cost) and asks the host to confirm it, or to
6
- * submit an operator reorder / exclusion / host-model roster by writing
7
- * `provider-confirmation.input.json`. Writing that file (even to accept the
8
- * suggestion verbatim) is what lets the run proceed — its presence is the
9
- * "operator has acted" signal the gate consumes.
10
- *
11
- * The tool owns discovery + the cost annotation: the host supplies only ordering
12
- * intent + its model roster, and the tool promotes that into both canonical
13
- * artifacts. So this prompt never asks the host to hand-author prices or
14
- * capability flags.
15
- */
16
- export declare function renderProviderConfirmationPrompt(opts: {
17
- /** The tool's suggested pool, already annotated with model_id/price/cost_order. */
18
- providerPool: ConfirmedPoolEntry[];
19
- /**
20
- * Every configured `sessionConfig.sources[]` pool (backlog follow-up a) —
21
- * display-only, derived by `deriveSourcePoolDisplay`. These are NOT part of
22
- * `providerPool` / its `cost_order` sequence, but `collectDispatchableSources`
23
- * (apiPool.ts) folds every one of them into dispatch, so they must be visible
24
- * here or the operator is confirming an ordering that omits pools that WILL
25
- * route. Omit/empty when no `sources[]` are configured.
26
- */
27
- sourcePools?: SourcePoolDisplayEntry[];
28
- /** Absolute path the host writes its operator input to. */
29
- inputPath: string;
30
- /** The exact command to re-invoke once the input is written. */
31
- continueCommand: string;
32
- /**
33
- * The G3 reconciliation delta: backends reachable now that the operator's prior
34
- * confirmation never mentioned. Non-empty ⇒ this is a RE-confirmation and the
35
- * prompt leads with the delta, so the operator answers the new question instead
36
- * of re-reading a whole table they already approved. Empty/absent ⇒ the ordinary
37
- * first-time gate.
38
- */
39
- newlyReachable?: readonly NewlyReachableBackend[];
40
- /**
41
- * The capability-evidence delta: dispatchable models with no resolvable capability
42
- * rank. Non-empty ⇒ the prompt additionally asks for a most-capable-first ordering
43
- * over exactly these models, which persists as `capability_rank` and stops them
44
- * fail-opening at the admission capability floor.
45
- */
46
- unevidencedCapability?: readonly string[];
47
- /**
48
- * A BOUNDED, spread sample of the already-confirmed capability ordering
49
- * (`selectCapabilityAnchors`), most-capable-first — the fixed reference points the
50
- * operator ranks the unevidenced models against.
51
- *
52
- * Without them the capability ask is unanswerable without livelocking: the prompt is
53
- * delta-scoped, so an answer over the new models alone used to REPLACE the confirmed
54
- * ordering and the models it dropped came straight back as the next delta. Rendering
55
- * the whole ordering instead is not an option — the roster may be hundreds of models
56
- * and this prompt must stay O(new + constant). Empty on a first-ever ranking.
57
- */
58
- capabilityAnchors?: readonly string[];
59
- /**
60
- * True ⇒ a prior confirmation exists on disk, i.e. this is a RE-confirmation.
61
- *
62
- * Drives the do-not-re-litigate guardrail INDEPENDENTLY of the reach delta. It used to
63
- * ride on `newlyReachable`, so a capability-only re-prompt rendered the full table with
64
- * no warning at all — while also telling the operator that an omitted field keeps its
65
- * confirmed value. An operator transcribing the displayed ordering into `cost_order`
66
- * then silently reverted their own confirmed order.
67
- */
68
- hasPriorConfirmation?: boolean;
69
- /**
70
- * R3-3: true on an autonomous (no-operator) run. Only changes rendering when
71
- * `unevidencedCapability` is non-empty — addresses that section to the HOST LLM
72
- * (an autonomous run has no operator to ask, but the CLI's `next-step` prompt is
73
- * always executed by a host agent, so THAT is who ranks) instead of an operator,
74
- * and OMITS the reach-reconciliation section entirely: reach is never an LLM's
75
- * call to make (`intakeExecutors.ts`'s executor fails it closed regardless of
76
- * what an LLM-authored submission says), so the prompt must not ask one to answer
77
- * a question it must not answer. Absent/false renders the ordinary operator
78
- * variant, unchanged.
79
- */
80
- autonomous?: boolean;
81
- /**
82
- * R3-3: anchor ids whose current position is LLM-authored rather than
83
- * operator-authored (`ConfirmedDispatchPolicy.capability_order_llm_ranked`).
84
- * Drives the ATTENDED variant's anchor marker only — an operator sees
85
- * "(LLM-ranked — restate it in your order to reposition it)" instead of
86
- * "(already ranked)" for these, since (unlike a genuinely operator-ranked
87
- * anchor) they may freely reposition one without restating the whole roster.
88
- * Has no effect on the autonomous variant (the LLM must not reorder ANY anchor,
89
- * regardless of who ranked it) or when the id is not among `capabilityAnchors`.
90
- */
91
- capabilityOrderLlmRanked?: readonly string[];
92
- /**
93
- * Declared `sources[]` entries that did NOT resolve this invocation, with the
94
- * operator-facing reason each carries (`resolveAmbientSources`' `dropped[]`).
95
- *
96
- * Rendered so the drop reaches the operator in the GATE-0 PROMPT, which is the
97
- * artifact they actually read. Its only other channel is a stderr line, which
98
- * conversation-first use never surfaces — leaving a declared lane silently
99
- * missing from the table with no stated cause.
100
- */
101
- droppedSources?: readonly {
102
- id: string;
103
- reason: string;
104
- }[];
105
- }): string;
106
- //# sourceMappingURL=providerConfirmationStep.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"providerConfirmationStep.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/providerConfirmationStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gCAAgC,CAAC,IAAI,EAAE;IACrD,mFAAmF;IACnF,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACnC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACvC,2DAA2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAClD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;OASG;IACH,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5D,GAAG,MAAM,CA8YT"}