agent-nuvira 3.3.13 → 3.3.15

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 (398) hide show
  1. package/README.md +67 -1
  2. package/dist/agents/agents/planner.d.ts.map +1 -1
  3. package/dist/agents/agents/planner.js +9 -0
  4. package/dist/agents/agents/planner.js.map +1 -1
  5. package/dist/agents/orchestrator.d.ts +31 -0
  6. package/dist/agents/orchestrator.d.ts.map +1 -1
  7. package/dist/agents/orchestrator.js +74 -126
  8. package/dist/agents/orchestrator.js.map +1 -1
  9. package/dist/cli/chat.d.ts +89 -0
  10. package/dist/cli/chat.d.ts.map +1 -1
  11. package/dist/cli/chat.js +765 -33
  12. package/dist/cli/chat.js.map +1 -1
  13. package/dist/cli/cli-program.d.ts.map +1 -1
  14. package/dist/cli/cli-program.js +12 -0
  15. package/dist/cli/cli-program.js.map +1 -1
  16. package/dist/cli/config.d.ts +12 -0
  17. package/dist/cli/config.d.ts.map +1 -1
  18. package/dist/cli/config.js +86 -0
  19. package/dist/cli/config.js.map +1 -1
  20. package/dist/cli/decisions.d.ts +28 -0
  21. package/dist/cli/decisions.d.ts.map +1 -0
  22. package/dist/cli/decisions.js +140 -0
  23. package/dist/cli/decisions.js.map +1 -0
  24. package/dist/cli/doctor.d.ts +6 -0
  25. package/dist/cli/doctor.d.ts.map +1 -1
  26. package/dist/cli/doctor.js +46 -0
  27. package/dist/cli/doctor.js.map +1 -1
  28. package/dist/cli/failover-runner.d.ts.map +1 -1
  29. package/dist/cli/failover-runner.js +19 -1
  30. package/dist/cli/failover-runner.js.map +1 -1
  31. package/dist/cli/feedback.d.ts.map +1 -1
  32. package/dist/cli/feedback.js +5 -1
  33. package/dist/cli/feedback.js.map +1 -1
  34. package/dist/cli/hooks.d.ts +30 -0
  35. package/dist/cli/hooks.d.ts.map +1 -0
  36. package/dist/cli/hooks.js +224 -0
  37. package/dist/cli/hooks.js.map +1 -0
  38. package/dist/cli/knowledge.d.ts +9 -1
  39. package/dist/cli/knowledge.d.ts.map +1 -1
  40. package/dist/cli/knowledge.js +93 -2
  41. package/dist/cli/knowledge.js.map +1 -1
  42. package/dist/cli/loop-executor.d.ts.map +1 -1
  43. package/dist/cli/loop-executor.js +47 -12
  44. package/dist/cli/loop-executor.js.map +1 -1
  45. package/dist/cli/model.d.ts +20 -0
  46. package/dist/cli/model.d.ts.map +1 -1
  47. package/dist/cli/model.js +294 -14
  48. package/dist/cli/model.js.map +1 -1
  49. package/dist/cli/rate.d.ts +78 -0
  50. package/dist/cli/rate.d.ts.map +1 -0
  51. package/dist/cli/rate.js +294 -0
  52. package/dist/cli/rate.js.map +1 -0
  53. package/dist/config/process-env.d.ts.map +1 -1
  54. package/dist/config/process-env.js +10 -0
  55. package/dist/config/process-env.js.map +1 -1
  56. package/dist/enterprise/vault.d.ts.map +1 -1
  57. package/dist/enterprise/vault.js +5 -21
  58. package/dist/enterprise/vault.js.map +1 -1
  59. package/dist/gateway/hook-contract.d.ts +33 -0
  60. package/dist/gateway/hook-contract.d.ts.map +1 -1
  61. package/dist/gateway/hook-contract.js +97 -0
  62. package/dist/gateway/hook-contract.js.map +1 -1
  63. package/dist/inference/gemini-adapter.d.ts.map +1 -1
  64. package/dist/inference/gemini-adapter.js +4 -0
  65. package/dist/inference/gemini-adapter.js.map +1 -1
  66. package/dist/inference/interface.d.ts +37 -0
  67. package/dist/inference/interface.d.ts.map +1 -1
  68. package/dist/inference/native-tools.d.ts +16 -1
  69. package/dist/inference/native-tools.d.ts.map +1 -1
  70. package/dist/inference/native-tools.js +34 -10
  71. package/dist/inference/native-tools.js.map +1 -1
  72. package/dist/inference/route-resolver.d.ts +30 -0
  73. package/dist/inference/route-resolver.d.ts.map +1 -1
  74. package/dist/inference/route-resolver.js +158 -1
  75. package/dist/inference/route-resolver.js.map +1 -1
  76. package/dist/inference/tools.d.ts +16 -1
  77. package/dist/inference/tools.d.ts.map +1 -1
  78. package/dist/inference/tools.js +51 -18
  79. package/dist/inference/tools.js.map +1 -1
  80. package/dist/learning/acceptance-model.d.ts +247 -0
  81. package/dist/learning/acceptance-model.d.ts.map +1 -0
  82. package/dist/learning/acceptance-model.js +708 -0
  83. package/dist/learning/acceptance-model.js.map +1 -0
  84. package/dist/learning/auto-router.d.ts +68 -24
  85. package/dist/learning/auto-router.d.ts.map +1 -1
  86. package/dist/learning/auto-router.js +301 -96
  87. package/dist/learning/auto-router.js.map +1 -1
  88. package/dist/learning/autonomy-policy.d.ts +12 -16
  89. package/dist/learning/autonomy-policy.d.ts.map +1 -1
  90. package/dist/learning/autonomy-policy.js +50 -48
  91. package/dist/learning/autonomy-policy.js.map +1 -1
  92. package/dist/learning/behavioural-labels.d.ts +86 -0
  93. package/dist/learning/behavioural-labels.d.ts.map +1 -0
  94. package/dist/learning/behavioural-labels.js +166 -0
  95. package/dist/learning/behavioural-labels.js.map +1 -0
  96. package/dist/learning/capability-evidence.d.ts +167 -0
  97. package/dist/learning/capability-evidence.d.ts.map +1 -0
  98. package/dist/learning/capability-evidence.js +210 -0
  99. package/dist/learning/capability-evidence.js.map +1 -0
  100. package/dist/learning/capability-readiness.d.ts +64 -0
  101. package/dist/learning/capability-readiness.d.ts.map +1 -0
  102. package/dist/learning/capability-readiness.js +74 -0
  103. package/dist/learning/capability-readiness.js.map +1 -0
  104. package/dist/learning/capability-types.d.ts +169 -0
  105. package/dist/learning/capability-types.d.ts.map +1 -0
  106. package/dist/learning/capability-types.js +20 -0
  107. package/dist/learning/capability-types.js.map +1 -0
  108. package/dist/learning/catalog-feed.d.ts +89 -0
  109. package/dist/learning/catalog-feed.d.ts.map +1 -0
  110. package/dist/learning/catalog-feed.js +211 -0
  111. package/dist/learning/catalog-feed.js.map +1 -0
  112. package/dist/learning/cli-intent-effects.d.ts +60 -0
  113. package/dist/learning/cli-intent-effects.d.ts.map +1 -0
  114. package/dist/learning/cli-intent-effects.js +153 -0
  115. package/dist/learning/cli-intent-effects.js.map +1 -0
  116. package/dist/learning/command-adaptation.d.ts +41 -0
  117. package/dist/learning/command-adaptation.d.ts.map +1 -0
  118. package/dist/learning/command-adaptation.js +122 -0
  119. package/dist/learning/command-adaptation.js.map +1 -0
  120. package/dist/learning/consent-picture.d.ts +42 -0
  121. package/dist/learning/consent-picture.d.ts.map +1 -0
  122. package/dist/learning/consent-picture.js +53 -0
  123. package/dist/learning/consent-picture.js.map +1 -0
  124. package/dist/learning/context-budget.d.ts +37 -6
  125. package/dist/learning/context-budget.d.ts.map +1 -1
  126. package/dist/learning/context-budget.js +38 -9
  127. package/dist/learning/context-budget.js.map +1 -1
  128. package/dist/learning/decision-log.d.ts +114 -0
  129. package/dist/learning/decision-log.d.ts.map +1 -0
  130. package/dist/learning/decision-log.js +296 -0
  131. package/dist/learning/decision-log.js.map +1 -0
  132. package/dist/learning/deliverable-class.d.ts.map +1 -1
  133. package/dist/learning/deliverable-class.js +19 -0
  134. package/dist/learning/deliverable-class.js.map +1 -1
  135. package/dist/learning/deliverable-corpus.d.ts +117 -0
  136. package/dist/learning/deliverable-corpus.d.ts.map +1 -0
  137. package/dist/learning/deliverable-corpus.js +176 -0
  138. package/dist/learning/deliverable-corpus.js.map +1 -0
  139. package/dist/learning/error-repair.d.ts +22 -1
  140. package/dist/learning/error-repair.d.ts.map +1 -1
  141. package/dist/learning/error-repair.js +37 -0
  142. package/dist/learning/error-repair.js.map +1 -1
  143. package/dist/learning/exhaustion-report.d.ts +136 -0
  144. package/dist/learning/exhaustion-report.d.ts.map +1 -0
  145. package/dist/learning/exhaustion-report.js +239 -0
  146. package/dist/learning/exhaustion-report.js.map +1 -0
  147. package/dist/learning/failure-bookkeeping.d.ts +16 -0
  148. package/dist/learning/failure-bookkeeping.d.ts.map +1 -1
  149. package/dist/learning/failure-bookkeeping.js +51 -5
  150. package/dist/learning/failure-bookkeeping.js.map +1 -1
  151. package/dist/learning/gate-friction.d.ts +39 -0
  152. package/dist/learning/gate-friction.d.ts.map +1 -0
  153. package/dist/learning/gate-friction.js +91 -0
  154. package/dist/learning/gate-friction.js.map +1 -0
  155. package/dist/learning/harness-narration.d.ts +34 -0
  156. package/dist/learning/harness-narration.d.ts.map +1 -0
  157. package/dist/learning/harness-narration.js +58 -0
  158. package/dist/learning/harness-narration.js.map +1 -0
  159. package/dist/learning/hub-skill-catalog.d.ts.map +1 -1
  160. package/dist/learning/hub-skill-catalog.js +1 -2
  161. package/dist/learning/hub-skill-catalog.js.map +1 -1
  162. package/dist/learning/hybrid-router.d.ts +65 -0
  163. package/dist/learning/hybrid-router.d.ts.map +1 -1
  164. package/dist/learning/hybrid-router.js +186 -0
  165. package/dist/learning/hybrid-router.js.map +1 -1
  166. package/dist/learning/knowledge-base.d.ts +229 -3
  167. package/dist/learning/knowledge-base.d.ts.map +1 -1
  168. package/dist/learning/knowledge-base.js +603 -25
  169. package/dist/learning/knowledge-base.js.map +1 -1
  170. package/dist/learning/knowledge-eval.d.ts +171 -0
  171. package/dist/learning/knowledge-eval.d.ts.map +1 -0
  172. package/dist/learning/knowledge-eval.js +196 -0
  173. package/dist/learning/knowledge-eval.js.map +1 -0
  174. package/dist/learning/knowledge-turn.d.ts +92 -0
  175. package/dist/learning/knowledge-turn.d.ts.map +1 -0
  176. package/dist/learning/knowledge-turn.js +190 -0
  177. package/dist/learning/knowledge-turn.js.map +1 -0
  178. package/dist/learning/learned-commands.d.ts +64 -0
  179. package/dist/learning/learned-commands.d.ts.map +1 -0
  180. package/dist/learning/learned-commands.js +108 -0
  181. package/dist/learning/learned-commands.js.map +1 -0
  182. package/dist/learning/lexical-search.d.ts +50 -0
  183. package/dist/learning/lexical-search.d.ts.map +1 -0
  184. package/dist/learning/lexical-search.js +111 -0
  185. package/dist/learning/lexical-search.js.map +1 -0
  186. package/dist/learning/machine-facts.d.ts +71 -0
  187. package/dist/learning/machine-facts.d.ts.map +1 -0
  188. package/dist/learning/machine-facts.js +164 -0
  189. package/dist/learning/machine-facts.js.map +1 -0
  190. package/dist/learning/markdown-outline.d.ts +73 -0
  191. package/dist/learning/markdown-outline.d.ts.map +1 -0
  192. package/dist/learning/markdown-outline.js +136 -0
  193. package/dist/learning/markdown-outline.js.map +1 -0
  194. package/dist/learning/model-first-router.d.ts +33 -1
  195. package/dist/learning/model-first-router.d.ts.map +1 -1
  196. package/dist/learning/model-first-router.js +123 -9
  197. package/dist/learning/model-first-router.js.map +1 -1
  198. package/dist/learning/model-identity.d.ts +80 -0
  199. package/dist/learning/model-identity.d.ts.map +1 -0
  200. package/dist/learning/model-identity.js +115 -0
  201. package/dist/learning/model-identity.js.map +1 -0
  202. package/dist/learning/model-registry.d.ts +141 -2
  203. package/dist/learning/model-registry.d.ts.map +1 -1
  204. package/dist/learning/model-registry.js +324 -38
  205. package/dist/learning/model-registry.js.map +1 -1
  206. package/dist/learning/model-scoring.d.ts.map +1 -1
  207. package/dist/learning/model-scoring.js +8 -1
  208. package/dist/learning/model-scoring.js.map +1 -1
  209. package/dist/learning/model-selection.d.ts.map +1 -1
  210. package/dist/learning/model-selection.js +41 -0
  211. package/dist/learning/model-selection.js.map +1 -1
  212. package/dist/learning/outcome-observation.d.ts +49 -0
  213. package/dist/learning/outcome-observation.d.ts.map +1 -0
  214. package/dist/learning/outcome-observation.js +95 -0
  215. package/dist/learning/outcome-observation.js.map +1 -0
  216. package/dist/learning/pair-entitlement.d.ts +184 -0
  217. package/dist/learning/pair-entitlement.d.ts.map +1 -0
  218. package/dist/learning/pair-entitlement.js +214 -0
  219. package/dist/learning/pair-entitlement.js.map +1 -0
  220. package/dist/learning/provider-fallback.d.ts +23 -1
  221. package/dist/learning/provider-fallback.d.ts.map +1 -1
  222. package/dist/learning/provider-fallback.js +24 -0
  223. package/dist/learning/provider-fallback.js.map +1 -1
  224. package/dist/learning/reasoning-trace.d.ts +65 -1
  225. package/dist/learning/reasoning-trace.d.ts.map +1 -1
  226. package/dist/learning/reasoning-trace.js +123 -1
  227. package/dist/learning/reasoning-trace.js.map +1 -1
  228. package/dist/learning/requirement-probe.d.ts +55 -0
  229. package/dist/learning/requirement-probe.d.ts.map +1 -0
  230. package/dist/learning/requirement-probe.js +77 -0
  231. package/dist/learning/requirement-probe.js.map +1 -0
  232. package/dist/learning/resilient-call.d.ts +20 -1
  233. package/dist/learning/resilient-call.d.ts.map +1 -1
  234. package/dist/learning/resilient-call.js +42 -4
  235. package/dist/learning/resilient-call.js.map +1 -1
  236. package/dist/learning/response-usability.d.ts +85 -0
  237. package/dist/learning/response-usability.d.ts.map +1 -0
  238. package/dist/learning/response-usability.js +135 -0
  239. package/dist/learning/response-usability.js.map +1 -0
  240. package/dist/learning/router-bandit.d.ts +132 -0
  241. package/dist/learning/router-bandit.d.ts.map +1 -1
  242. package/dist/learning/router-bandit.js +253 -0
  243. package/dist/learning/router-bandit.js.map +1 -1
  244. package/dist/learning/routing-history.d.ts +41 -2
  245. package/dist/learning/routing-history.d.ts.map +1 -1
  246. package/dist/learning/routing-history.js.map +1 -1
  247. package/dist/learning/run-trace.d.ts +21 -0
  248. package/dist/learning/run-trace.d.ts.map +1 -1
  249. package/dist/learning/run-trace.js +38 -0
  250. package/dist/learning/run-trace.js.map +1 -1
  251. package/dist/learning/session-grant.d.ts +75 -0
  252. package/dist/learning/session-grant.d.ts.map +1 -0
  253. package/dist/learning/session-grant.js +112 -0
  254. package/dist/learning/session-grant.js.map +1 -0
  255. package/dist/learning/task-model-continuity.d.ts +73 -0
  256. package/dist/learning/task-model-continuity.d.ts.map +1 -0
  257. package/dist/learning/task-model-continuity.js +87 -0
  258. package/dist/learning/task-model-continuity.js.map +1 -0
  259. package/dist/learning/turn-feedback.d.ts +93 -0
  260. package/dist/learning/turn-feedback.d.ts.map +1 -0
  261. package/dist/learning/turn-feedback.js +127 -0
  262. package/dist/learning/turn-feedback.js.map +1 -0
  263. package/dist/learning/turn-report.d.ts +104 -2
  264. package/dist/learning/turn-report.d.ts.map +1 -1
  265. package/dist/learning/turn-report.js +161 -6
  266. package/dist/learning/turn-report.js.map +1 -1
  267. package/dist/learning/verdict-routing.d.ts +51 -0
  268. package/dist/learning/verdict-routing.d.ts.map +1 -0
  269. package/dist/learning/verdict-routing.js +122 -0
  270. package/dist/learning/verdict-routing.js.map +1 -0
  271. package/dist/mcp/client.d.ts.map +1 -1
  272. package/dist/mcp/client.js +5 -0
  273. package/dist/mcp/client.js.map +1 -1
  274. package/dist/mcp/manager.d.ts +10 -0
  275. package/dist/mcp/manager.d.ts.map +1 -1
  276. package/dist/mcp/manager.js +20 -0
  277. package/dist/mcp/manager.js.map +1 -1
  278. package/dist/mcp/mcp-discovery.d.ts +34 -0
  279. package/dist/mcp/mcp-discovery.d.ts.map +1 -0
  280. package/dist/mcp/mcp-discovery.js +71 -0
  281. package/dist/mcp/mcp-discovery.js.map +1 -0
  282. package/dist/mcp/mcp-schema-cache.d.ts +17 -0
  283. package/dist/mcp/mcp-schema-cache.d.ts.map +1 -1
  284. package/dist/mcp/mcp-schema-cache.js +47 -3
  285. package/dist/mcp/mcp-schema-cache.js.map +1 -1
  286. package/dist/mcp/types.d.ts +28 -0
  287. package/dist/mcp/types.d.ts.map +1 -1
  288. package/dist/mcp/types.js.map +1 -1
  289. package/dist/parity/drivers.d.ts.map +1 -1
  290. package/dist/parity/drivers.js +3 -0
  291. package/dist/parity/drivers.js.map +1 -1
  292. package/dist/parity/observation.d.ts +12 -0
  293. package/dist/parity/observation.d.ts.map +1 -1
  294. package/dist/parity/observation.js +14 -0
  295. package/dist/parity/observation.js.map +1 -1
  296. package/dist/tools/ask-user.d.ts.map +1 -1
  297. package/dist/tools/ask-user.js +4 -0
  298. package/dist/tools/ask-user.js.map +1 -1
  299. package/dist/tools/capability-registry.d.ts +150 -0
  300. package/dist/tools/capability-registry.d.ts.map +1 -0
  301. package/dist/tools/capability-registry.js +400 -0
  302. package/dist/tools/capability-registry.js.map +1 -0
  303. package/dist/tools/child-agent-runtime.d.ts.map +1 -1
  304. package/dist/tools/child-agent-runtime.js +19 -5
  305. package/dist/tools/child-agent-runtime.js.map +1 -1
  306. package/dist/tools/coding-tools.d.ts +17 -5
  307. package/dist/tools/coding-tools.d.ts.map +1 -1
  308. package/dist/tools/coding-tools.js +80 -11
  309. package/dist/tools/coding-tools.js.map +1 -1
  310. package/dist/tools/command-memo.d.ts +116 -0
  311. package/dist/tools/command-memo.d.ts.map +1 -0
  312. package/dist/tools/command-memo.js +202 -0
  313. package/dist/tools/command-memo.js.map +1 -0
  314. package/dist/tools/git-tool.d.ts.map +1 -1
  315. package/dist/tools/git-tool.js +13 -3
  316. package/dist/tools/git-tool.js.map +1 -1
  317. package/dist/tools/harness-directive.d.ts +42 -0
  318. package/dist/tools/harness-directive.d.ts.map +1 -0
  319. package/dist/tools/harness-directive.js +45 -0
  320. package/dist/tools/harness-directive.js.map +1 -0
  321. package/dist/tools/loop-skill-hint.d.ts +74 -174
  322. package/dist/tools/loop-skill-hint.d.ts.map +1 -1
  323. package/dist/tools/loop-skill-hint.js +110 -536
  324. package/dist/tools/loop-skill-hint.js.map +1 -1
  325. package/dist/tools/mcp-client-tool.d.ts +2 -0
  326. package/dist/tools/mcp-client-tool.d.ts.map +1 -1
  327. package/dist/tools/mcp-client-tool.js +3 -0
  328. package/dist/tools/mcp-client-tool.js.map +1 -1
  329. package/dist/tools/modality/shared.d.ts +1 -4
  330. package/dist/tools/modality/shared.d.ts.map +1 -1
  331. package/dist/tools/modality/shared.js +7 -22
  332. package/dist/tools/modality/shared.js.map +1 -1
  333. package/dist/tools/plan-store.d.ts +20 -2
  334. package/dist/tools/plan-store.d.ts.map +1 -1
  335. package/dist/tools/plan-store.js +51 -7
  336. package/dist/tools/plan-store.js.map +1 -1
  337. package/dist/tools/registry.d.ts +76 -3
  338. package/dist/tools/registry.d.ts.map +1 -1
  339. package/dist/tools/registry.js +486 -26
  340. package/dist/tools/registry.js.map +1 -1
  341. package/dist/tools/remediation-ladder.d.ts.map +1 -1
  342. package/dist/tools/remediation-ladder.js +8 -0
  343. package/dist/tools/remediation-ladder.js.map +1 -1
  344. package/dist/tools/run-cli.d.ts.map +1 -1
  345. package/dist/tools/run-cli.js +29 -4
  346. package/dist/tools/run-cli.js.map +1 -1
  347. package/dist/tools/run-terminal.d.ts +11 -0
  348. package/dist/tools/run-terminal.d.ts.map +1 -1
  349. package/dist/tools/run-terminal.js +265 -10
  350. package/dist/tools/run-terminal.js.map +1 -1
  351. package/dist/tools/tool-loop.d.ts +321 -13
  352. package/dist/tools/tool-loop.d.ts.map +1 -1
  353. package/dist/tools/tool-loop.js +867 -66
  354. package/dist/tools/tool-loop.js.map +1 -1
  355. package/dist/utils/atomic-store.d.ts +53 -0
  356. package/dist/utils/atomic-store.d.ts.map +1 -0
  357. package/dist/utils/atomic-store.js +178 -0
  358. package/dist/utils/atomic-store.js.map +1 -0
  359. package/dist/utils/binary-probe.d.ts +25 -0
  360. package/dist/utils/binary-probe.d.ts.map +1 -0
  361. package/dist/utils/binary-probe.js +48 -0
  362. package/dist/utils/binary-probe.js.map +1 -0
  363. package/dist/utils/workspace-path.d.ts +50 -0
  364. package/dist/utils/workspace-path.d.ts.map +1 -0
  365. package/dist/utils/workspace-path.js +86 -0
  366. package/dist/utils/workspace-path.js.map +1 -0
  367. package/dist/web-dashboard/chat-console.d.ts +24 -0
  368. package/dist/web-dashboard/chat-console.d.ts.map +1 -1
  369. package/dist/web-dashboard/chat-console.js +38 -0
  370. package/dist/web-dashboard/chat-console.js.map +1 -1
  371. package/dist/web-dashboard/project-context.d.ts +27 -2
  372. package/dist/web-dashboard/project-context.d.ts.map +1 -1
  373. package/dist/web-dashboard/project-context.js +32 -2
  374. package/dist/web-dashboard/project-context.js.map +1 -1
  375. package/dist/web-dashboard/server.d.ts +11 -0
  376. package/dist/web-dashboard/server.d.ts.map +1 -1
  377. package/dist/web-dashboard/server.js +362 -11
  378. package/dist/web-dashboard/server.js.map +1 -1
  379. package/dist/web-dashboard/src/types.d.ts +170 -1
  380. package/dist/web-dashboard/src/types.d.ts.map +1 -1
  381. package/dist/web-dashboard/workspace-guard.d.ts +11 -2
  382. package/dist/web-dashboard/workspace-guard.d.ts.map +1 -1
  383. package/dist/web-dashboard/workspace-guard.js +24 -12
  384. package/dist/web-dashboard/workspace-guard.js.map +1 -1
  385. package/dist/web-dashboard/workspace-resolution.d.ts +87 -0
  386. package/dist/web-dashboard/workspace-resolution.d.ts.map +1 -0
  387. package/dist/web-dashboard/workspace-resolution.js +105 -0
  388. package/dist/web-dashboard/workspace-resolution.js.map +1 -0
  389. package/package.json +1 -1
  390. package/src/web-dashboard/public/assets/index-zjbdJnO-.js +210 -0
  391. package/src/web-dashboard/public/assets/index-zjbdJnO-.js.map +1 -0
  392. package/src/web-dashboard/public/index.html +1 -1
  393. package/dist/agents/nvda-addon.d.ts +0 -14
  394. package/dist/agents/nvda-addon.js +0 -52
  395. package/dist/forwarded.d.ts +0 -2
  396. package/dist/forwarded.js +0 -2
  397. package/src/web-dashboard/public/assets/index-DhiuR4S2.js +0 -210
  398. package/src/web-dashboard/public/assets/index-DhiuR4S2.js.map +0 -1
@@ -34,11 +34,12 @@ import { getAutoRouter } from './auto-router.js';
34
34
  import { analyzeComplexity } from './hybrid-router.js';
35
35
  import { buildAutoResolveOptions } from './resolve-options.js';
36
36
  import { buildModelCandidates, buildTieredFailoverChain, countEligibleModels } from './model-first-router.js';
37
+ import { assertUsableModelResponse, isUnusableModelResponseError } from './response-usability.js';
37
38
  import { recordModelUsage } from './model-warmup.js';
38
39
  import { getDefaultModel } from '../inference/provider-catalog.js';
39
40
  import { resolveRoute } from '../inference/route-resolver.js';
40
41
  import { getModelRegistry } from './model-registry.js';
41
- import { recordActionFailure } from './failure-bookkeeping.js';
42
+ import { recordActionFailure, EMPTY_RESPONSE_SESSION_EXCLUSION_MS, } from './failure-bookkeeping.js';
42
43
  import { sweepTransientFailures } from './provider-revival.js';
43
44
  import { getProviderFallback, recordRegistrySuccess } from './provider-fallback.js';
44
45
  import { ProviderFactory } from '../inference/factory.js';
@@ -74,10 +75,21 @@ const RATE_LIMIT_EXCLUSION_MS = 60_000;
74
75
  const NETWORK_FAILURE_EXCLUSION_MS = 30_000;
75
76
  /** How long a provider is excluded after model-not-found (long cooldown). */
76
77
  const MODEL_NOT_FOUND_EXCLUSION_MS = 300_000;
78
+ /**
79
+ * How long a pair is excluded after resolving with an unusable (empty)
80
+ * response. Defined ONCE in `failure-bookkeeping.ts` (it is the same fact) so
81
+ * this walk, chat's deep pool and the loop executor cannot drift apart.
82
+ */
83
+ const EMPTY_RESPONSE_EXCLUSION_MS = EMPTY_RESPONSE_SESSION_EXCLUSION_MS;
77
84
  /** Cross-pipeline failure persistence path. */
78
85
  const FAILURE_PERSIST_PATH = 'nuvira-routing-failures.json';
79
86
  // ─── Failure Classification ─────────────────────────────────────────────────
80
87
  function classifyFailure(err) {
88
+ // A response that resolved but carried nothing is its own kind: it is not an
89
+ // HTTP failure and must not be bucketed as `unknown`, because the report and
90
+ // the router's learning key off it.
91
+ if (isUnusableModelResponseError(err))
92
+ return 'empty-response';
81
93
  const msg = err instanceof Error ? err.message : String(err);
82
94
  const lower = msg.toLowerCase();
83
95
  if (lower.includes('401') || lower.includes('unauthorized') || lower.includes('invalid api key') || lower.includes('authentication')) {
@@ -104,6 +116,11 @@ function exclusionDuration(kind) {
104
116
  case 'timeout': return NETWORK_FAILURE_EXCLUSION_MS;
105
117
  case 'network': return NETWORK_FAILURE_EXCLUSION_MS;
106
118
  case 'model-not-found': return MODEL_NOT_FOUND_EXCLUSION_MS;
119
+ // A provider that answers with nothing gets a longer cool-off than a blip:
120
+ // within the turn the session exclusion already keeps it out, and across
121
+ // turns this stops a model known to return nothing from being re-picked
122
+ // while still letting a genuinely transient empty self-heal (2 minutes).
123
+ case 'empty-response': return EMPTY_RESPONSE_EXCLUSION_MS;
107
124
  case 'unknown': return NETWORK_FAILURE_EXCLUSION_MS;
108
125
  }
109
126
  }
@@ -570,6 +587,17 @@ export function createResilientCallLLM(configManager, options) {
570
587
  state.currentProvider = candidate.provider;
571
588
  state.currentModel = candidate.model;
572
589
  const result = await adapter.generate(prompt, mergedOptions);
590
+ // fix_model_routing P1 — AN EMPTY COMPLETION IS A FAILURE, NOT A SUCCESS.
591
+ // `adapter.generate` returns TEXT ONLY (tool calls travel via
592
+ // `generateTools`), so a blank string here provably carries nothing. It
593
+ // used to be returned as a success, which is why a provider answering
594
+ // HTTP 200 with zero content kept its `verified` status, kept
595
+ // `errorRate 0`, and was re-picked on the next turn while the walk never
596
+ // advanced — the run that died with 5 empty responses and 0 tool calls.
597
+ // Throwing here routes it through the SAME handler as a thrown provider
598
+ // error: the candidate is excluded, the failure is persisted and named,
599
+ // and the walk moves to the next model.
600
+ assertUsableModelResponse(result);
573
601
  // Success — reset failover counter for this candidate
574
602
  state.currentAttempt = 0;
575
603
  // Record success in registry
@@ -763,11 +791,12 @@ export function buildDeepFailoverPool(decision, opts = {}) {
763
791
  return [];
764
792
  const { taskDescription, complexity, configManager } = opts;
765
793
  const candidates = [];
766
- // Primary candidate
794
+ // Primary candidate — the router's own pick, so its composite IS this pair's.
767
795
  candidates.push({
768
796
  provider: decision.provider,
769
797
  model: decision.model,
770
798
  score: decision.score,
799
+ scoreBasis: 'provider',
771
800
  });
772
801
  // ── TIERED FAILOVER: capability-based with quota pre-check ────────────
773
802
  // Strategy (Dheeraj's design):
@@ -800,6 +829,7 @@ export function buildDeepFailoverPool(decision, opts = {}) {
800
829
  provider: fc.provider,
801
830
  model: fc.model,
802
831
  score: fc.score,
832
+ scoreBasis: 'model',
803
833
  });
804
834
  }
805
835
  }
@@ -829,6 +859,8 @@ export function buildDeepFailoverPool(decision, opts = {}) {
829
859
  // Keep the chain's own order meaningful: the router already ranked these
830
860
  // (primary picks before alternates, reserve last). A real model from the
831
861
  // chain outranks a bare provider placeholder.
862
+ // A placeholder, deliberately: the chain's ORDER is meaningful, its number
863
+ // is not evidence about the pair. Hence no `scoreBasis`.
832
864
  score: model === 'default' ? 0.05 : 0.5,
833
865
  });
834
866
  }
@@ -844,6 +876,7 @@ export function buildDeepFailoverPool(decision, opts = {}) {
844
876
  provider: ranked.provider,
845
877
  model: 'default', // Will be resolved at call time
846
878
  score: ranked.score,
879
+ scoreBasis: 'provider',
847
880
  });
848
881
  }
849
882
  // Add fallback chain candidates (from the config's fallback.providers)
@@ -855,7 +888,8 @@ export function buildDeepFailoverPool(decision, opts = {}) {
855
888
  candidates.push({
856
889
  provider: fb,
857
890
  model: 'default',
858
- score: 0.1, // Low score — these are last-resort
891
+ // A placeholder — last-resort ordering only, no `scoreBasis`.
892
+ score: 0.1,
859
893
  });
860
894
  }
861
895
  }
@@ -1062,7 +1096,11 @@ export function modelBreadthReport(mark, configManager) {
1062
1096
  }, undefined);
1063
1097
  // The pool size is measured, never assumed — it is what decides whether a
1064
1098
  // "no model is available" claim is allowed to be made at all (G9).
1065
- const pool = countEligibleModels();
1099
+ // P5 — the pool claim is made from the CREDENTIALED set when a ConfigManager is
1100
+ // available, so "N eligible models" cannot include providers this machine has
1101
+ // no key for (the live over-report: 538 models across 23 providers, most of
1102
+ // them uncredentialed).
1103
+ const pool = countEligibleModels(undefined, configManager);
1066
1104
  return {
1067
1105
  tried,
1068
1106
  parked,
@@ -1 +1 @@
1
- {"version":3,"file":"resilient-call.js","sourceRoot":"","sources":["../../src/learning/resilient-call.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,aAAa,EAA6C,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,iBAAiB,EAAwB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAA4B,MAAM,0BAA0B,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAsE5C,4DAA4D;AAC5D,SAAS,QAAQ,CAAC,QAAgB,EAAE,KAAa;IAC/C,OAAO,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC;AAChC,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,yBAAyB,GAAG,EAAE,GAAG,MAAM,CAAC;AAC9C,yEAAyE;AACzE,MAAM,uBAAuB,GAAG,MAAM,CAAC;AACvC,+EAA+E;AAC/E,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAC5C,6EAA6E;AAC7E,MAAM,4BAA4B,GAAG,OAAO,CAAC;AAC7C,+CAA+C;AAC/C,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAE5D,+EAA+E;AAE/E,SAAS,eAAe,CAAC,GAAY;IACnC,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAEhC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrI,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC5H,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACxF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1J,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACnI,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiB;IAC1C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,OAAO,yBAAyB,CAAC;QAC9C,KAAK,YAAY,CAAC,CAAC,OAAO,uBAAuB,CAAC;QAClD,KAAK,SAAS,CAAC,CAAC,OAAO,4BAA4B,CAAC;QACpD,KAAK,SAAS,CAAC,CAAC,OAAO,4BAA4B,CAAC;QACpD,KAAK,iBAAiB,CAAC,CAAC,OAAO,4BAA4B,CAAC;QAC5D,KAAK,SAAS,CAAC,CAAC,OAAO,4BAA4B,CAAC;IACtD,CAAC;AACH,CAAC;AAiDD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,yBAAyB,CAAC,aAA6B;IACrE,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,aAAa,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEzD,oCAAoC;IACpC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QACzD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAsB,CAAC;YAC1E,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;oBAAE,SAAS;gBAC5D,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBACpF,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ;oBACR,KAAK;oBACL,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,SAAS;oBAC7B,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;oBACnC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;oBACjC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,kBAAkB;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;IAED,2EAA2E;IAC3E,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;QACpC,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC;YACtD,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ;gBACR,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,UAAU;gBACjB,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,CAAC;gBACZ,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,UAAU;aACnB,CAAC,CAAC;QACL,CAAC;QACD,2EAA2E;QAC3E,0EAA0E;QAC1E,oEAAoE;QACpE,kEAAkE;QAClE,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,OAAO;gBACd,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,CAAC;gBACZ,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,UAAU;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAyB,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAChF,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACvC,OAAO,MAAM,MAAM,uIAAuI,CAAC;IAC7J,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC5B,OAAO,MAAM,MAAM,sHAAsH,CAAC,CAAC,QAAQ,sBAAsB,CAAC;IAC5K,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QACjD,OAAO,KAAK,MAAM,MAAM,CAAC,CAAC,IAAI,2FAA2F,CAAC;IAC5H,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;QACjH,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/F,OAAO,KAAK,MAAM,MAAM,CAAC,CAAC,IAAI,iBAAiB,IAAI,YAAY,GAAG,iBAAiB,CAAC;IACtF,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IACnE,OAAO,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,yBAAyB,IAAI,KAAK,CAAC,CAAC,KAAK,+DAA+D,CAAC;AAC1I,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACnC,aAAwC,EACxC,QAAgB;IAEhB,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,CAAC,iBAAiB,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAC9F,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAA4B,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,QAAQ,SAAS,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,qBAAqB,CAAC,MAA0B;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAC,uCAAuC,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QAClE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,sEAAsE;YACtE,oEAAoE;YACpE,4DAA4D;YAC5D,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAaD,SAAS,qBAAqB,CAC5B,KAAiF,EACjF,QAAgB,EAChB,GAAW,EACX,aAAuD;IAEvD,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAChC,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,8BAA8B;IAC9B,MAAM,MAAM,GAAG,SAAS,GAAG,GAAG,GAAG,yBAAyB,CAAC;IAC3D,IAAI,MAAM;QAAE,SAAS,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,yBAAyB,CAAC;IAE9E,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;QACrB,OAAO,EAAE,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/F,CAAC;IACD,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,iCAAiC;IACjC,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,OAAO,IAAI,OAAO,KAAK,KAAK,CAAC,qBAAqB,EAAE,CAAC;YACvD,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;QACtF,CAAC;IACH,CAAC;IACD,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACzD,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,aAA6B;IACxD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IACpD,OAAO,CAAC,QAAgB,EAAsB,EAAE;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,qBAAqB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC9F,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,aAA6B;IAC1D,IAAI,CAAC;QACH,0EAA0E;QAC1E,2EAA2E;QAC3E,oEAAoE;QACpE,yDAAyD;QACzD,MAAM,IAAI,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAsB,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,aAAa,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;QACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;;gBACjC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CACrB,QAAgB,EAChB,IAAiB,EACjB,KAAc,EACd,WAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,sBAAsB,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,KAAK,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAChF,QAAQ,CAAC,GAAG,CAAC,GAAG;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC;YAC/C,IAAI;YACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;YACtB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC;QACF,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,sDAAsD;IACxD,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E,SAAS,sBAAsB,CAAC,aAA4B,EAAE,YAAoB;IAChF,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACvE,OAAO,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,UAA4C,EAC5C,YAAoB,EACpB,SAAiB,EACjB,aAA4B,EAC5B,eAAwB;IAExB,OAAO,UAAU,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;AAC1F,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CACpC,aAA4B,EAC5B,OAA6B;IAE7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,KAAK,GAAmB;QAC5B,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,mBAAmB,EAAE,IAAI,GAAG,EAAE;QAC9B,cAAc,EAAE,CAAC;QACjB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,KAAK;KACjB,CAAC;IAEF,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,8EAA8E;IAC9E,qCAAqC;IACrC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE7C,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,KAAK,KAAK;QAC7D,CAAC,CAAC,qBAAqB,CAAC,aAAa,CAAC;QACtC,CAAC,CAAC,EAAE,CAAC;IAEP,2BAA2B;IAC3B,MAAM,eAAe,GAAG,qBAAqB,CAC3C,UAAU,EACV,aAAa,EACb,OAAO,CAAC,IAAI,EACZ,KAAK,CAAC,aAAa,EACnB,iBAAiB,EACjB,OAAO,CAAC,OAAO,CAChB,CAAC;IAEF,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,CAAC,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC;QACjD,KAAK,CAAC,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC;IAC7C,CAAC;IAED,2DAA2D;IAC3D,8DAA8D;IAC9D,MAAM,aAAa,GAAG,qBAAqB,CAAC,eAAe,EAAE;QAC3D,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW;QACzC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7F,aAAa;KACd,CAAC,CAAC;IAEH,8EAA8E;IAC9E,4EAA4E;IAC5E,2EAA2E;IAC3E,MAAM,cAAc,GAAG,6BAA6B,CAAC;QACnD,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,KAAK,KAAK;QAC1D,iBAAiB;QACjB,qBAAqB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,qBAAqB,CAAC,aAAa,EAAE,QAAQ,CAAC;KACpF,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,OAAO,GAAc,KAAK,EAAE,MAAc,EAAE,gBAAmC,EAAmB,EAAE;QACxG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,kEAAkE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAChH,CAAC;QAED,0EAA0E;QAC1E,yEAAyE;QACzE,kEAAkE;QAClE,0EAA0E;QAC1E,uEAAuE;QACvE,oEAAoE;QACpE,IAAI,CAAC;YACH,MAAM,sBAAsB,CAC1B;gBACE,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB;gBAC5C,iBAAiB,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG;gBACvF,aAAa,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAC1B,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACpC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvC,CAAC;gBACD,aAAa,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;oBACjC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;oBACzE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;gBACD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAC9B,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC;aAC3E,EACD,aAAa,EACb,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CACtC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QAED,uDAAuD;QACvD,MAAM,eAAe,GAAwB;YAC3C,EAAE,QAAQ,EAAE,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE;YAC1E,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC1B,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,eAAe;gBACpC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAC/B;SACF,CAAC;QAEF,IAAI,SAAS,GAAY,IAAI,CAAC;QAE9B,KAAK,MAAM,SAAS,IAAI,eAAe,EAAE,CAAC;YACxC,yEAAyE;YACzE,yEAAyE;YACzE,yEAAyE;YACzE,kEAAkE;YAClE,IAAI,cAAc,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxD,qBAAqB,CAAC;oBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,qDAAqD;iBAC9D,CAAC,CAAC;gBACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,CAAC,KAAK,CAAC,UAAU,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,4CAA4C,CAAC,CAAC;gBAC5G,CAAC;gBACD,SAAS;YACX,CAAC;YAED,+BAA+B;YAC/B,MAAM,OAAO,GAAG,sBAAsB,CAAC,aAAa,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC1E,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,qBAAqB,CAAC;oBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,iCAAiC;iBAC1C,CAAC,CAAC;gBACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,CAAC,KAAK,CAAC,UAAU,SAAS,CAAC,QAAQ,0BAA0B,CAAC,CAAC;gBACvE,CAAC;gBACD,SAAS;YACX,CAAC;YAED,qBAAqB;YACrB,IAAI,CAAC;gBACH,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACnC,qBAAqB,CAAC;wBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;wBAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;wBACtB,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,qCAAqC;qBAC9C,CAAC,CAAC;oBACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACpB,MAAM,CAAC,KAAK,CAAC,UAAU,SAAS,CAAC,QAAQ,yBAAyB,CAAC,CAAC;oBACtE,CAAC;oBACD,SAAS;gBACX,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YAED,eAAe;YACf,IAAI,CAAC;gBACH,sEAAsE;gBACtE,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,KAAK,SAAS;oBAChD,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;oBACtH,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;gBACpB,0EAA0E;gBAC1E,yEAAyE;gBACzE,kCAAkC;gBAClC,EAAE;gBACF,uEAAuE;gBACvE,yEAAyE;gBACzE,uEAAuE;gBACvE,sEAAsE;gBACtE,oEAAoE;gBACpE,2CAA2C;gBAC3C,IAAI,aAAa,GAAG,YAAY,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;wBAC/B,YAAY,EAAE,SAAS,CAAC,QAAQ;wBAChC,QAAQ,EAAE,OAAO;wBACjB,KAAK,EAAE,YAAY;wBACnB,MAAM,EAAE,UAAU;wBAClB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS;wBACjC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW;qBAC/B,CAAC,CAAC;oBACH,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC9B,CAAC;gBAAC,MAAM,CAAC;oBACP,qEAAqE;oBACrE,oDAAoD;oBACpD,IAAI,CAAC;wBACH,aAAa,GAAG,YAAY,IAAI,YAAY,KAAK,SAAS;4BACxD,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAC1C,CAAC;oBAAC,MAAM,CAAC;wBACP,aAAa,GAAG,SAAS,CAAC;oBAC5B,CAAC;gBACH,CAAC;gBACD,MAAM,aAAa,GAAqB;oBACtC,GAAG,gBAAgB;oBACnB,KAAK,EAAE,aAAa;iBACrB,CAAC;gBAEF,wCAAwC;gBACxC,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAC3C,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC;gBAErC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBAE7D,sDAAsD;gBACtD,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC;gBAEzB,6BAA6B;gBAC7B,IAAI,CAAC;oBACH,qBAAqB,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtE,CAAC;gBAAC,MAAM,CAAC;oBACP,eAAe;gBACjB,CAAC;gBAED,iCAAiC;gBACjC,IAAI,CAAC;oBACH,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACtD,CAAC;gBAAC,MAAM,CAAC;oBACP,gDAAgD;gBAClD,CAAC;gBAED,oCAAoC;gBACpC,qBAAqB,CAAC;oBACpB,MAAM,EAAE,cAAc;oBACtB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS;oBACjC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW;oBAC9B,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,UAAU;oBACjD,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,KAAK,EAAE,aAAa;oBACpB,KAAK,EAAE,SAAS,CAAC,KAAK;iBACvB,CAAC,CAAC;gBAEH,IAAI,KAAK,CAAC,cAAc,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBAChD,MAAM,CAAC,OAAO,CAAC,uCAAuC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,UAAU,KAAK,CAAC,cAAc,WAAW,CAAC,CAAC;gBACxI,CAAC;gBAED,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,GAAG,CAAC;gBAChB,KAAK,CAAC,cAAc,EAAE,CAAC;gBAEvB,kCAAkC;gBAClC,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBAClC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACzC,uEAAuE;gBACvE,mDAAmD;gBACnD,qBAAqB,CAAC;oBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;oBAClB,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBACxC,CAAC,CAAC;gBAEH,qEAAqE;gBACrE,uEAAuE;gBACvE,oEAAoE;gBACpE,mEAAmE;gBACnE,iDAAiD;gBACjD,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC;gBACpC,MAAM,WAAW,GAAG,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,WAAW,KAAK,SAAS,CAAC;gBAClF,IAAI,WAAW,EAAE,CAAC;oBAChB,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE;wBACvE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;wBAChC,IAAI;qBACL,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE;wBAC1C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;wBAChC,IAAI;qBACL,CAAC,CAAC;gBACL,CAAC;gBAED,sEAAsE;gBACtE,uEAAuE;gBACvE,qEAAqE;gBACrE,kEAAkE;gBAClE,mEAAmE;gBACnE,0DAA0D;gBAC1D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACnE,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC7C,CAAC;gBAED,mEAAmE;gBACnE,iEAAiE;gBACjE,gDAAgD;gBAChD,4BAA4B;gBAC5B,IAAI,OAAO,CAAC,mBAAmB,KAAK,KAAK,EAAE,CAAC;oBAC1C,cAAc,CACZ,SAAS,CAAC,QAAQ,EAClB,IAAI,EACJ,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EACrC,qBAAqB,CAAC,aAAa,EAAE,SAAS,CAAC,QAAQ,CAAC,CACzD,CAAC;gBACJ,CAAC;gBAED,uCAAuC;gBACvC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAwB;wBACnC,sBAAsB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;wBAC9E,+BAA+B,EAAE,IAAI,GAAG,EAAE;qBAC3C,CAAC;oBACF,mBAAmB,CACjB,OAAO,EACP,SAAS,CAAC,QAAQ,EAClB,GAAG,EACH,aAAa,EACb,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAC3D,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,eAAe;gBACjB,CAAC;gBAED,sBAAsB;gBACtB,IAAI,CAAC;oBACH,WAAW,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,yBAAyB,EAAE;wBACvD,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS;wBACjC,KAAK,EAAE,SAAS;wBAChB,OAAO,EAAE,MAAM,SAAS,CAAC,QAAQ,YAAY,IAAI,2BAA2B;qBAC7E,EAAE,cAAc,CAAC,CAAC;gBACrB,CAAC;gBAAC,MAAM,CAAC;oBACP,eAAe;gBACjB,CAAC;gBAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,QAAQ,YAAY,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnH,CAAC;gBAED,6BAA6B;gBAC7B,SAAS;YACX,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,oCAAoC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI;YAChE,SAAS,eAAe,CAAC,MAAM,4BAA4B,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAChI,CAAC;IACJ,CAAC,CAAC;IAEF,gCAAgC;IAC/B,OAAe,CAAC,WAAW,GAAG;QAC7B,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC;QACvC,kBAAkB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,eAAe;QAC/C,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,YAAY;QACzC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS;KACnC,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,+EAA+E;AAE/E,SAAS,qBAAqB,CAC5B,UAA4C,EAC5C,aAA4B,EAC5B,IAAiG,EACjG,aAAoE,EACpE,iBAAoC,EACpC,OAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CACjC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB;YACE,GAAG,uBAAuB,CAAC,aAAa,EAAE;gBACxC,OAAO;gBACP,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC1C,CAAC;YACF,cAAc,EAAE,IAAI,CAAC,UAAiB;SACvC,EACD,aAAa,CACd,CAAC;QAEF,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,CAAC,CAAS,EAAW,EAAE;YAC7C,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzC,IAAI,WAAW,IAAI,WAAW,CAAC,SAAS,GAAG,GAAG;gBAAE,OAAO,IAAI,CAAC;YAC5D,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,GAAG,GAAG;gBAAE,OAAO,IAAI,CAAC;YACxD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEF,0CAA0C;QAC1C,MAAM,SAAS,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/E,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhE,IAAI,cAAc,IAAI,cAAc,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3D,8BAA8B;YAC9B,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC;YAC7E,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/G,OAAO;gBACL,GAAG,QAAQ;gBACX,QAAQ,EAAE,cAAc;gBACxB,KAAK;gBACL,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;gBAC3C,WAAW,EAAE,GAAG,QAAQ,CAAC,WAAW,cAAc,cAAc,sBAAsB;aACvF,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgC,EAChC,OAA4B,EAAE;IAE9B,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEzB,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAC5D,MAAM,UAAU,GAAwB,EAAE,CAAC;IAE3C,oBAAoB;IACpB,UAAU,CAAC,IAAI,CAAC;QACd,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;KACtB,CAAC,CAAC;IAEH,yEAAyE;IACzE,+BAA+B;IAC/B,2DAA2D;IAC3D,gEAAgE;IAChE,iDAAiD;IACjD,mEAAmE;IACnE,mDAAmD;IACnD,0DAA0D;IAC1D,0EAA0E;IAC1E,8EAA8E;IAC9E,4EAA4E;IAC5E,2EAA2E;IAC3E,oEAAoE;IACpE,6CAA6C;IAC7C,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACtG,IAAI,CAAC;QACH,IAAI,eAAe,IAAI,UAAU,EAAE,CAAC;YAClC,MAAM,eAAe,GAAG,oBAAoB,CAAC,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;YAC3G,MAAM,WAAW,GAAG,wBAAwB,CAC1C,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAS,EACjG,eAAe,CAChB,CAAC;YACF,4DAA4D;YAC5D,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACjC,IAAI,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;wBAAE,SAAS;oBAC/E,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;oBACzC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC;wBAAE,SAAS;oBACvE,UAAU,CAAC,IAAI,CAAC;wBACd,QAAQ,EAAE,EAAE,CAAC,QAAQ;wBACrB,KAAK,EAAE,EAAE,CAAC,KAAK;wBACf,KAAK,EAAE,EAAE,CAAC,KAAK;qBAChB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yDAAyD;IAC3D,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,uEAAuE;IACvE,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,kDAAkD;QAClD,IAAI,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,IAAI,KAAK,KAAK,QAAQ,CAAC,KAAK;YAAE,SAAS;QAC5E,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC;QACtC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC;YAAE,SAAS;QACzE,UAAU,CAAC,IAAI,CAAC;YACd,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,KAAK;YACL,yEAAyE;YACzE,yEAAyE;YACzE,8CAA8C;YAC9C,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;SACxC,CAAC,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,6EAA6E;IAC7E,+BAA+B;IAC/B,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;YAAE,SAAS;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC;YAAE,SAAS;QACnE,UAAU,CAAC,IAAI,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,SAAS,EAAE,gCAAgC;YAClD,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,CAAC,EAAS,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzF,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;YAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC;gBAAE,SAAS;YACtD,UAAU,CAAC,IAAI,CAAC;gBACd,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,GAAG,EAAE,oCAAoC;aACjD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yDAAyD;IAC3D,CAAC;IAED,wCAAwC;IACxC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE7C,0EAA0E;IAC1E,6EAA6E;IAC7E,wEAAwE;IACxE,8EAA8E;IAC9E,6EAA6E;IAC7E,mCAAmC;IACnC,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CACtE,CAAC;IACF,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACnD,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,KAAiD;IACjE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;AAC7D,CAAC;AAkCD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAiC,EAAE;IAEnC,MAAM,SAAS,GAAsB,IAAI,CAAC,mBAAmB,KAAK,KAAK;QACrE,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,qBAAqB,EAAE,CAAC;IACtD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC;IACnD,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC;IACjD,OAAO,CAAC,QAAgB,EAAE,KAAc,EAAW,EAAE;QACnD,IAAI,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC;YACxG,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACrE,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,QAAgB,EAChB,KAAyB,EACzB,aAAuC,EACvC,mBAA6C,EAC7C,iBAAoC,EACpC,uBAAkE;IAElE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,EAAE;IACF,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,4DAA4D;IAC5D,MAAM,eAAe,GAAG,CAAC,KAA4C,EAAW,EAAE;QAChF,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG;YAAE,OAAO,KAAK,CAAC;QACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,qBAAqB,CAAC;QAC7C,IAAI,CAAC,QAAQ,IAAI,CAAC,uBAAuB;YAAE,OAAO,IAAI,CAAC;QACvD,MAAM,OAAO,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,CAAC;IAC1C,CAAC,CAAC;IACF,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,gEAAgE;IAChE,IAAI,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,mBAAmB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,GAAG;YAAE,OAAO,IAAI,CAAC;QAC3C,IAAI,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IAC3D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CAAC,QAAgB,EAAE,KAAyB;IACrE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;QACpC,IAAI,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACjC,uEAAuE;YACvE,6DAA6D;YAC7D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;YACtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,QAAQ,CAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AA2BD,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,IAAI,WAAW,GAAG,CAAC,CAAC;AACpB,MAAM,gBAAgB,GAAyD,EAAE,CAAC;AAElF,yFAAyF;AACzF,MAAM,UAAU,oBAAoB;IAClC,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAClG,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,OAAwB;IAC5D,IAAI,CAAC;QACH,WAAW,IAAI,CAAC,CAAC;QACjB,gBAAgB,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,gBAAgB,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;YACrD,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,sBAAsB,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uCAAuC;IACzC,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,OAAO,wDAAwD,CAAC;QAClE,KAAK,MAAM;YACT,OAAO,yBAAyB,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC;QACrB,KAAK,SAAS;YACZ,OAAO,eAAe,CAAC;QACzB,KAAK,iBAAiB;YACpB,OAAO,iBAAiB,CAAC;QAC3B,KAAK,gBAAgB;YACnB,OAAO,yCAAyC,CAAC;QACnD,KAAK,QAAQ;YACX,OAAO,qBAAqB,CAAC;QAC/B;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AA8CD,MAAM,UAAU,mBAAmB,CAAC,MAAsC,EAAE,GAAoB;IAC9F,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,wEAAwE;IACxE,IAAI,GAAG,EAAE,iBAAiB;QAAE,OAAO,IAAI,CAAC;IACxC,+DAA+D;IAC/D,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnD,0EAA0E;IAC1E,wDAAwD;IACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAChE,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/B,0EAA0E;IAC1E,4EAA4E;IAC5E,2EAA2E;IAC3E,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,aAA6B;IAC5E,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,MAAM,GAA6B,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAqB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAChE,IAAI,CAAC,CAAC,CAAC,SAAS;YAAE,OAAO,GAAG,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;QAC5C,OAAO,GAAG,KAAK,SAAS,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,CAAC,EAAE,SAAS,CAAC,CAAC;IACd,0EAA0E;IAC1E,mEAAmE;IACnE,MAAM,IAAI,GAAG,mBAAmB,EAAE,CAAC;IACnC,OAAO;QACL,KAAK;QACL,MAAM;QACN,QAAQ,EAAE,IAAI,CAAC,MAAM;QACrB,aAAa,EAAE,IAAI,CAAC,SAAS;QAC7B,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,UAAU,CAAC,EAAU;IACnC,IAAI,EAAE,GAAG,MAAM;QAAE,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;IACjE,IAAI,EAAE,GAAG,SAAS;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;IACzD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAA0B,EAC1B,OAA2C,EAAE;IAE7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtD,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,CAAC,CAAyB,EAAW,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9F,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC;IAChD,6EAA6E;IAC7E,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;IACzD,MAAM,SAAS,GAAG,YAAY,IAAI,QAAQ,KAAK,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;IAChE,4EAA4E;IAC5E,yEAAyE;IACzE,4EAA4E;IAC5E,kEAAkE;IAClE,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEjE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;IAE/G,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;IAC1F,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAC7E,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjE,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,KAAK,CAAC,IAAI,CAAC,OAAO,MAAM,MAAM,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;QACtE,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,mEAAmE;YACnE,0EAA0E;YAC1E,KAAK,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,0DAA0D,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CACR,qBAAqB,WAAW,CAAC,QAAQ,CAAC,kBAAkB,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,WAAW,aAAa,YAAY,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAC3J,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,2EAA2E;IAC3E,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,+EAA+E;IAC/E,gEAAgE;IAChE,MAAM,YAAY,GAAG,YAAY,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;IACjF,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CACR,SAAS,WAAW,CAAC,QAAQ,CAAC,SAAS,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,2BAA2B,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,sCAAsC;gBAClL,6FAA6F,CAChG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,wEAAwE;YACxE,KAAK,CAAC,IAAI,CACR,6BAA6B,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,iJAAiJ,CAC9M,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CACR,gNAAgN,CACjN,CAAC;IACJ,CAAC;SAAM,IAAI,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QAC7C,2EAA2E;QAC3E,yEAAyE;QACzE,mCAAmC;QACnC,KAAK,CAAC,IAAI,CACR,yIAAyI,CAC1I,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,yEAAyE;QACzE,0EAA0E;QAC1E,iDAAiD;QACjD,KAAK,CAAC,IAAI,CACR,yJAAyJ,CAC1J,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"resilient-call.js","sourceRoot":"","sources":["../../src/learning/resilient-call.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Is a model response USABLE? (fix_model_routing P1)
3
+ *
4
+ * WHY THIS EXISTS. A provider that answers with NOTHING was silently accepted as
5
+ * a success by the failover walk (`resilient-call.ts` recorded telemetry and
6
+ * returned), because only a THROWN error advances to the next candidate. A real
7
+ * turn therefore retried the same dead model five times and then died with zero
8
+ * tool calls while healthy models sat configured and unused. The walk had no
9
+ * definition of "usable", so "the provider replied" *was* the definition.
10
+ *
11
+ * This module is that definition, in one place, for every seam that needs it:
12
+ *
13
+ * - the failover walk validates the raw completion BEFORE recording success;
14
+ * - the tool loop asks it whether a step response carries anything;
15
+ * - telemetry and the exhaustion report name the failure from it.
16
+ *
17
+ * THE RULE. A response is usable when it carries assistant TEXT or at least one
18
+ * TOOL CALL. Anything else is a provider failure — not a "the model is thinking"
19
+ * state and not a success:
20
+ *
21
+ * - `''` (blank text, no tool calls) → `empty` — the case that killed
22
+ * the run: HTTP 200, zero content.
23
+ * - a shape with neither field, or a → `malformed` — the adapter broke its
24
+ * content that is not a string contract.
25
+ *
26
+ * WHAT IS DELIBERATELY *NOT* USABLE-AWARE HERE: a `<think>…</think>`-only reply.
27
+ * It is non-blank text, so it is USABLE by this definition, and the tool loop
28
+ * keeps its own (bounded) "reasoning continued, not an answer" handling. Folding
29
+ * thinking models into the empty-response path would make every reasoning step
30
+ * look like a dead provider and swap models mid-thought — a worse bug than the
31
+ * one this fixes. The empty-string case and the think-only case are therefore
32
+ * named apart, exactly as `tool-loop.ts` already argues.
33
+ *
34
+ * `generate()` returns TEXT ONLY (tool calls travel via `generateTools`), which
35
+ * is what makes an empty string here provably a failure rather than a
36
+ * tool-call-only reply — see `src/inference/interface.ts`.
37
+ */
38
+ /** Why a response could not be used. */
39
+ export type UnusableResponseKind = 'empty' | 'malformed';
40
+ /** The failure-kind string carried through telemetry, exclusion and reports. */
41
+ export declare const EMPTY_RESPONSE_FAILURE_KIND = "empty-response";
42
+ /** Human label used inside the thrown error so classification can recognise it. */
43
+ export declare const UNUSABLE_RESPONSE_MARKER = "unusable model response";
44
+ export interface ResponseUsability {
45
+ /** True when the response carries text or tool calls. */
46
+ usable: boolean;
47
+ /** Why not, when `usable` is false. */
48
+ kind: UnusableResponseKind | null;
49
+ /** One sentence naming what was wrong — for the trace, the log and the report. */
50
+ detail: string;
51
+ }
52
+ /**
53
+ * Decide whether a model response carries anything usable.
54
+ *
55
+ * Accepts both shapes the codebase produces: a raw STRING (what
56
+ * `InferenceProvider.generate` returns) and a `{ content, toolCalls }` object
57
+ * (what the native tool-calling path returns). Being shape-tolerant is the point
58
+ * — a seam that forgets to validate is the bug this module exists to remove, so
59
+ * the validator must be safe to call on either.
60
+ */
61
+ export declare function classifyModelResponse(response: unknown): ResponseUsability;
62
+ /**
63
+ * Thrown when a provider resolves with a response that cannot be used.
64
+ *
65
+ * Typed (rather than a bare `Error`) so the failover walk treats it exactly like
66
+ * any other generation failure — it is caught by the same handler, so the
67
+ * candidate is excluded, persisted and the walk advances — while telemetry and
68
+ * reports can name the precise reason instead of bucketing it as `unknown`.
69
+ */
70
+ export declare class UnusableModelResponseError extends Error {
71
+ readonly kind: UnusableResponseKind;
72
+ /** The failure kind string carried into the registry/ledger ('empty-response'). */
73
+ readonly failureKind = "empty-response";
74
+ constructor(kind: UnusableResponseKind, detail: string);
75
+ }
76
+ /** Recognise the error without relying on `instanceof` across module copies. */
77
+ export declare function isUnusableModelResponseError(err: unknown): err is UnusableModelResponseError;
78
+ /**
79
+ * Throw when a response is unusable; return it unchanged when it is fine.
80
+ *
81
+ * Used at the failover boundary so an empty completion becomes a *failure* the
82
+ * walk already knows how to handle, rather than a success it returns.
83
+ */
84
+ export declare function assertUsableModelResponse<T>(response: T): T;
85
+ //# sourceMappingURL=response-usability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-usability.d.ts","sourceRoot":"","sources":["../../src/learning/response-usability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,wCAAwC;AACxC,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,WAAW,CAAC;AAEzD,gFAAgF;AAChF,eAAO,MAAM,2BAA2B,mBAAmB,CAAC;AAE5D,mFAAmF;AACnF,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AAElE,MAAM,WAAW,iBAAiB;IAChC,yDAAyD;IACzD,MAAM,EAAE,OAAO,CAAC;IAChB,uCAAuC;IACvC,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClC,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,GAAG,iBAAiB,CAkD1E;AAED;;;;;;;GAOG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,mFAAmF;IACnF,QAAQ,CAAC,WAAW,oBAA+B;gBAEvC,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM;CAKvD;AAED,gFAAgF;AAChF,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,0BAA0B,CAO5F;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAI3D"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Is a model response USABLE? (fix_model_routing P1)
3
+ *
4
+ * WHY THIS EXISTS. A provider that answers with NOTHING was silently accepted as
5
+ * a success by the failover walk (`resilient-call.ts` recorded telemetry and
6
+ * returned), because only a THROWN error advances to the next candidate. A real
7
+ * turn therefore retried the same dead model five times and then died with zero
8
+ * tool calls while healthy models sat configured and unused. The walk had no
9
+ * definition of "usable", so "the provider replied" *was* the definition.
10
+ *
11
+ * This module is that definition, in one place, for every seam that needs it:
12
+ *
13
+ * - the failover walk validates the raw completion BEFORE recording success;
14
+ * - the tool loop asks it whether a step response carries anything;
15
+ * - telemetry and the exhaustion report name the failure from it.
16
+ *
17
+ * THE RULE. A response is usable when it carries assistant TEXT or at least one
18
+ * TOOL CALL. Anything else is a provider failure — not a "the model is thinking"
19
+ * state and not a success:
20
+ *
21
+ * - `''` (blank text, no tool calls) → `empty` — the case that killed
22
+ * the run: HTTP 200, zero content.
23
+ * - a shape with neither field, or a → `malformed` — the adapter broke its
24
+ * content that is not a string contract.
25
+ *
26
+ * WHAT IS DELIBERATELY *NOT* USABLE-AWARE HERE: a `<think>…</think>`-only reply.
27
+ * It is non-blank text, so it is USABLE by this definition, and the tool loop
28
+ * keeps its own (bounded) "reasoning continued, not an answer" handling. Folding
29
+ * thinking models into the empty-response path would make every reasoning step
30
+ * look like a dead provider and swap models mid-thought — a worse bug than the
31
+ * one this fixes. The empty-string case and the think-only case are therefore
32
+ * named apart, exactly as `tool-loop.ts` already argues.
33
+ *
34
+ * `generate()` returns TEXT ONLY (tool calls travel via `generateTools`), which
35
+ * is what makes an empty string here provably a failure rather than a
36
+ * tool-call-only reply — see `src/inference/interface.ts`.
37
+ */
38
+ /** The failure-kind string carried through telemetry, exclusion and reports. */
39
+ export const EMPTY_RESPONSE_FAILURE_KIND = 'empty-response';
40
+ /** Human label used inside the thrown error so classification can recognise it. */
41
+ export const UNUSABLE_RESPONSE_MARKER = 'unusable model response';
42
+ /**
43
+ * Decide whether a model response carries anything usable.
44
+ *
45
+ * Accepts both shapes the codebase produces: a raw STRING (what
46
+ * `InferenceProvider.generate` returns) and a `{ content, toolCalls }` object
47
+ * (what the native tool-calling path returns). Being shape-tolerant is the point
48
+ * — a seam that forgets to validate is the bug this module exists to remove, so
49
+ * the validator must be safe to call on either.
50
+ */
51
+ export function classifyModelResponse(response) {
52
+ // Raw text completion — the orchestrator/failover path.
53
+ if (typeof response === 'string') {
54
+ return response.trim().length > 0
55
+ ? { usable: true, kind: null, detail: '' }
56
+ : {
57
+ usable: false,
58
+ kind: 'empty',
59
+ detail: 'the provider returned no text (empty completion)',
60
+ };
61
+ }
62
+ if (response === null || response === undefined) {
63
+ return {
64
+ usable: false,
65
+ kind: 'malformed',
66
+ detail: 'the provider returned no response object at all',
67
+ };
68
+ }
69
+ if (typeof response !== 'object') {
70
+ return {
71
+ usable: false,
72
+ kind: 'malformed',
73
+ detail: `the provider returned ${typeof response} instead of a completion`,
74
+ };
75
+ }
76
+ const { content, toolCalls } = response;
77
+ const hasText = typeof content === 'string' && content.trim().length > 0;
78
+ const hasToolCalls = Array.isArray(toolCalls) && toolCalls.length > 0;
79
+ if (hasText || hasToolCalls)
80
+ return { usable: true, kind: null, detail: '' };
81
+ // A well-formed step response that simply carried nothing is EMPTY; a response
82
+ // that does not even have the right fields is MALFORMED. The two are reported
83
+ // apart because they have different repairs (retry with another model vs fix
84
+ // the adapter), and the tool loop already treats a bad shape as an error.
85
+ if (typeof content === 'string' && Array.isArray(toolCalls)) {
86
+ return {
87
+ usable: false,
88
+ kind: 'empty',
89
+ detail: 'the provider returned an empty response — no answer text and no tool call',
90
+ };
91
+ }
92
+ return {
93
+ usable: false,
94
+ kind: 'malformed',
95
+ detail: 'the provider returned a response with no content and no tool-call list',
96
+ };
97
+ }
98
+ /**
99
+ * Thrown when a provider resolves with a response that cannot be used.
100
+ *
101
+ * Typed (rather than a bare `Error`) so the failover walk treats it exactly like
102
+ * any other generation failure — it is caught by the same handler, so the
103
+ * candidate is excluded, persisted and the walk advances — while telemetry and
104
+ * reports can name the precise reason instead of bucketing it as `unknown`.
105
+ */
106
+ export class UnusableModelResponseError extends Error {
107
+ kind;
108
+ /** The failure kind string carried into the registry/ledger ('empty-response'). */
109
+ failureKind = EMPTY_RESPONSE_FAILURE_KIND;
110
+ constructor(kind, detail) {
111
+ super(`${UNUSABLE_RESPONSE_MARKER} (${kind}): ${detail}`);
112
+ this.name = 'UnusableModelResponseError';
113
+ this.kind = kind;
114
+ }
115
+ }
116
+ /** Recognise the error without relying on `instanceof` across module copies. */
117
+ export function isUnusableModelResponseError(err) {
118
+ return (err instanceof UnusableModelResponseError ||
119
+ (typeof err === 'object' &&
120
+ err !== null &&
121
+ err.name === 'UnusableModelResponseError'));
122
+ }
123
+ /**
124
+ * Throw when a response is unusable; return it unchanged when it is fine.
125
+ *
126
+ * Used at the failover boundary so an empty completion becomes a *failure* the
127
+ * walk already knows how to handle, rather than a success it returns.
128
+ */
129
+ export function assertUsableModelResponse(response) {
130
+ const verdict = classifyModelResponse(response);
131
+ if (!verdict.usable)
132
+ throw new UnusableModelResponseError(verdict.kind ?? 'empty', verdict.detail);
133
+ return response;
134
+ }
135
+ //# sourceMappingURL=response-usability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-usability.js","sourceRoot":"","sources":["../../src/learning/response-usability.ts"],"names":[],"mappings":"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"}