@zhixuan92/multi-model-agent-core 4.5.4 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (482) hide show
  1. package/README.md +6 -2
  2. package/dist/bounded-execution/file-artifact-check.d.ts +4 -11
  3. package/dist/bounded-execution/file-artifact-check.d.ts.map +1 -1
  4. package/dist/bounded-execution/file-artifact-check.js +7 -22
  5. package/dist/bounded-execution/file-artifact-check.js.map +1 -1
  6. package/dist/bounded-execution/progress-watchdog.d.ts.map +1 -1
  7. package/dist/bounded-execution/progress-watchdog.js +60 -27
  8. package/dist/bounded-execution/progress-watchdog.js.map +1 -1
  9. package/dist/bounded-execution/stall-watchdog.d.ts.map +1 -1
  10. package/dist/bounded-execution/stall-watchdog.js +29 -12
  11. package/dist/bounded-execution/stall-watchdog.js.map +1 -1
  12. package/dist/bounded-execution/wall-clock-guard.d.ts +4 -0
  13. package/dist/bounded-execution/wall-clock-guard.d.ts.map +1 -1
  14. package/dist/bounded-execution/wall-clock-guard.js +1 -1
  15. package/dist/bounded-execution/wall-clock-guard.js.map +1 -1
  16. package/dist/config/canonical-model-identity.d.ts.map +1 -1
  17. package/dist/config/canonical-model-identity.js.map +1 -1
  18. package/dist/config/config-resolver.d.ts +1 -41
  19. package/dist/config/config-resolver.d.ts.map +1 -1
  20. package/dist/config/config-resolver.js +1 -43
  21. package/dist/config/config-resolver.js.map +1 -1
  22. package/dist/config/load.d.ts +0 -2
  23. package/dist/config/load.d.ts.map +1 -1
  24. package/dist/config/load.js +0 -4
  25. package/dist/config/load.js.map +1 -1
  26. package/dist/config/model-profile-registry.d.ts.map +1 -1
  27. package/dist/config/model-profile-registry.js +13 -7
  28. package/dist/config/model-profile-registry.js.map +1 -1
  29. package/dist/config/schema.d.ts +1 -19
  30. package/dist/config/schema.d.ts.map +1 -1
  31. package/dist/config/schema.js +12 -38
  32. package/dist/config/schema.js.map +1 -1
  33. package/dist/error-codes.d.ts +0 -1
  34. package/dist/error-codes.d.ts.map +1 -1
  35. package/dist/error-codes.js +0 -1
  36. package/dist/error-codes.js.map +1 -1
  37. package/dist/events/cloud-events.d.ts +0 -1
  38. package/dist/events/cloud-events.d.ts.map +1 -1
  39. package/dist/events/cloud-events.js +1 -1
  40. package/dist/events/cloud-events.js.map +1 -1
  41. package/dist/events/event-builder.d.ts +36 -5
  42. package/dist/events/event-builder.d.ts.map +1 -1
  43. package/dist/events/event-builder.js +174 -33
  44. package/dist/events/event-builder.js.map +1 -1
  45. package/dist/events/event-emitter.d.ts +2 -1
  46. package/dist/events/event-emitter.d.ts.map +1 -1
  47. package/dist/events/event-emitter.js +6 -1
  48. package/dist/events/event-emitter.js.map +1 -1
  49. package/dist/events/observability-events.d.ts +6 -26
  50. package/dist/events/observability-events.d.ts.map +1 -1
  51. package/dist/events/observability-events.js +6 -11
  52. package/dist/events/observability-events.js.map +1 -1
  53. package/dist/events/telemetry-types.d.ts +10 -7
  54. package/dist/events/telemetry-types.d.ts.map +1 -1
  55. package/dist/events/telemetry-types.js +1 -1
  56. package/dist/events/telemetry-types.js.map +1 -1
  57. package/dist/events/verbose-log-channel.d.ts +7 -7
  58. package/dist/events/verbose-log-channel.js +10 -10
  59. package/dist/index.d.ts +13 -8
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +11 -5
  62. package/dist/index.js.map +1 -1
  63. package/dist/intake/resolve.d.ts.map +1 -1
  64. package/dist/intake/resolve.js +0 -1
  65. package/dist/intake/resolve.js.map +1 -1
  66. package/dist/lifecycle/annotate-parser.d.ts +9 -0
  67. package/dist/lifecycle/annotate-parser.d.ts.map +1 -0
  68. package/dist/lifecycle/annotate-parser.js +83 -0
  69. package/dist/lifecycle/annotate-parser.js.map +1 -0
  70. package/dist/lifecycle/annotate-prompts.d.ts +9 -0
  71. package/dist/lifecycle/annotate-prompts.d.ts.map +1 -0
  72. package/dist/lifecycle/annotate-prompts.js +86 -0
  73. package/dist/lifecycle/annotate-prompts.js.map +1 -0
  74. package/dist/lifecycle/auto-register-context-block.d.ts +2 -2
  75. package/dist/lifecycle/auto-register-context-block.d.ts.map +1 -1
  76. package/dist/lifecycle/auto-register-context-block.js.map +1 -1
  77. package/dist/lifecycle/build-cancelled-result.d.ts +11 -0
  78. package/dist/lifecycle/build-cancelled-result.d.ts.map +1 -0
  79. package/dist/lifecycle/build-cancelled-result.js +27 -0
  80. package/dist/lifecycle/build-cancelled-result.js.map +1 -0
  81. package/dist/lifecycle/executor-output-types.d.ts +2 -2
  82. package/dist/lifecycle/executor-output-types.d.ts.map +1 -1
  83. package/dist/lifecycle/fallback-report.d.ts +2 -2
  84. package/dist/lifecycle/fallback-report.d.ts.map +1 -1
  85. package/dist/lifecycle/fallback-report.js.map +1 -1
  86. package/dist/lifecycle/findings-parser.d.ts +2 -0
  87. package/dist/lifecycle/findings-parser.d.ts.map +1 -1
  88. package/dist/lifecycle/findings-parser.js +9 -4
  89. package/dist/lifecycle/findings-parser.js.map +1 -1
  90. package/dist/lifecycle/git-toplevel.d.ts +12 -0
  91. package/dist/lifecycle/git-toplevel.d.ts.map +1 -0
  92. package/dist/lifecycle/git-toplevel.js +49 -0
  93. package/dist/lifecycle/git-toplevel.js.map +1 -0
  94. package/dist/lifecycle/handlers/{annotator.d.ts → annotate-stage.d.ts} +3 -2
  95. package/dist/lifecycle/handlers/annotate-stage.d.ts.map +1 -0
  96. package/dist/lifecycle/handlers/annotate-stage.js +289 -0
  97. package/dist/lifecycle/handlers/annotate-stage.js.map +1 -0
  98. package/dist/lifecycle/handlers/baseline-handlers.d.ts +10 -5
  99. package/dist/lifecycle/handlers/baseline-handlers.d.ts.map +1 -1
  100. package/dist/lifecycle/handlers/baseline-handlers.js +206 -316
  101. package/dist/lifecycle/handlers/baseline-handlers.js.map +1 -1
  102. package/dist/lifecycle/handlers/enrich-runtime-result.d.ts +3 -0
  103. package/dist/lifecycle/handlers/enrich-runtime-result.d.ts.map +1 -0
  104. package/dist/lifecycle/handlers/enrich-runtime-result.js +191 -0
  105. package/dist/lifecycle/handlers/enrich-runtime-result.js.map +1 -0
  106. package/dist/lifecycle/handlers/git-commit-handler.d.ts +3 -2
  107. package/dist/lifecycle/handlers/git-commit-handler.d.ts.map +1 -1
  108. package/dist/lifecycle/handlers/git-commit-handler.js +158 -114
  109. package/dist/lifecycle/handlers/git-commit-handler.js.map +1 -1
  110. package/dist/lifecycle/handlers/implement-stage.d.ts +10 -0
  111. package/dist/lifecycle/handlers/implement-stage.d.ts.map +1 -0
  112. package/dist/lifecycle/handlers/implement-stage.js +206 -0
  113. package/dist/lifecycle/handlers/implement-stage.js.map +1 -0
  114. package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts +7 -13
  115. package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts.map +1 -1
  116. package/dist/lifecycle/handlers/prepare-execution-context-handler.js +72 -49
  117. package/dist/lifecycle/handlers/prepare-execution-context-handler.js.map +1 -1
  118. package/dist/lifecycle/handlers/register-context-block-handlers.d.ts +2 -1
  119. package/dist/lifecycle/handlers/register-context-block-handlers.d.ts.map +1 -1
  120. package/dist/lifecycle/handlers/register-context-block-handlers.js +35 -14
  121. package/dist/lifecycle/handlers/register-context-block-handlers.js.map +1 -1
  122. package/dist/lifecycle/handlers/review-stage.d.ts +4 -0
  123. package/dist/lifecycle/handlers/review-stage.d.ts.map +1 -0
  124. package/dist/lifecycle/handlers/review-stage.js +184 -0
  125. package/dist/lifecycle/handlers/review-stage.js.map +1 -0
  126. package/dist/lifecycle/handlers/rework-stage.d.ts +4 -0
  127. package/dist/lifecycle/handlers/rework-stage.d.ts.map +1 -0
  128. package/dist/lifecycle/handlers/{rework-handler.js → rework-stage.js} +79 -15
  129. package/dist/lifecycle/handlers/rework-stage.js.map +1 -0
  130. package/dist/lifecycle/handlers/terminal-handlers.d.ts +22 -0
  131. package/dist/lifecycle/handlers/terminal-handlers.d.ts.map +1 -1
  132. package/dist/lifecycle/handlers/terminal-handlers.js +86 -5
  133. package/dist/lifecycle/handlers/terminal-handlers.js.map +1 -1
  134. package/dist/lifecycle/lifecycle-context.d.ts +41 -7
  135. package/dist/lifecycle/lifecycle-context.d.ts.map +1 -1
  136. package/dist/lifecycle/lifecycle-dispatcher.d.ts +19 -20
  137. package/dist/lifecycle/lifecycle-dispatcher.d.ts.map +1 -1
  138. package/dist/lifecycle/lifecycle-dispatcher.js +39 -23
  139. package/dist/lifecycle/lifecycle-dispatcher.js.map +1 -1
  140. package/dist/lifecycle/lifecycle-driver.d.ts +15 -8
  141. package/dist/lifecycle/lifecycle-driver.d.ts.map +1 -1
  142. package/dist/lifecycle/lifecycle-driver.js +130 -29
  143. package/dist/lifecycle/lifecycle-driver.js.map +1 -1
  144. package/dist/lifecycle/merge-stage-stats.d.ts +3 -3
  145. package/dist/lifecycle/merge-stage-stats.d.ts.map +1 -1
  146. package/dist/lifecycle/merge-stage-stats.js +2 -2
  147. package/dist/lifecycle/merge-stage-stats.js.map +1 -1
  148. package/dist/lifecycle/normalize-output-targets.d.ts +2 -0
  149. package/dist/lifecycle/normalize-output-targets.d.ts.map +1 -0
  150. package/dist/lifecycle/normalize-output-targets.js +14 -0
  151. package/dist/lifecycle/normalize-output-targets.js.map +1 -0
  152. package/dist/lifecycle/perform-implementation.d.ts +3 -0
  153. package/dist/lifecycle/perform-implementation.d.ts.map +1 -0
  154. package/dist/lifecycle/perform-implementation.js +301 -0
  155. package/dist/lifecycle/perform-implementation.js.map +1 -0
  156. package/dist/lifecycle/repo-hygiene.d.ts +14 -0
  157. package/dist/lifecycle/repo-hygiene.d.ts.map +1 -0
  158. package/dist/lifecycle/repo-hygiene.js +71 -0
  159. package/dist/lifecycle/repo-hygiene.js.map +1 -0
  160. package/dist/lifecycle/rework-budget.d.ts +3 -0
  161. package/dist/lifecycle/rework-budget.d.ts.map +1 -0
  162. package/dist/lifecycle/rework-budget.js +9 -0
  163. package/dist/lifecycle/rework-budget.js.map +1 -0
  164. package/dist/lifecycle/shared-compute.d.ts +4 -4
  165. package/dist/lifecycle/shared-compute.d.ts.map +1 -1
  166. package/dist/lifecycle/shared-compute.js +1 -1
  167. package/dist/lifecycle/shared-compute.js.map +1 -1
  168. package/dist/lifecycle/stage-io.d.ts +140 -0
  169. package/dist/lifecycle/stage-io.d.ts.map +1 -0
  170. package/dist/lifecycle/stage-io.js +20 -0
  171. package/dist/lifecycle/stage-io.js.map +1 -0
  172. package/dist/lifecycle/stage-plan-builder.d.ts +3 -3
  173. package/dist/lifecycle/stage-plan-builder.d.ts.map +1 -1
  174. package/dist/lifecycle/stage-plan-builder.js +157 -128
  175. package/dist/lifecycle/stage-plan-builder.js.map +1 -1
  176. package/dist/lifecycle/stage-plan-types.d.ts +6 -25
  177. package/dist/lifecycle/stage-plan-types.d.ts.map +1 -1
  178. package/dist/lifecycle/stage-progression.d.ts +3 -15
  179. package/dist/lifecycle/stage-progression.d.ts.map +1 -1
  180. package/dist/lifecycle/stage-progression.js +48 -91
  181. package/dist/lifecycle/stage-progression.js.map +1 -1
  182. package/dist/lifecycle/task-completion-summary.d.ts +2 -2
  183. package/dist/lifecycle/task-completion-summary.d.ts.map +1 -1
  184. package/dist/lifecycle/task-completion-summary.js +0 -7
  185. package/dist/lifecycle/task-completion-summary.js.map +1 -1
  186. package/dist/lifecycle/task-executor.d.ts +23 -0
  187. package/dist/lifecycle/task-executor.d.ts.map +1 -1
  188. package/dist/lifecycle/task-executor.js +79 -6
  189. package/dist/lifecycle/task-executor.js.map +1 -1
  190. package/dist/lifecycle/task-grouping.d.ts +19 -0
  191. package/dist/lifecycle/task-grouping.d.ts.map +1 -0
  192. package/dist/lifecycle/task-grouping.js +48 -0
  193. package/dist/lifecycle/task-grouping.js.map +1 -0
  194. package/dist/lifecycle/task-runner.d.ts +25 -8
  195. package/dist/lifecycle/task-runner.d.ts.map +1 -1
  196. package/dist/lifecycle/task-runner.js +123 -313
  197. package/dist/lifecycle/task-runner.js.map +1 -1
  198. package/dist/lifecycle/tool-config-types.d.ts +9 -0
  199. package/dist/lifecycle/tool-config-types.d.ts.map +1 -1
  200. package/dist/lifecycle/worker-output-contract.d.ts +9 -15
  201. package/dist/lifecycle/worker-output-contract.d.ts.map +1 -1
  202. package/dist/lifecycle/worker-output-contract.js +45 -30
  203. package/dist/lifecycle/worker-output-contract.js.map +1 -1
  204. package/dist/providers/agent-resolver.d.ts.map +1 -0
  205. package/dist/{escalation → providers}/agent-resolver.js +1 -1
  206. package/dist/providers/agent-resolver.js.map +1 -0
  207. package/dist/providers/assemble-run-result.d.ts +3 -3
  208. package/dist/providers/assemble-run-result.d.ts.map +1 -1
  209. package/dist/providers/assemble-run-result.js +20 -11
  210. package/dist/providers/assemble-run-result.js.map +1 -1
  211. package/dist/providers/claude-session.d.ts +12 -0
  212. package/dist/providers/claude-session.d.ts.map +1 -1
  213. package/dist/providers/claude-session.js +39 -1
  214. package/dist/providers/claude-session.js.map +1 -1
  215. package/dist/providers/claude.js.map +1 -1
  216. package/dist/providers/codex-cli-launch.js +1 -1
  217. package/dist/providers/codex-cli-launch.js.map +1 -1
  218. package/dist/providers/codex-cli-session.d.ts +20 -2
  219. package/dist/providers/codex-cli-session.d.ts.map +1 -1
  220. package/dist/providers/codex-cli-session.js +148 -52
  221. package/dist/providers/codex-cli-session.js.map +1 -1
  222. package/dist/providers/codex.js.map +1 -1
  223. package/dist/providers/index.d.ts +1 -0
  224. package/dist/providers/index.d.ts.map +1 -1
  225. package/dist/providers/index.js +1 -0
  226. package/dist/providers/index.js.map +1 -1
  227. package/dist/providers/normalize-claude.d.ts +2 -0
  228. package/dist/providers/normalize-claude.d.ts.map +1 -1
  229. package/dist/providers/normalize-claude.js +2 -1
  230. package/dist/providers/normalize-claude.js.map +1 -1
  231. package/dist/providers/provider-factory.d.ts +8 -0
  232. package/dist/providers/provider-factory.d.ts.map +1 -1
  233. package/dist/providers/provider-factory.js +64 -3
  234. package/dist/providers/provider-factory.js.map +1 -1
  235. package/dist/providers/run-annotator-turn.d.ts +24 -0
  236. package/dist/providers/run-annotator-turn.d.ts.map +1 -0
  237. package/dist/providers/run-annotator-turn.js +44 -0
  238. package/dist/providers/run-annotator-turn.js.map +1 -0
  239. package/dist/providers/run-worker-turn.d.ts +26 -0
  240. package/dist/providers/run-worker-turn.d.ts.map +1 -0
  241. package/dist/providers/run-worker-turn.js +57 -0
  242. package/dist/providers/run-worker-turn.js.map +1 -0
  243. package/dist/providers/runner-types.d.ts +6 -7
  244. package/dist/providers/runner-types.d.ts.map +1 -1
  245. package/dist/providers/stall-detector.d.ts +1 -1
  246. package/dist/providers/stall-detector.d.ts.map +1 -1
  247. package/dist/providers/stall-detector.js +1 -1
  248. package/dist/providers/stall-detector.js.map +1 -1
  249. package/dist/reporting/derive-investigate-status.d.ts +1 -1
  250. package/dist/reporting/derive-investigate-status.d.ts.map +1 -1
  251. package/dist/reporting/headline-composer.d.ts +3 -3
  252. package/dist/reporting/headline-composer.d.ts.map +1 -1
  253. package/dist/reporting/headline-templates/investigate.d.ts +1 -1
  254. package/dist/reporting/headline-templates/investigate.d.ts.map +1 -1
  255. package/dist/reporting/headline-templates/research.d.ts.map +1 -1
  256. package/dist/reporting/headline-templates/research.js +0 -1
  257. package/dist/reporting/headline-templates/research.js.map +1 -1
  258. package/dist/reporting/terminal-status-deriver.d.ts +1 -1
  259. package/dist/reporting/terminal-status-deriver.d.ts.map +1 -1
  260. package/dist/reporting/terminal-status-deriver.js +1 -4
  261. package/dist/reporting/terminal-status-deriver.js.map +1 -1
  262. package/dist/review/index.d.ts +4 -3
  263. package/dist/review/index.d.ts.map +1 -1
  264. package/dist/review/index.js +7 -4
  265. package/dist/review/index.js.map +1 -1
  266. package/dist/review/parse-review-report.d.ts +7 -1
  267. package/dist/review/parse-review-report.d.ts.map +1 -1
  268. package/dist/review/parse-review-report.js +13 -21
  269. package/dist/review/parse-review-report.js.map +1 -1
  270. package/dist/review/review-verdict-mapping.d.ts +3 -3
  271. package/dist/review/review-verdict-mapping.d.ts.map +1 -1
  272. package/dist/review/review-verdict-mapping.js +1 -1
  273. package/dist/review/review-verdict-mapping.js.map +1 -1
  274. package/dist/review/run-reviewer.d.ts +40 -0
  275. package/dist/review/run-reviewer.d.ts.map +1 -0
  276. package/dist/review/run-reviewer.js +55 -0
  277. package/dist/review/run-reviewer.js.map +1 -0
  278. package/dist/review/templates/quality-review.d.ts +5 -0
  279. package/dist/review/templates/quality-review.d.ts.map +1 -1
  280. package/dist/review/templates/quality-review.js +35 -25
  281. package/dist/review/templates/quality-review.js.map +1 -1
  282. package/dist/review/templates/spec-review.d.ts +6 -0
  283. package/dist/review/templates/spec-review.d.ts.map +1 -1
  284. package/dist/review/templates/spec-review.js +36 -8
  285. package/dist/review/templates/spec-review.js.map +1 -1
  286. package/dist/stores/batch-cache.d.ts +3 -3
  287. package/dist/stores/batch-cache.d.ts.map +1 -1
  288. package/dist/stores/batch-cache.js.map +1 -1
  289. package/dist/stores/batch-registry.d.ts +46 -1
  290. package/dist/stores/batch-registry.d.ts.map +1 -1
  291. package/dist/stores/batch-registry.js +39 -0
  292. package/dist/stores/batch-registry.js.map +1 -1
  293. package/dist/tool-surface/tool-surface-registry.d.ts +1 -1
  294. package/dist/tool-surface/tool-surface-registry.d.ts.map +1 -1
  295. package/dist/tools/audit/tool-config.d.ts.map +1 -1
  296. package/dist/tools/audit/tool-config.js +0 -1
  297. package/dist/tools/audit/tool-config.js.map +1 -1
  298. package/dist/tools/debug/tool-config.d.ts.map +1 -1
  299. package/dist/tools/debug/tool-config.js +1 -2
  300. package/dist/tools/debug/tool-config.js.map +1 -1
  301. package/dist/tools/delegate/schema.d.ts +1 -1
  302. package/dist/tools/delegate/schema.d.ts.map +1 -1
  303. package/dist/tools/delegate/schema.js +2 -1
  304. package/dist/tools/delegate/schema.js.map +1 -1
  305. package/dist/tools/delegate/tool-config.d.ts +0 -1
  306. package/dist/tools/delegate/tool-config.d.ts.map +1 -1
  307. package/dist/tools/delegate/tool-config.js +3 -3
  308. package/dist/tools/delegate/tool-config.js.map +1 -1
  309. package/dist/tools/execute-plan/schema.d.ts +1 -1
  310. package/dist/tools/execute-plan/schema.d.ts.map +1 -1
  311. package/dist/tools/execute-plan/schema.js +2 -2
  312. package/dist/tools/execute-plan/schema.js.map +1 -1
  313. package/dist/tools/execute-plan/tool-config.d.ts.map +1 -1
  314. package/dist/tools/execute-plan/tool-config.js +3 -2
  315. package/dist/tools/execute-plan/tool-config.js.map +1 -1
  316. package/dist/tools/investigate/tool-config.d.ts.map +1 -1
  317. package/dist/tools/investigate/tool-config.js +1 -2
  318. package/dist/tools/investigate/tool-config.js.map +1 -1
  319. package/dist/tools/register-context-block/tool-config.d.ts.map +1 -1
  320. package/dist/tools/register-context-block/tool-config.js +0 -1
  321. package/dist/tools/register-context-block/tool-config.js.map +1 -1
  322. package/dist/tools/research/tool-config.d.ts.map +1 -1
  323. package/dist/tools/research/tool-config.js +0 -1
  324. package/dist/tools/research/tool-config.js.map +1 -1
  325. package/dist/tools/retry/tool-config.d.ts.map +1 -1
  326. package/dist/tools/retry/tool-config.js +0 -1
  327. package/dist/tools/retry/tool-config.js.map +1 -1
  328. package/dist/tools/review/tool-config.d.ts.map +1 -1
  329. package/dist/tools/review/tool-config.js +0 -1
  330. package/dist/tools/review/tool-config.js.map +1 -1
  331. package/dist/types/config.d.ts +0 -1
  332. package/dist/types/config.d.ts.map +1 -1
  333. package/dist/types/enums.d.ts +0 -3
  334. package/dist/types/enums.d.ts.map +1 -1
  335. package/dist/types/enums.js +3 -3
  336. package/dist/types/enums.js.map +1 -1
  337. package/dist/types/run-result.d.ts +177 -213
  338. package/dist/types/run-result.d.ts.map +1 -1
  339. package/dist/types/run-result.js +17 -0
  340. package/dist/types/run-result.js.map +1 -1
  341. package/dist/types/task-spec.d.ts +1 -1
  342. package/dist/types/task-spec.d.ts.map +1 -1
  343. package/dist/types.d.ts +1 -1
  344. package/dist/types.d.ts.map +1 -1
  345. package/package.json +1 -1
  346. package/dist/bounded-execution/cost-meter.d.ts +0 -20
  347. package/dist/bounded-execution/cost-meter.d.ts.map +0 -1
  348. package/dist/bounded-execution/cost-meter.js +0 -21
  349. package/dist/bounded-execution/cost-meter.js.map +0 -1
  350. package/dist/bounded-execution/error-classifier.d.ts +0 -11
  351. package/dist/bounded-execution/error-classifier.d.ts.map +0 -1
  352. package/dist/bounded-execution/error-classifier.js +0 -23
  353. package/dist/bounded-execution/error-classifier.js.map +0 -1
  354. package/dist/bounded-execution/idle-guard.d.ts +0 -8
  355. package/dist/bounded-execution/idle-guard.d.ts.map +0 -1
  356. package/dist/bounded-execution/idle-guard.js +0 -18
  357. package/dist/bounded-execution/idle-guard.js.map +0 -1
  358. package/dist/bounded-execution/index.d.ts +0 -10
  359. package/dist/bounded-execution/index.d.ts.map +0 -1
  360. package/dist/bounded-execution/index.js +0 -11
  361. package/dist/bounded-execution/index.js.map +0 -1
  362. package/dist/bounded-execution/safety-max-turns.d.ts +0 -17
  363. package/dist/bounded-execution/safety-max-turns.d.ts.map +0 -1
  364. package/dist/bounded-execution/safety-max-turns.js +0 -17
  365. package/dist/bounded-execution/safety-max-turns.js.map +0 -1
  366. package/dist/cleanup/batch-retention-sweeper.d.ts +0 -7
  367. package/dist/cleanup/batch-retention-sweeper.d.ts.map +0 -1
  368. package/dist/cleanup/batch-retention-sweeper.js +0 -10
  369. package/dist/cleanup/batch-retention-sweeper.js.map +0 -1
  370. package/dist/cleanup/context-block-gc-sweeper.d.ts +0 -8
  371. package/dist/cleanup/context-block-gc-sweeper.d.ts.map +0 -1
  372. package/dist/cleanup/context-block-gc-sweeper.js +0 -12
  373. package/dist/cleanup/context-block-gc-sweeper.js.map +0 -1
  374. package/dist/cleanup/index.d.ts +0 -5
  375. package/dist/cleanup/index.d.ts.map +0 -1
  376. package/dist/cleanup/index.js +0 -6
  377. package/dist/cleanup/index.js.map +0 -1
  378. package/dist/cleanup/project-idle-cleanup.d.ts +0 -7
  379. package/dist/cleanup/project-idle-cleanup.d.ts.map +0 -1
  380. package/dist/cleanup/project-idle-cleanup.js +0 -15
  381. package/dist/cleanup/project-idle-cleanup.js.map +0 -1
  382. package/dist/cleanup/shutdown-coordinator.d.ts +0 -7
  383. package/dist/cleanup/shutdown-coordinator.d.ts.map +0 -1
  384. package/dist/cleanup/shutdown-coordinator.js +0 -13
  385. package/dist/cleanup/shutdown-coordinator.js.map +0 -1
  386. package/dist/config/index.d.ts +0 -8
  387. package/dist/config/index.d.ts.map +0 -1
  388. package/dist/config/index.js +0 -9
  389. package/dist/config/index.js.map +0 -1
  390. package/dist/config/pricing-table.d.ts +0 -16
  391. package/dist/config/pricing-table.d.ts.map +0 -1
  392. package/dist/config/pricing-table.js +0 -51
  393. package/dist/config/pricing-table.js.map +0 -1
  394. package/dist/escalation/agent-resolver.d.ts.map +0 -1
  395. package/dist/escalation/agent-resolver.js.map +0 -1
  396. package/dist/escalation/delegate-with-escalation.d.ts +0 -52
  397. package/dist/escalation/delegate-with-escalation.d.ts.map +0 -1
  398. package/dist/escalation/delegate-with-escalation.js +0 -207
  399. package/dist/escalation/delegate-with-escalation.js.map +0 -1
  400. package/dist/escalation/escalation-policy.d.ts +0 -18
  401. package/dist/escalation/escalation-policy.d.ts.map +0 -1
  402. package/dist/escalation/escalation-policy.js +0 -33
  403. package/dist/escalation/escalation-policy.js.map +0 -1
  404. package/dist/escalation/fallback-helpers.d.ts +0 -22
  405. package/dist/escalation/fallback-helpers.d.ts.map +0 -1
  406. package/dist/escalation/fallback-helpers.js +0 -45
  407. package/dist/escalation/fallback-helpers.js.map +0 -1
  408. package/dist/escalation/fallback-types.d.ts +0 -60
  409. package/dist/escalation/fallback-types.d.ts.map +0 -1
  410. package/dist/escalation/fallback-types.js +0 -11
  411. package/dist/escalation/fallback-types.js.map +0 -1
  412. package/dist/escalation/fallback.d.ts +0 -5
  413. package/dist/escalation/fallback.d.ts.map +0 -1
  414. package/dist/escalation/fallback.js +0 -387
  415. package/dist/escalation/fallback.js.map +0 -1
  416. package/dist/escalation/index.d.ts +0 -3
  417. package/dist/escalation/index.d.ts.map +0 -1
  418. package/dist/escalation/index.js +0 -4
  419. package/dist/escalation/index.js.map +0 -1
  420. package/dist/escalation/policy.d.ts +0 -37
  421. package/dist/escalation/policy.d.ts.map +0 -1
  422. package/dist/escalation/policy.js +0 -67
  423. package/dist/escalation/policy.js.map +0 -1
  424. package/dist/escalation/types.d.ts +0 -15
  425. package/dist/escalation/types.d.ts.map +0 -1
  426. package/dist/escalation/types.js +0 -2
  427. package/dist/escalation/types.js.map +0 -1
  428. package/dist/events/running-headline-sink.d.ts +0 -27
  429. package/dist/events/running-headline-sink.d.ts.map +0 -1
  430. package/dist/events/running-headline-sink.js +0 -156
  431. package/dist/events/running-headline-sink.js.map +0 -1
  432. package/dist/lifecycle/handlers/annotator.d.ts.map +0 -1
  433. package/dist/lifecycle/handlers/annotator.js +0 -59
  434. package/dist/lifecycle/handlers/annotator.js.map +0 -1
  435. package/dist/lifecycle/handlers/derive-terminal-status.d.ts +0 -10
  436. package/dist/lifecycle/handlers/derive-terminal-status.d.ts.map +0 -1
  437. package/dist/lifecycle/handlers/derive-terminal-status.js +0 -35
  438. package/dist/lifecycle/handlers/derive-terminal-status.js.map +0 -1
  439. package/dist/lifecycle/handlers/files-written-cross-check.d.ts +0 -27
  440. package/dist/lifecycle/handlers/files-written-cross-check.d.ts.map +0 -1
  441. package/dist/lifecycle/handlers/files-written-cross-check.js +0 -91
  442. package/dist/lifecycle/handlers/files-written-cross-check.js.map +0 -1
  443. package/dist/lifecycle/handlers/review-handler.d.ts +0 -3
  444. package/dist/lifecycle/handlers/review-handler.d.ts.map +0 -1
  445. package/dist/lifecycle/handlers/review-handler.js +0 -169
  446. package/dist/lifecycle/handlers/review-handler.js.map +0 -1
  447. package/dist/lifecycle/handlers/rework-handler.d.ts +0 -3
  448. package/dist/lifecycle/handlers/rework-handler.d.ts.map +0 -1
  449. package/dist/lifecycle/handlers/rework-handler.js.map +0 -1
  450. package/dist/lifecycle/handlers/task-executor.d.ts +0 -9
  451. package/dist/lifecycle/handlers/task-executor.d.ts.map +0 -1
  452. package/dist/lifecycle/handlers/task-executor.js +0 -98
  453. package/dist/lifecycle/handlers/task-executor.js.map +0 -1
  454. package/dist/lifecycle/handlers/verify-stage.d.ts +0 -37
  455. package/dist/lifecycle/handlers/verify-stage.d.ts.map +0 -1
  456. package/dist/lifecycle/handlers/verify-stage.js +0 -208
  457. package/dist/lifecycle/handlers/verify-stage.js.map +0 -1
  458. package/dist/lifecycle/metadata-repair.d.ts +0 -15
  459. package/dist/lifecycle/metadata-repair.d.ts.map +0 -1
  460. package/dist/lifecycle/metadata-repair.js +0 -33
  461. package/dist/lifecycle/metadata-repair.js.map +0 -1
  462. package/dist/review/default-engines.d.ts +0 -3
  463. package/dist/review/default-engines.d.ts.map +0 -1
  464. package/dist/review/default-engines.js +0 -22
  465. package/dist/review/default-engines.js.map +0 -1
  466. package/dist/review/reviewer-engine.d.ts +0 -53
  467. package/dist/review/reviewer-engine.d.ts.map +0 -1
  468. package/dist/review/reviewer-engine.js +0 -47
  469. package/dist/review/reviewer-engine.js.map +0 -1
  470. package/dist/review/reviewer-output-parser.d.ts +0 -12
  471. package/dist/review/reviewer-output-parser.d.ts.map +0 -1
  472. package/dist/review/reviewer-output-parser.js +0 -213
  473. package/dist/review/reviewer-output-parser.js.map +0 -1
  474. package/dist/review/reviewer-prompt-builder.d.ts +0 -21
  475. package/dist/review/reviewer-prompt-builder.d.ts.map +0 -1
  476. package/dist/review/reviewer-prompt-builder.js +0 -22
  477. package/dist/review/reviewer-prompt-builder.js.map +0 -1
  478. package/dist/review/templates/annotate-completion.d.ts +0 -12
  479. package/dist/review/templates/annotate-completion.d.ts.map +0 -1
  480. package/dist/review/templates/annotate-completion.js +0 -72
  481. package/dist/review/templates/annotate-completion.js.map +0 -1
  482. /package/dist/{escalation → providers}/agent-resolver.d.ts +0 -0
@@ -1,387 +0,0 @@
1
- import { canonicalIdentity, identityEquals } from '../config/canonical-model-identity.js';
2
- import { otherTier } from '../config/tier-policy-registry.js';
3
- import { providersIdentical, scoreWork } from './fallback-helpers.js';
4
- import { markUnavailable } from './fallback-types.js';
5
- export { providersIdentical, makeSyntheticRunResult, isReviewTransportFailure } from './fallback-helpers.js';
6
- export { TRANSPORT_FAILURES } from './fallback-types.js';
7
- export async function runWithFallback(input) {
8
- const { assigned, providerFor, unavailableTiers, isTransportFailure, makeSyntheticFailure, call } = input;
9
- const getStatus = input.getStatus ?? (() => undefined);
10
- const forbidden = input.forbiddenIdentities ?? [];
11
- // Returns { skip: true } when the tier should be skipped due to identity separation.
12
- // providerFor throws/returns undefined → { skip: false }; canonicalIdentity throws → { skip: true } (fail-closed).
13
- const checkSeparation = (tier) => {
14
- if (forbidden.length === 0)
15
- return { skip: false };
16
- let p;
17
- try {
18
- p = providerFor(tier);
19
- }
20
- catch {
21
- return { skip: false };
22
- }
23
- if (!p)
24
- return { skip: false };
25
- try {
26
- const id = canonicalIdentity(p.config);
27
- if (forbidden.some(f => identityEquals(f, id)))
28
- return { skip: true, identity: id };
29
- return { skip: false, identity: id };
30
- }
31
- catch {
32
- return { skip: true };
33
- }
34
- };
35
- const resolveProviderIdentity = (tier) => {
36
- let p;
37
- try {
38
- p = providerFor(tier);
39
- }
40
- catch {
41
- return null;
42
- }
43
- if (!p)
44
- return null;
45
- try {
46
- return canonicalIdentity(p.config);
47
- }
48
- catch {
49
- return null;
50
- }
51
- };
52
- const assignedIdentity = resolveProviderIdentity(assigned) ?? undefined;
53
- // Resolve assigned tier (sticky check first, then not-configured)
54
- let usedTier = assigned;
55
- let fallbackFired = false;
56
- let fallbackReason;
57
- let assignedUnavailableReason;
58
- let skippedDueToSeparation = false;
59
- let usedIdentity = assignedIdentity;
60
- if (unavailableTiers.has(assigned)) {
61
- assignedUnavailableReason = unavailableTiers.get(assigned);
62
- fallbackReason = assignedUnavailableReason;
63
- }
64
- else {
65
- let assignedProvider;
66
- try {
67
- assignedProvider = providerFor(assigned);
68
- }
69
- catch { /* construction failure → treat as unavailable below */ }
70
- if (assignedProvider === undefined) {
71
- markUnavailable(unavailableTiers, assigned, 'not_configured');
72
- assignedUnavailableReason = 'not_configured';
73
- fallbackReason = 'not_configured';
74
- }
75
- else {
76
- const sep = checkSeparation(assigned);
77
- if (sep.skip) {
78
- skippedDueToSeparation = true;
79
- fallbackReason = 'not_configured';
80
- }
81
- else if (sep.identity) {
82
- usedIdentity = sep.identity;
83
- }
84
- }
85
- }
86
- if (fallbackReason !== undefined) {
87
- // Assigned is unavailable up-front (or forbidden). Try the alt tier.
88
- const alt = otherTier(assigned);
89
- let altUnavailableReason;
90
- if (unavailableTiers.has(alt)) {
91
- altUnavailableReason = unavailableTiers.get(alt);
92
- }
93
- else {
94
- let altProv;
95
- try {
96
- altProv = providerFor(alt);
97
- }
98
- catch { /* construction failure */ }
99
- if (altProv === undefined) {
100
- markUnavailable(unavailableTiers, alt, 'not_configured');
101
- altUnavailableReason = 'not_configured';
102
- }
103
- else {
104
- const altSep = checkSeparation(alt);
105
- if (altSep.skip) {
106
- skippedDueToSeparation = true;
107
- altUnavailableReason = 'not_configured';
108
- }
109
- else if (altSep.identity) {
110
- usedIdentity = altSep.identity;
111
- }
112
- }
113
- }
114
- if (altUnavailableReason !== undefined) {
115
- // Both unavailable up-front. If separation was the blocking reason,
116
- // surface it as the unavailableReason so callers like
117
- // adaptForAllTiersUnavailable can map to the correct errorCode.
118
- if (skippedDueToSeparation) {
119
- return {
120
- result: makeSyntheticFailure(assigned),
121
- usedTier: 'none',
122
- fallbackFired: false,
123
- bothUnavailable: true,
124
- fallbackReason,
125
- assignedUnavailableReason,
126
- unavailableReason: altUnavailableReason,
127
- fallbackSeparationRespected: true,
128
- assignedIdentity,
129
- usedIdentity: undefined,
130
- salvageResult: null,
131
- };
132
- }
133
- return {
134
- result: makeSyntheticFailure(assigned),
135
- usedTier: 'none',
136
- fallbackFired: false,
137
- bothUnavailable: true,
138
- fallbackReason,
139
- assignedUnavailableReason,
140
- unavailableReason: altUnavailableReason,
141
- salvageResult: null,
142
- };
143
- }
144
- usedTier = alt;
145
- fallbackFired = true;
146
- }
147
- // Call the chosen provider
148
- let provider;
149
- try {
150
- provider = providerFor(usedTier);
151
- }
152
- catch {
153
- // providerFor threw — construction failure on the chosen tier.
154
- if (!fallbackFired) {
155
- const alt = otherTier(usedTier);
156
- fallbackFired = true;
157
- usedTier = alt;
158
- try {
159
- provider = providerFor(alt);
160
- }
161
- catch {
162
- return {
163
- result: makeSyntheticFailure(assigned),
164
- usedTier: 'none',
165
- fallbackFired: true,
166
- bothUnavailable: true,
167
- fallbackReason: 'not_configured',
168
- assignedUnavailableReason,
169
- unavailableReason: 'not_configured',
170
- salvageResult: null,
171
- ...(forbidden.length > 0 ? {
172
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
173
- assignedIdentity,
174
- usedIdentity: undefined,
175
- } : {}),
176
- };
177
- }
178
- }
179
- else {
180
- return {
181
- result: makeSyntheticFailure(assigned),
182
- usedTier: 'none',
183
- fallbackFired: true,
184
- bothUnavailable: true,
185
- fallbackReason,
186
- assignedUnavailableReason,
187
- unavailableReason: 'not_configured',
188
- salvageResult: null,
189
- ...(forbidden.length > 0 ? {
190
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
191
- assignedIdentity,
192
- usedIdentity: undefined,
193
- } : {}),
194
- };
195
- }
196
- }
197
- const result = await call(provider, usedTier);
198
- if (!isTransportFailure(result)) {
199
- if (!usedIdentity) {
200
- try {
201
- usedIdentity = canonicalIdentity(provider.config) ?? undefined;
202
- }
203
- catch { /* leave undefined */ }
204
- }
205
- return {
206
- result,
207
- usedTier,
208
- fallbackFired,
209
- fallbackReason,
210
- assignedUnavailableReason,
211
- bothUnavailable: false,
212
- salvageResult: null,
213
- ...(forbidden.length > 0 ? {
214
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
215
- assignedIdentity,
216
- usedIdentity,
217
- } : {}),
218
- };
219
- }
220
- // Transport failure on the called tier
221
- const calledStatus = getStatus(result);
222
- markUnavailable(unavailableTiers, usedTier, 'transport_failure');
223
- if (!usedIdentity) {
224
- try {
225
- usedIdentity = canonicalIdentity(provider.config) ?? undefined;
226
- }
227
- catch { /* leave undefined */ }
228
- }
229
- // If the called tier WAS the alt (already substituted), no further alt to try
230
- if (fallbackFired) {
231
- return {
232
- result,
233
- usedTier,
234
- fallbackFired: true,
235
- fallbackReason,
236
- fallbackTriggeringStatus: calledStatus,
237
- assignedUnavailableReason,
238
- bothUnavailable: true,
239
- unavailableReason: 'transport_failure',
240
- unavailableTriggeringStatus: calledStatus,
241
- salvageResult: null,
242
- ...(forbidden.length > 0 ? {
243
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
244
- assignedIdentity,
245
- usedIdentity,
246
- } : {}),
247
- };
248
- }
249
- // Assigned tier just failed. Promote to fallback path.
250
- fallbackReason = 'transport_failure';
251
- const fallbackTriggeringStatus = calledStatus;
252
- const altOfUsed = otherTier(usedTier);
253
- // Same-provider short-circuit: if alt points at the same backend as assigned,
254
- // fallback is structurally pointless — skip the doomed call.
255
- const altProviderForSameCheck = providerFor(altOfUsed);
256
- if (altProviderForSameCheck !== undefined && providersIdentical(provider, altProviderForSameCheck)) {
257
- const sameProviderSep = forbidden.length > 0 ? checkSeparation(usedTier) : { skip: false };
258
- return {
259
- result,
260
- usedTier,
261
- fallbackFired: false,
262
- bothUnavailable: false,
263
- salvageResult: null,
264
- ...(forbidden.length > 0 ? {
265
- fallbackSeparationRespected: sameProviderSep.skip || skippedDueToSeparation || undefined,
266
- assignedIdentity,
267
- usedIdentity,
268
- } : {}),
269
- };
270
- }
271
- // Check alt availability (sticky first, then not-configured, then separation)
272
- let altUnavailableReason;
273
- let altSeparation = false;
274
- if (unavailableTiers.has(altOfUsed)) {
275
- altUnavailableReason = unavailableTiers.get(altOfUsed);
276
- }
277
- else {
278
- let altProv2;
279
- try {
280
- altProv2 = providerFor(altOfUsed);
281
- }
282
- catch { /* construction failure */ }
283
- if (altProv2 === undefined) {
284
- markUnavailable(unavailableTiers, altOfUsed, 'not_configured');
285
- altUnavailableReason = 'not_configured';
286
- }
287
- else {
288
- const altSep = checkSeparation(altOfUsed);
289
- if (altSep.skip) {
290
- altSeparation = true;
291
- altUnavailableReason = 'not_configured';
292
- }
293
- else if (altSep.identity) {
294
- usedIdentity = altSep.identity;
295
- }
296
- }
297
- }
298
- if (altUnavailableReason !== undefined) {
299
- return {
300
- result,
301
- usedTier,
302
- fallbackFired: true,
303
- fallbackReason,
304
- fallbackTriggeringStatus,
305
- bothUnavailable: true,
306
- unavailableReason: altUnavailableReason,
307
- salvageResult: null,
308
- ...(forbidden.length > 0 ? {
309
- fallbackSeparationRespected: altSeparation || skippedDueToSeparation || undefined,
310
- assignedIdentity,
311
- usedIdentity,
312
- } : {}),
313
- };
314
- }
315
- // Try alt
316
- let altProvider;
317
- try {
318
- altProvider = providerFor(altOfUsed);
319
- }
320
- catch {
321
- return {
322
- result,
323
- usedTier,
324
- fallbackFired: true,
325
- fallbackReason,
326
- fallbackTriggeringStatus,
327
- bothUnavailable: true,
328
- unavailableReason: 'not_configured',
329
- salvageResult: null,
330
- ...(forbidden.length > 0 ? {
331
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
332
- assignedIdentity,
333
- usedIdentity,
334
- } : {}),
335
- };
336
- }
337
- const altResult = await call(altProvider, altOfUsed);
338
- if (!usedIdentity) {
339
- try {
340
- usedIdentity = canonicalIdentity(altProvider.config) ?? undefined;
341
- }
342
- catch { /* leave undefined */ }
343
- }
344
- const altStatus = getStatus(altResult);
345
- if (isTransportFailure(altResult)) {
346
- // Both transport-failed mid-call — preserve BOTH triggering statuses
347
- markUnavailable(unavailableTiers, altOfUsed, 'transport_failure');
348
- const firstWork = scoreWork(result);
349
- const altWork = scoreWork(altResult);
350
- const maxWork = Math.max(firstWork, altWork);
351
- const salvageResult = maxWork > 0
352
- ? (firstWork >= altWork ? result : altResult)
353
- : null;
354
- return {
355
- result: altResult,
356
- usedTier: altOfUsed,
357
- fallbackFired: true,
358
- fallbackReason,
359
- fallbackTriggeringStatus,
360
- bothUnavailable: true,
361
- unavailableReason: 'transport_failure',
362
- unavailableTriggeringStatus: altStatus,
363
- salvageResult,
364
- ...(forbidden.length > 0 ? {
365
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
366
- assignedIdentity,
367
- usedIdentity,
368
- } : {}),
369
- };
370
- }
371
- // Alt succeeded
372
- return {
373
- result: altResult,
374
- usedTier: altOfUsed,
375
- fallbackFired: true,
376
- fallbackReason,
377
- fallbackTriggeringStatus,
378
- bothUnavailable: false,
379
- salvageResult: null,
380
- ...(forbidden.length > 0 ? {
381
- fallbackSeparationRespected: skippedDueToSeparation || undefined,
382
- assignedIdentity,
383
- usedIdentity,
384
- } : {}),
385
- };
386
- }
387
- //# sourceMappingURL=fallback.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/escalation/fallback.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './agent-resolver.js';
2
- export * from './escalation-policy.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAEA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
@@ -1,4 +0,0 @@
1
- // escalation/index.ts — public surface barrel; per architecture.md:262-275.
2
- export * from './agent-resolver.js';
3
- export * from './escalation-policy.js';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAE5E,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
@@ -1,37 +0,0 @@
1
- import type { AgentType } from '../types.js';
2
- export type ReworkLoop = 'spec' | 'quality';
3
- /** A single attempt's tier assignments. `null` impl means review-only row
4
- * (only used for quality loop's index 0). */
5
- export interface AttemptAssignment {
6
- impl: AgentType | null;
7
- reviewer: AgentType;
8
- }
9
- export interface EscalationDecision {
10
- /** Tier of the implementer for this attempt. */
11
- impl: AgentType;
12
- /** Tier of the reviewer for the review that follows this impl. */
13
- reviewer: AgentType;
14
- /** True when this attempt swaps off the base tier (used for diagnostics). */
15
- isEscalated: boolean;
16
- }
17
- export declare const SPEC_LOOP_STANDARD: AttemptAssignment[];
18
- export declare const QUALITY_LOOP_STANDARD: AttemptAssignment[];
19
- export declare const SPEC_LOOP_COMPLEX: AttemptAssignment[];
20
- export declare const QUALITY_LOOP_COMPLEX: AttemptAssignment[];
21
- export declare function pickEscalation(input: {
22
- loop: ReworkLoop;
23
- attemptIndex: number;
24
- baseTier: AgentType;
25
- }): EscalationDecision;
26
- export declare function pickReviewer(input: {
27
- loop: ReworkLoop;
28
- attemptIndex: number;
29
- baseTier: AgentType;
30
- }): AgentType;
31
- /** Total number of policy rows in the loop (includes review-only rows). Returns 3. */
32
- export declare function maxRowsFor(_loop: ReworkLoop): number;
33
- /** Number of reworks (impl attempts after initial). Returns 2 for both loops.
34
- * Loop-aware: spec excludes the initial-impl row (length - 1); quality has no
35
- * initial-impl row, so reworks = total impl rows. */
36
- export declare function maxReworksFor(loop: ReworkLoop): number;
37
- //# sourceMappingURL=policy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/escalation/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AAK5C;8CAC8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,IAAI,EAAE,SAAS,CAAC;IAChB,kEAAkE;IAClE,QAAQ,EAAE,SAAS,CAAC;IACpB,6EAA6E;IAC7E,WAAW,EAAE,OAAO,CAAC;CACtB;AAGD,eAAO,MAAM,kBAAkB,EAAE,iBAAiB,EAIjD,CAAC;AAIF,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EAIpD,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAIhD,CAAC;AACF,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAInD,CAAC;AAOF,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB,GAAG,kBAAkB,CAoBrB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB,GAAG,SAAS,CASZ;AAED,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEpD;AAED;;sDAEsD;AACtD,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAItD"}
@@ -1,67 +0,0 @@
1
- // Spec loop: indexed 0 (initial impl) → 1 (rework 1) → 2 (rework 2 = "last try")
2
- export const SPEC_LOOP_STANDARD = [
3
- { impl: 'standard', reviewer: 'complex' },
4
- { impl: 'standard', reviewer: 'complex' },
5
- { impl: 'complex', reviewer: 'standard' },
6
- ];
7
- // Quality loop: indexed 0 (initial review of inherited impl, no rework yet)
8
- // → 1 (rework 1) → 2 (rework 2 = "last try")
9
- export const QUALITY_LOOP_STANDARD = [
10
- { impl: null, reviewer: 'complex' },
11
- { impl: 'standard', reviewer: 'complex' },
12
- { impl: 'complex', reviewer: 'standard' },
13
- ];
14
- // Complex-tier tasks: no policy swap; every row stays on complex impl + standard reviewer
15
- export const SPEC_LOOP_COMPLEX = [
16
- { impl: 'complex', reviewer: 'standard' },
17
- { impl: 'complex', reviewer: 'standard' },
18
- { impl: 'complex', reviewer: 'standard' },
19
- ];
20
- export const QUALITY_LOOP_COMPLEX = [
21
- { impl: null, reviewer: 'standard' },
22
- { impl: 'complex', reviewer: 'standard' },
23
- { impl: 'complex', reviewer: 'standard' },
24
- ];
25
- function pickTable(loop, baseTier) {
26
- if (loop === 'spec')
27
- return baseTier === 'standard' ? SPEC_LOOP_STANDARD : SPEC_LOOP_COMPLEX;
28
- return baseTier === 'standard' ? QUALITY_LOOP_STANDARD : QUALITY_LOOP_COMPLEX;
29
- }
30
- export function pickEscalation(input) {
31
- const table = pickTable(input.loop, input.baseTier);
32
- if (input.attemptIndex < 0 || input.attemptIndex >= table.length) {
33
- throw new Error(`pickEscalation: attemptIndex ${input.attemptIndex} out of range for ` +
34
- `${input.loop}/${input.baseTier} (max ${table.length - 1})`);
35
- }
36
- const row = table[input.attemptIndex];
37
- if (row.impl === null) {
38
- throw new Error(`pickEscalation: ${input.loop} attempt ${input.attemptIndex} has no impl row — ` +
39
- `caller asked for impl tier on a review-only row`);
40
- }
41
- return {
42
- impl: row.impl,
43
- reviewer: row.reviewer,
44
- isEscalated: row.impl !== input.baseTier,
45
- };
46
- }
47
- export function pickReviewer(input) {
48
- const table = pickTable(input.loop, input.baseTier);
49
- if (input.attemptIndex < 0 || input.attemptIndex >= table.length) {
50
- throw new Error(`pickReviewer: attemptIndex ${input.attemptIndex} out of range for ` +
51
- `${input.loop}/${input.baseTier} (max ${table.length - 1})`);
52
- }
53
- return table[input.attemptIndex].reviewer;
54
- }
55
- /** Total number of policy rows in the loop (includes review-only rows). Returns 3. */
56
- export function maxRowsFor(_loop) {
57
- return 3;
58
- }
59
- /** Number of reworks (impl attempts after initial). Returns 2 for both loops.
60
- * Loop-aware: spec excludes the initial-impl row (length - 1); quality has no
61
- * initial-impl row, so reworks = total impl rows. */
62
- export function maxReworksFor(loop) {
63
- const table = pickTable(loop, 'standard');
64
- const implRows = table.filter(r => r.impl !== null).length;
65
- return loop === 'spec' ? implRows - 1 : implRows;
66
- }
67
- //# sourceMappingURL=policy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/escalation/policy.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { ProviderConfig } from '../types.js';
2
- export type EligibilityFailureCheck = 'capability' | 'tier' | 'tool_mode' | 'provider_not_found' | 'unsupported_provider_type' | 'missing_required_field' | string;
3
- export interface EligibilityFailure {
4
- check: EligibilityFailureCheck;
5
- detail: string;
6
- message: string;
7
- }
8
- export interface ProviderEligibility {
9
- name: string;
10
- config: ProviderConfig;
11
- eligible: boolean;
12
- /** Reasons only present when eligible === false. */
13
- reasons: EligibilityFailure[];
14
- }
15
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/escalation/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,uBAAuB,GAC/B,YAAY,GACZ,MAAM,GACN,WAAW,GACX,oBAAoB,GACpB,2BAA2B,GAC3B,wBAAwB,GACxB,MAAM,CAAA;AAEV,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,uBAAuB,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,cAAc,CAAA;IACtB,QAAQ,EAAE,OAAO,CAAA;IACjB,oDAAoD;IACpD,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAC9B"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/escalation/types.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- /**
2
- * RunningHeadlineSink — bus sink that translates per-turn runner events
3
- * into a rich `runningHeadlineSnapshot` so /batch/:id polling shows the
4
- * main agent something like:
5
- *
6
- * [3/7] Quality review (Complex) - 3m 41s, 12 read, 0 write, 18 tool calls
7
- *
8
- * `[X/Y]` is the lifecycle stage cursor — current macro stage of the
9
- * total stages possible for this tool category. Y is hardcoded per route
10
- * (the lifecycle plan is deterministic given toolCategory + reviewPolicy);
11
- * X advances as runner_turn_completed events report new stageLabels.
12
- *
13
- * Listens to `runner_turn_completed` events emitted by the provider
14
- * sessions. Keeps
15
- * a per-batch tally + latest stage + latest tier and updates the
16
- * registry's snapshot. Never emits to stderr (that's VerboseLogChannel's
17
- * job) — pure progress visibility for the polling tool.
18
- */
19
- import type { BatchRegistry } from '../stores/batch-registry.js';
20
- export declare class RunningHeadlineSink {
21
- private readonly batchRegistry;
22
- readonly name = "running-headline";
23
- private progress;
24
- constructor(batchRegistry: BatchRegistry);
25
- emit(event: Record<string, unknown>): void;
26
- }
27
- //# sourceMappingURL=running-headline-sink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"running-headline-sink.d.ts","sourceRoot":"","sources":["../../src/events/running-headline-sink.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAgDjE,qBAAa,mBAAmB;IAIlB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAH1C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,OAAO,CAAC,QAAQ,CAAmD;gBAEtC,aAAa,EAAE,aAAa;IAEzD,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAkI3C"}