agentfootprint 9.128.1 → 9.131.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 (603) hide show
  1. package/CAPABILITIES.md +13 -1
  2. package/dist/adapters/llm/AnthropicProvider.js +10 -111
  3. package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
  4. package/dist/adapters/llm/BedrockProvider.js +11 -4
  5. package/dist/adapters/llm/BedrockProvider.js.map +1 -1
  6. package/dist/adapters/llm/InvokeModelGatewayProvider.js +167 -35
  7. package/dist/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  8. package/dist/adapters/llm/OpenAIProvider.js +5 -0
  9. package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
  10. package/dist/adapters/llm/anthropicMessagesWire.js +20 -6
  11. package/dist/adapters/llm/anthropicMessagesWire.js.map +1 -1
  12. package/dist/adapters/llm/retryAfter.js +61 -0
  13. package/dist/adapters/llm/retryAfter.js.map +1 -0
  14. package/dist/adapters/types.js.map +1 -1
  15. package/dist/artifacts/datasetResult.js +2 -2
  16. package/dist/artifacts/datasetResult.js.map +1 -1
  17. package/dist/artifacts/index.js +10 -8
  18. package/dist/artifacts/index.js.map +1 -1
  19. package/dist/artifacts/minting.js +2 -2
  20. package/dist/artifacts/minting.js.map +1 -1
  21. package/dist/core/Agent.js +229 -5
  22. package/dist/core/Agent.js.map +1 -1
  23. package/dist/core/agent/AgentBuilder.js +75 -1
  24. package/dist/core/agent/AgentBuilder.js.map +1 -1
  25. package/dist/core/agent/arguments/ask.js +356 -14
  26. package/dist/core/agent/arguments/ask.js.map +1 -1
  27. package/dist/core/agent/arguments/declare.js +260 -45
  28. package/dist/core/agent/arguments/declare.js.map +1 -1
  29. package/dist/core/agent/arguments/dispatch.js +25 -1
  30. package/dist/core/agent/arguments/dispatch.js.map +1 -1
  31. package/dist/core/agent/arguments/resolve.js +239 -6
  32. package/dist/core/agent/arguments/resolve.js.map +1 -1
  33. package/dist/core/agent/arguments/rows.js +37 -2
  34. package/dist/core/agent/arguments/rows.js.map +1 -1
  35. package/dist/core/agent/arguments/serve.js +332 -4
  36. package/dist/core/agent/arguments/serve.js.map +1 -1
  37. package/dist/core/agent/arguments/subflow.js +46 -7
  38. package/dist/core/agent/arguments/subflow.js.map +1 -1
  39. package/dist/core/agent/assessment/assess.js +45 -6
  40. package/dist/core/agent/assessment/assess.js.map +1 -1
  41. package/dist/core/agent/assessment/compose.js +3 -0
  42. package/dist/core/agent/assessment/compose.js.map +1 -1
  43. package/dist/core/agent/assessment/reasons.js +18 -0
  44. package/dist/core/agent/assessment/reasons.js.map +1 -1
  45. package/dist/core/agent/buildAgentChart.js +31 -1
  46. package/dist/core/agent/buildAgentChart.js.map +1 -1
  47. package/dist/core/agent/buildDynamicAgentChart.js +9 -0
  48. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  49. package/dist/core/agent/coverage/answer.js +24 -7
  50. package/dist/core/agent/coverage/answer.js.map +1 -1
  51. package/dist/core/agent/coverage/period.js +110 -69
  52. package/dist/core/agent/coverage/period.js.map +1 -1
  53. package/dist/core/agent/coverage/timeLimitFacts.js +70 -0
  54. package/dist/core/agent/coverage/timeLimitFacts.js.map +1 -0
  55. package/dist/core/agent/coverage/timeLimits.js +72 -0
  56. package/dist/core/agent/coverage/timeLimits.js.map +1 -0
  57. package/dist/core/agent/evidence/evidenceIndex.js +48 -7
  58. package/dist/core/agent/evidence/evidenceIndex.js.map +1 -1
  59. package/dist/core/agent/evidence/gate.js +9 -4
  60. package/dist/core/agent/evidence/gate.js.map +1 -1
  61. package/dist/core/agent/evidence/normalize.js +1 -105
  62. package/dist/core/agent/evidence/normalize.js.map +1 -1
  63. package/dist/core/agent/findings/ledger.js +14 -0
  64. package/dist/core/agent/findings/ledger.js.map +1 -1
  65. package/dist/core/agent/findings/types.js.map +1 -1
  66. package/dist/core/agent/honesty/mounts.js +105 -4
  67. package/dist/core/agent/honesty/mounts.js.map +1 -1
  68. package/dist/core/agent/results/subflow.js +43 -11
  69. package/dist/core/agent/results/subflow.js.map +1 -1
  70. package/dist/core/agent/stages/argumentAsk.js +85 -6
  71. package/dist/core/agent/stages/argumentAsk.js.map +1 -1
  72. package/dist/core/agent/stages/callLLM.js +16 -0
  73. package/dist/core/agent/stages/callLLM.js.map +1 -1
  74. package/dist/core/agent/stages/prepareFinal.js +61 -8
  75. package/dist/core/agent/stages/prepareFinal.js.map +1 -1
  76. package/dist/core/agent/stages/route.js +64 -6
  77. package/dist/core/agent/stages/route.js.map +1 -1
  78. package/dist/core/agent/stages/seed.js +29 -6
  79. package/dist/core/agent/stages/seed.js.map +1 -1
  80. package/dist/core/agent/stages/timeLayer.js +201 -0
  81. package/dist/core/agent/stages/timeLayer.js.map +1 -0
  82. package/dist/core/agent/stages/timeLineage.js +61 -0
  83. package/dist/core/agent/stages/timeLineage.js.map +1 -0
  84. package/dist/core/agent/stages/toolCalls.js +70 -0
  85. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  86. package/dist/core/inputRequest.js +132 -5
  87. package/dist/core/inputRequest.js.map +1 -1
  88. package/dist/core/messageFrom.js +5 -2
  89. package/dist/core/messageFrom.js.map +1 -1
  90. package/dist/core/runCheckpoint.js +17 -2
  91. package/dist/core/runCheckpoint.js.map +1 -1
  92. package/dist/core/slots/buildToolsSlot.js +30 -2
  93. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  94. package/dist/core/time/ask.js +239 -0
  95. package/dist/core/time/ask.js.map +1 -0
  96. package/dist/core/time/axis.js +469 -0
  97. package/dist/core/time/axis.js.map +1 -0
  98. package/dist/core/time/bind.js +235 -0
  99. package/dist/core/time/bind.js.map +1 -0
  100. package/dist/core/time/check.js +261 -0
  101. package/dist/core/time/check.js.map +1 -0
  102. package/dist/core/time/checkRecord.js +97 -0
  103. package/dist/core/time/checkRecord.js.map +1 -0
  104. package/dist/core/time/clock.js +260 -0
  105. package/dist/core/time/clock.js.map +1 -0
  106. package/dist/core/time/convert.js +634 -0
  107. package/dist/core/time/convert.js.map +1 -0
  108. package/dist/core/time/drift.js +96 -0
  109. package/dist/core/time/drift.js.map +1 -0
  110. package/dist/core/time/duration.js +125 -0
  111. package/dist/core/time/duration.js.map +1 -0
  112. package/dist/core/time/forms.js +273 -0
  113. package/dist/core/time/forms.js.map +1 -0
  114. package/dist/core/time/instant.js +141 -0
  115. package/dist/core/time/instant.js.map +1 -0
  116. package/dist/core/time/periodForm.js +392 -0
  117. package/dist/core/time/periodForm.js.map +1 -0
  118. package/dist/core/time/present.js +312 -0
  119. package/dist/core/time/present.js.map +1 -0
  120. package/dist/core/time/range.js +267 -0
  121. package/dist/core/time/range.js.map +1 -0
  122. package/dist/core/time/reader.js +209 -0
  123. package/dist/core/time/reader.js.map +1 -0
  124. package/dist/core/time/readers/english.js +576 -0
  125. package/dist/core/time/readers/english.js.map +1 -0
  126. package/dist/core/time/readingAsk.js +94 -0
  127. package/dist/core/time/readingAsk.js.map +1 -0
  128. package/dist/core/time/resolve.js +694 -0
  129. package/dist/core/time/resolve.js.map +1 -0
  130. package/dist/core/time/resolveRecord.js +164 -0
  131. package/dist/core/time/resolveRecord.js.map +1 -0
  132. package/dist/core/time/rows.js +412 -0
  133. package/dist/core/time/rows.js.map +1 -0
  134. package/dist/core/time/rowsBuild.js +193 -0
  135. package/dist/core/time/rowsBuild.js.map +1 -0
  136. package/dist/core/time/textForms.js +133 -0
  137. package/dist/core/time/textForms.js.map +1 -0
  138. package/dist/core/time/windows.js +172 -0
  139. package/dist/core/time/windows.js.map +1 -0
  140. package/dist/core/time/wire.js +86 -0
  141. package/dist/core/time/wire.js.map +1 -0
  142. package/dist/core/time/zone.js +253 -0
  143. package/dist/core/time/zone.js.map +1 -0
  144. package/dist/core/tools.js.map +1 -1
  145. package/dist/esm/adapters/llm/AnthropicProvider.js +8 -109
  146. package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
  147. package/dist/esm/adapters/llm/BedrockProvider.js +11 -4
  148. package/dist/esm/adapters/llm/BedrockProvider.js.map +1 -1
  149. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.d.ts +38 -4
  150. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js +167 -35
  151. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  152. package/dist/esm/adapters/llm/OpenAIProvider.js +5 -0
  153. package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
  154. package/dist/esm/adapters/llm/anthropicMessagesWire.d.ts +6 -1
  155. package/dist/esm/adapters/llm/anthropicMessagesWire.js +20 -6
  156. package/dist/esm/adapters/llm/anthropicMessagesWire.js.map +1 -1
  157. package/dist/esm/adapters/llm/retryAfter.d.ts +27 -0
  158. package/dist/esm/adapters/llm/retryAfter.js +56 -0
  159. package/dist/esm/adapters/llm/retryAfter.js.map +1 -0
  160. package/dist/esm/adapters/types.d.ts +9 -0
  161. package/dist/esm/adapters/types.js.map +1 -1
  162. package/dist/esm/artifacts/datasetResult.js +1 -1
  163. package/dist/esm/artifacts/datasetResult.js.map +1 -1
  164. package/dist/esm/artifacts/index.d.ts +1 -1
  165. package/dist/esm/artifacts/index.js +3 -2
  166. package/dist/esm/artifacts/index.js.map +1 -1
  167. package/dist/esm/artifacts/minting.js +1 -1
  168. package/dist/esm/artifacts/minting.js.map +1 -1
  169. package/dist/esm/artifacts/types.d.ts +2 -2
  170. package/dist/esm/core/Agent.d.ts +64 -0
  171. package/dist/esm/core/Agent.js +230 -6
  172. package/dist/esm/core/Agent.js.map +1 -1
  173. package/dist/esm/core/agent/AgentBuilder.d.ts +60 -0
  174. package/dist/esm/core/agent/AgentBuilder.js +75 -1
  175. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  176. package/dist/esm/core/agent/arguments/ask.d.ts +88 -5
  177. package/dist/esm/core/agent/arguments/ask.js +349 -8
  178. package/dist/esm/core/agent/arguments/ask.js.map +1 -1
  179. package/dist/esm/core/agent/arguments/checks.d.ts +1 -1
  180. package/dist/esm/core/agent/arguments/declare.d.ts +76 -15
  181. package/dist/esm/core/agent/arguments/declare.js +255 -44
  182. package/dist/esm/core/agent/arguments/declare.js.map +1 -1
  183. package/dist/esm/core/agent/arguments/dispatch.js +25 -1
  184. package/dist/esm/core/agent/arguments/dispatch.js.map +1 -1
  185. package/dist/esm/core/agent/arguments/resolve.d.ts +77 -7
  186. package/dist/esm/core/agent/arguments/resolve.js +239 -8
  187. package/dist/esm/core/agent/arguments/resolve.js.map +1 -1
  188. package/dist/esm/core/agent/arguments/rows.d.ts +31 -2
  189. package/dist/esm/core/agent/arguments/rows.js +35 -1
  190. package/dist/esm/core/agent/arguments/rows.js.map +1 -1
  191. package/dist/esm/core/agent/arguments/serve.d.ts +133 -4
  192. package/dist/esm/core/agent/arguments/serve.js +328 -4
  193. package/dist/esm/core/agent/arguments/serve.js.map +1 -1
  194. package/dist/esm/core/agent/arguments/subflow.d.ts +28 -0
  195. package/dist/esm/core/agent/arguments/subflow.js +47 -8
  196. package/dist/esm/core/agent/arguments/subflow.js.map +1 -1
  197. package/dist/esm/core/agent/assessment/assess.js +45 -6
  198. package/dist/esm/core/agent/assessment/assess.js.map +1 -1
  199. package/dist/esm/core/agent/assessment/compose.js +3 -0
  200. package/dist/esm/core/agent/assessment/compose.js.map +1 -1
  201. package/dist/esm/core/agent/assessment/reasons.js +18 -0
  202. package/dist/esm/core/agent/assessment/reasons.js.map +1 -1
  203. package/dist/esm/core/agent/assessment/types.d.ts +15 -1
  204. package/dist/esm/core/agent/buildAgentChart.d.ts +41 -0
  205. package/dist/esm/core/agent/buildAgentChart.js +28 -0
  206. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  207. package/dist/esm/core/agent/buildDynamicAgentChart.d.ts +1 -1
  208. package/dist/esm/core/agent/buildDynamicAgentChart.js +9 -0
  209. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  210. package/dist/esm/core/agent/coverage/answer.d.ts +20 -1
  211. package/dist/esm/core/agent/coverage/answer.js +23 -6
  212. package/dist/esm/core/agent/coverage/answer.js.map +1 -1
  213. package/dist/esm/core/agent/coverage/period.d.ts +49 -3
  214. package/dist/esm/core/agent/coverage/period.js +107 -68
  215. package/dist/esm/core/agent/coverage/period.js.map +1 -1
  216. package/dist/esm/core/agent/coverage/timeLimitFacts.d.ts +56 -0
  217. package/dist/esm/core/agent/coverage/timeLimitFacts.js +65 -0
  218. package/dist/esm/core/agent/coverage/timeLimitFacts.js.map +1 -0
  219. package/dist/esm/core/agent/coverage/timeLimits.d.ts +46 -0
  220. package/dist/esm/core/agent/coverage/timeLimits.js +67 -0
  221. package/dist/esm/core/agent/coverage/timeLimits.js.map +1 -0
  222. package/dist/esm/core/agent/evidence/evidenceIndex.d.ts +25 -2
  223. package/dist/esm/core/agent/evidence/evidenceIndex.js +47 -7
  224. package/dist/esm/core/agent/evidence/evidenceIndex.js.map +1 -1
  225. package/dist/esm/core/agent/evidence/gate.d.ts +7 -0
  226. package/dist/esm/core/agent/evidence/gate.js +9 -4
  227. package/dist/esm/core/agent/evidence/gate.js.map +1 -1
  228. package/dist/esm/core/agent/evidence/normalize.d.ts +0 -34
  229. package/dist/esm/core/agent/evidence/normalize.js +0 -103
  230. package/dist/esm/core/agent/evidence/normalize.js.map +1 -1
  231. package/dist/esm/core/agent/evidence/types.d.ts +12 -1
  232. package/dist/esm/core/agent/findings/ledger.js +14 -0
  233. package/dist/esm/core/agent/findings/ledger.js.map +1 -1
  234. package/dist/esm/core/agent/findings/types.d.ts +2 -1
  235. package/dist/esm/core/agent/findings/types.js.map +1 -1
  236. package/dist/esm/core/agent/honesty/mounts.d.ts +25 -0
  237. package/dist/esm/core/agent/honesty/mounts.js +104 -4
  238. package/dist/esm/core/agent/honesty/mounts.js.map +1 -1
  239. package/dist/esm/core/agent/results/subflow.d.ts +34 -2
  240. package/dist/esm/core/agent/results/subflow.js +43 -11
  241. package/dist/esm/core/agent/results/subflow.js.map +1 -1
  242. package/dist/esm/core/agent/stages/argumentAsk.d.ts +19 -0
  243. package/dist/esm/core/agent/stages/argumentAsk.js +85 -6
  244. package/dist/esm/core/agent/stages/argumentAsk.js.map +1 -1
  245. package/dist/esm/core/agent/stages/callLLM.d.ts +6 -0
  246. package/dist/esm/core/agent/stages/callLLM.js +16 -0
  247. package/dist/esm/core/agent/stages/callLLM.js.map +1 -1
  248. package/dist/esm/core/agent/stages/prepareFinal.d.ts +13 -1
  249. package/dist/esm/core/agent/stages/prepareFinal.js +59 -7
  250. package/dist/esm/core/agent/stages/prepareFinal.js.map +1 -1
  251. package/dist/esm/core/agent/stages/route.d.ts +29 -1
  252. package/dist/esm/core/agent/stages/route.js +64 -7
  253. package/dist/esm/core/agent/stages/route.js.map +1 -1
  254. package/dist/esm/core/agent/stages/seed.d.ts +23 -0
  255. package/dist/esm/core/agent/stages/seed.js +29 -6
  256. package/dist/esm/core/agent/stages/seed.js.map +1 -1
  257. package/dist/esm/core/agent/stages/timeLayer.d.ts +94 -0
  258. package/dist/esm/core/agent/stages/timeLayer.js +193 -0
  259. package/dist/esm/core/agent/stages/timeLayer.js.map +1 -0
  260. package/dist/esm/core/agent/stages/timeLineage.d.ts +31 -0
  261. package/dist/esm/core/agent/stages/timeLineage.js +57 -0
  262. package/dist/esm/core/agent/stages/timeLineage.js.map +1 -0
  263. package/dist/esm/core/agent/stages/toolCalls.d.ts +32 -0
  264. package/dist/esm/core/agent/stages/toolCalls.js +70 -0
  265. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  266. package/dist/esm/core/agent/types.d.ts +37 -0
  267. package/dist/esm/core/inputRequest.d.ts +50 -6
  268. package/dist/esm/core/inputRequest.js +132 -5
  269. package/dist/esm/core/inputRequest.js.map +1 -1
  270. package/dist/esm/core/messageFrom.d.ts +5 -2
  271. package/dist/esm/core/messageFrom.js +5 -2
  272. package/dist/esm/core/messageFrom.js.map +1 -1
  273. package/dist/esm/core/runCheckpoint.js +17 -2
  274. package/dist/esm/core/runCheckpoint.js.map +1 -1
  275. package/dist/esm/core/slots/buildToolsSlot.d.ts +29 -0
  276. package/dist/esm/core/slots/buildToolsSlot.js +30 -2
  277. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  278. package/dist/esm/core/time/ask.d.ts +126 -0
  279. package/dist/esm/core/time/ask.js +230 -0
  280. package/dist/esm/core/time/ask.js.map +1 -0
  281. package/dist/esm/core/time/axis.d.ts +224 -0
  282. package/dist/esm/core/time/axis.js +462 -0
  283. package/dist/esm/core/time/axis.js.map +1 -0
  284. package/dist/esm/core/time/bind.d.ts +143 -0
  285. package/dist/esm/core/time/bind.js +227 -0
  286. package/dist/esm/core/time/bind.js.map +1 -0
  287. package/dist/esm/core/time/check.d.ts +113 -0
  288. package/dist/esm/core/time/check.js +252 -0
  289. package/dist/esm/core/time/check.js.map +1 -0
  290. package/dist/esm/core/time/checkRecord.d.ts +74 -0
  291. package/dist/esm/core/time/checkRecord.js +90 -0
  292. package/dist/esm/core/time/checkRecord.js.map +1 -0
  293. package/dist/esm/core/time/clock.d.ts +183 -0
  294. package/dist/esm/core/time/clock.js +252 -0
  295. package/dist/esm/core/time/clock.js.map +1 -0
  296. package/dist/esm/core/time/convert.d.ts +178 -0
  297. package/dist/esm/core/time/convert.js +609 -0
  298. package/dist/esm/core/time/convert.js.map +1 -0
  299. package/dist/esm/core/time/drift.d.ts +85 -0
  300. package/dist/esm/core/time/drift.js +91 -0
  301. package/dist/esm/core/time/drift.js.map +1 -0
  302. package/dist/esm/core/time/duration.d.ts +71 -0
  303. package/dist/esm/core/time/duration.js +117 -0
  304. package/dist/esm/core/time/duration.js.map +1 -0
  305. package/dist/esm/core/time/forms.d.ts +84 -0
  306. package/dist/esm/core/time/forms.js +268 -0
  307. package/dist/esm/core/time/forms.js.map +1 -0
  308. package/dist/esm/core/time/instant.d.ts +75 -0
  309. package/dist/esm/core/time/instant.js +131 -0
  310. package/dist/esm/core/time/instant.js.map +1 -0
  311. package/dist/esm/core/time/periodForm.d.ts +184 -0
  312. package/dist/esm/core/time/periodForm.js +376 -0
  313. package/dist/esm/core/time/periodForm.js.map +1 -0
  314. package/dist/esm/core/time/present.d.ts +107 -0
  315. package/dist/esm/core/time/present.js +305 -0
  316. package/dist/esm/core/time/present.js.map +1 -0
  317. package/dist/esm/core/time/range.d.ts +127 -0
  318. package/dist/esm/core/time/range.js +249 -0
  319. package/dist/esm/core/time/range.js.map +1 -0
  320. package/dist/esm/core/time/reader.d.ts +162 -0
  321. package/dist/esm/core/time/reader.js +203 -0
  322. package/dist/esm/core/time/reader.js.map +1 -0
  323. package/dist/esm/core/time/readers/english.d.ts +99 -0
  324. package/dist/esm/core/time/readers/english.js +572 -0
  325. package/dist/esm/core/time/readers/english.js.map +1 -0
  326. package/dist/esm/core/time/readingAsk.d.ts +45 -0
  327. package/dist/esm/core/time/readingAsk.js +90 -0
  328. package/dist/esm/core/time/readingAsk.js.map +1 -0
  329. package/dist/esm/core/time/resolve.d.ts +103 -0
  330. package/dist/esm/core/time/resolve.js +684 -0
  331. package/dist/esm/core/time/resolve.js.map +1 -0
  332. package/dist/esm/core/time/resolveRecord.d.ts +160 -0
  333. package/dist/esm/core/time/resolveRecord.js +158 -0
  334. package/dist/esm/core/time/resolveRecord.js.map +1 -0
  335. package/dist/esm/core/time/rows.d.ts +297 -0
  336. package/dist/esm/core/time/rows.js +397 -0
  337. package/dist/esm/core/time/rows.js.map +1 -0
  338. package/dist/esm/core/time/rowsBuild.d.ts +82 -0
  339. package/dist/esm/core/time/rowsBuild.js +185 -0
  340. package/dist/esm/core/time/rowsBuild.js.map +1 -0
  341. package/dist/esm/core/time/textForms.d.ts +53 -0
  342. package/dist/esm/core/time/textForms.js +126 -0
  343. package/dist/esm/core/time/textForms.js.map +1 -0
  344. package/dist/esm/core/time/windows.d.ts +113 -0
  345. package/dist/esm/core/time/windows.js +166 -0
  346. package/dist/esm/core/time/windows.js.map +1 -0
  347. package/dist/esm/core/time/wire.d.ts +63 -0
  348. package/dist/esm/core/time/wire.js +81 -0
  349. package/dist/esm/core/time/wire.js.map +1 -0
  350. package/dist/esm/core/time/zone.d.ts +115 -0
  351. package/dist/esm/core/time/zone.js +242 -0
  352. package/dist/esm/core/time/zone.js.map +1 -0
  353. package/dist/esm/core/tools.d.ts +26 -4
  354. package/dist/esm/core/tools.js.map +1 -1
  355. package/dist/esm/events/payloads.d.ts +16 -2
  356. package/dist/esm/index.d.ts +13 -1
  357. package/dist/esm/index.js +6 -1
  358. package/dist/esm/index.js.map +1 -1
  359. package/dist/esm/lib/answer-account/facts/howSure.js +7 -0
  360. package/dist/esm/lib/answer-account/facts/howSure.js.map +1 -1
  361. package/dist/esm/lib/answer-account/templates.d.ts +3 -0
  362. package/dist/esm/lib/answer-account/templates.js +4 -0
  363. package/dist/esm/lib/answer-account/templates.js.map +1 -1
  364. package/dist/esm/lib/mcp/elicitation.d.ts +84 -0
  365. package/dist/esm/lib/mcp/elicitation.js +181 -0
  366. package/dist/esm/lib/mcp/elicitation.js.map +1 -0
  367. package/dist/esm/lib/mcp/mcpClient.js +9 -3
  368. package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
  369. package/dist/esm/lib/mcp/mcpServe.js +6 -2
  370. package/dist/esm/lib/mcp/mcpServe.js.map +1 -1
  371. package/dist/esm/lib/mcp/mockMcpClient.d.ts +9 -1
  372. package/dist/esm/lib/mcp/mockMcpClient.js +5 -3
  373. package/dist/esm/lib/mcp/mockMcpClient.js.map +1 -1
  374. package/dist/esm/lib/mcp/toolExtras.d.ts +21 -2
  375. package/dist/esm/lib/mcp/toolExtras.js +22 -0
  376. package/dist/esm/lib/mcp/toolExtras.js.map +1 -1
  377. package/dist/esm/lib/mcp/types.d.ts +8 -0
  378. package/dist/esm/lib/time-travel/receipt.d.ts +1 -1
  379. package/dist/esm/lib/time-travel/servedView.d.ts +1 -1
  380. package/dist/esm/lib/time-travel/servedView.js +9 -0
  381. package/dist/esm/lib/time-travel/servedView.js.map +1 -1
  382. package/dist/esm/locales/index.d.ts +6 -0
  383. package/dist/esm/locales/index.js +6 -0
  384. package/dist/esm/locales/index.js.map +1 -1
  385. package/dist/esm/locales/timeAsk.d.ts +29 -0
  386. package/dist/esm/locales/timeAsk.js +44 -0
  387. package/dist/esm/locales/timeAsk.js.map +1 -0
  388. package/dist/esm/recorders/core/resilienceHooks.js +1 -0
  389. package/dist/esm/recorders/core/resilienceHooks.js.map +1 -1
  390. package/dist/esm/resilience/statedWait.d.ts +22 -0
  391. package/dist/esm/resilience/statedWait.js +35 -0
  392. package/dist/esm/resilience/statedWait.js.map +1 -0
  393. package/dist/esm/resilience/withRetry.d.ts +13 -2
  394. package/dist/esm/resilience/withRetry.js +16 -1
  395. package/dist/esm/resilience/withRetry.js.map +1 -1
  396. package/dist/index.js +11 -1
  397. package/dist/index.js.map +1 -1
  398. package/dist/lib/answer-account/facts/howSure.js +7 -0
  399. package/dist/lib/answer-account/facts/howSure.js.map +1 -1
  400. package/dist/lib/answer-account/templates.js +4 -0
  401. package/dist/lib/answer-account/templates.js.map +1 -1
  402. package/dist/lib/mcp/elicitation.js +186 -0
  403. package/dist/lib/mcp/elicitation.js.map +1 -0
  404. package/dist/lib/mcp/mcpClient.js +8 -2
  405. package/dist/lib/mcp/mcpClient.js.map +1 -1
  406. package/dist/lib/mcp/mcpServe.js +5 -1
  407. package/dist/lib/mcp/mcpServe.js.map +1 -1
  408. package/dist/lib/mcp/mockMcpClient.js +4 -2
  409. package/dist/lib/mcp/mockMcpClient.js.map +1 -1
  410. package/dist/lib/mcp/toolExtras.js +25 -1
  411. package/dist/lib/mcp/toolExtras.js.map +1 -1
  412. package/dist/lib/time-travel/servedView.js +9 -0
  413. package/dist/lib/time-travel/servedView.js.map +1 -1
  414. package/dist/locales/index.js +8 -1
  415. package/dist/locales/index.js.map +1 -1
  416. package/dist/locales/timeAsk.js +47 -0
  417. package/dist/locales/timeAsk.js.map +1 -0
  418. package/dist/recorders/core/resilienceHooks.js +1 -0
  419. package/dist/recorders/core/resilienceHooks.js.map +1 -1
  420. package/dist/resilience/statedWait.js +39 -0
  421. package/dist/resilience/statedWait.js.map +1 -0
  422. package/dist/resilience/withRetry.js +16 -1
  423. package/dist/resilience/withRetry.js.map +1 -1
  424. package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
  425. package/dist/types/adapters/llm/BedrockProvider.d.ts.map +1 -1
  426. package/dist/types/adapters/llm/InvokeModelGatewayProvider.d.ts +38 -4
  427. package/dist/types/adapters/llm/InvokeModelGatewayProvider.d.ts.map +1 -1
  428. package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
  429. package/dist/types/adapters/llm/anthropicMessagesWire.d.ts +6 -1
  430. package/dist/types/adapters/llm/anthropicMessagesWire.d.ts.map +1 -1
  431. package/dist/types/adapters/llm/retryAfter.d.ts +28 -0
  432. package/dist/types/adapters/llm/retryAfter.d.ts.map +1 -0
  433. package/dist/types/adapters/types.d.ts +9 -0
  434. package/dist/types/adapters/types.d.ts.map +1 -1
  435. package/dist/types/artifacts/index.d.ts +1 -1
  436. package/dist/types/artifacts/index.d.ts.map +1 -1
  437. package/dist/types/artifacts/types.d.ts +2 -2
  438. package/dist/types/artifacts/types.d.ts.map +1 -1
  439. package/dist/types/core/Agent.d.ts +64 -0
  440. package/dist/types/core/Agent.d.ts.map +1 -1
  441. package/dist/types/core/agent/AgentBuilder.d.ts +60 -0
  442. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  443. package/dist/types/core/agent/arguments/ask.d.ts +88 -5
  444. package/dist/types/core/agent/arguments/ask.d.ts.map +1 -1
  445. package/dist/types/core/agent/arguments/checks.d.ts +1 -1
  446. package/dist/types/core/agent/arguments/checks.d.ts.map +1 -1
  447. package/dist/types/core/agent/arguments/declare.d.ts +76 -15
  448. package/dist/types/core/agent/arguments/declare.d.ts.map +1 -1
  449. package/dist/types/core/agent/arguments/dispatch.d.ts.map +1 -1
  450. package/dist/types/core/agent/arguments/resolve.d.ts +77 -7
  451. package/dist/types/core/agent/arguments/resolve.d.ts.map +1 -1
  452. package/dist/types/core/agent/arguments/rows.d.ts +31 -2
  453. package/dist/types/core/agent/arguments/rows.d.ts.map +1 -1
  454. package/dist/types/core/agent/arguments/serve.d.ts +133 -4
  455. package/dist/types/core/agent/arguments/serve.d.ts.map +1 -1
  456. package/dist/types/core/agent/arguments/subflow.d.ts +28 -0
  457. package/dist/types/core/agent/arguments/subflow.d.ts.map +1 -1
  458. package/dist/types/core/agent/assessment/assess.d.ts.map +1 -1
  459. package/dist/types/core/agent/assessment/compose.d.ts.map +1 -1
  460. package/dist/types/core/agent/assessment/reasons.d.ts.map +1 -1
  461. package/dist/types/core/agent/assessment/types.d.ts +15 -1
  462. package/dist/types/core/agent/assessment/types.d.ts.map +1 -1
  463. package/dist/types/core/agent/buildAgentChart.d.ts +41 -0
  464. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  465. package/dist/types/core/agent/buildDynamicAgentChart.d.ts +1 -1
  466. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  467. package/dist/types/core/agent/coverage/answer.d.ts +20 -1
  468. package/dist/types/core/agent/coverage/answer.d.ts.map +1 -1
  469. package/dist/types/core/agent/coverage/period.d.ts +49 -3
  470. package/dist/types/core/agent/coverage/period.d.ts.map +1 -1
  471. package/dist/types/core/agent/coverage/timeLimitFacts.d.ts +57 -0
  472. package/dist/types/core/agent/coverage/timeLimitFacts.d.ts.map +1 -0
  473. package/dist/types/core/agent/coverage/timeLimits.d.ts +47 -0
  474. package/dist/types/core/agent/coverage/timeLimits.d.ts.map +1 -0
  475. package/dist/types/core/agent/evidence/evidenceIndex.d.ts +25 -2
  476. package/dist/types/core/agent/evidence/evidenceIndex.d.ts.map +1 -1
  477. package/dist/types/core/agent/evidence/gate.d.ts +7 -0
  478. package/dist/types/core/agent/evidence/gate.d.ts.map +1 -1
  479. package/dist/types/core/agent/evidence/normalize.d.ts +0 -34
  480. package/dist/types/core/agent/evidence/normalize.d.ts.map +1 -1
  481. package/dist/types/core/agent/evidence/types.d.ts +12 -1
  482. package/dist/types/core/agent/evidence/types.d.ts.map +1 -1
  483. package/dist/types/core/agent/findings/ledger.d.ts.map +1 -1
  484. package/dist/types/core/agent/findings/types.d.ts +2 -1
  485. package/dist/types/core/agent/findings/types.d.ts.map +1 -1
  486. package/dist/types/core/agent/honesty/mounts.d.ts +25 -0
  487. package/dist/types/core/agent/honesty/mounts.d.ts.map +1 -1
  488. package/dist/types/core/agent/results/subflow.d.ts +34 -2
  489. package/dist/types/core/agent/results/subflow.d.ts.map +1 -1
  490. package/dist/types/core/agent/stages/argumentAsk.d.ts +19 -0
  491. package/dist/types/core/agent/stages/argumentAsk.d.ts.map +1 -1
  492. package/dist/types/core/agent/stages/callLLM.d.ts +6 -0
  493. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -1
  494. package/dist/types/core/agent/stages/prepareFinal.d.ts +13 -1
  495. package/dist/types/core/agent/stages/prepareFinal.d.ts.map +1 -1
  496. package/dist/types/core/agent/stages/route.d.ts +29 -1
  497. package/dist/types/core/agent/stages/route.d.ts.map +1 -1
  498. package/dist/types/core/agent/stages/seed.d.ts +23 -0
  499. package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
  500. package/dist/types/core/agent/stages/timeLayer.d.ts +95 -0
  501. package/dist/types/core/agent/stages/timeLayer.d.ts.map +1 -0
  502. package/dist/types/core/agent/stages/timeLineage.d.ts +32 -0
  503. package/dist/types/core/agent/stages/timeLineage.d.ts.map +1 -0
  504. package/dist/types/core/agent/stages/toolCalls.d.ts +32 -0
  505. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  506. package/dist/types/core/agent/types.d.ts +37 -0
  507. package/dist/types/core/agent/types.d.ts.map +1 -1
  508. package/dist/types/core/inputRequest.d.ts +50 -6
  509. package/dist/types/core/inputRequest.d.ts.map +1 -1
  510. package/dist/types/core/messageFrom.d.ts +5 -2
  511. package/dist/types/core/messageFrom.d.ts.map +1 -1
  512. package/dist/types/core/runCheckpoint.d.ts.map +1 -1
  513. package/dist/types/core/slots/buildToolsSlot.d.ts +29 -0
  514. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  515. package/dist/types/core/time/ask.d.ts +127 -0
  516. package/dist/types/core/time/ask.d.ts.map +1 -0
  517. package/dist/types/core/time/axis.d.ts +225 -0
  518. package/dist/types/core/time/axis.d.ts.map +1 -0
  519. package/dist/types/core/time/bind.d.ts +144 -0
  520. package/dist/types/core/time/bind.d.ts.map +1 -0
  521. package/dist/types/core/time/check.d.ts +114 -0
  522. package/dist/types/core/time/check.d.ts.map +1 -0
  523. package/dist/types/core/time/checkRecord.d.ts +75 -0
  524. package/dist/types/core/time/checkRecord.d.ts.map +1 -0
  525. package/dist/types/core/time/clock.d.ts +184 -0
  526. package/dist/types/core/time/clock.d.ts.map +1 -0
  527. package/dist/types/core/time/convert.d.ts +179 -0
  528. package/dist/types/core/time/convert.d.ts.map +1 -0
  529. package/dist/types/core/time/drift.d.ts +86 -0
  530. package/dist/types/core/time/drift.d.ts.map +1 -0
  531. package/dist/types/core/time/duration.d.ts +72 -0
  532. package/dist/types/core/time/duration.d.ts.map +1 -0
  533. package/dist/types/core/time/forms.d.ts +85 -0
  534. package/dist/types/core/time/forms.d.ts.map +1 -0
  535. package/dist/types/core/time/instant.d.ts +76 -0
  536. package/dist/types/core/time/instant.d.ts.map +1 -0
  537. package/dist/types/core/time/periodForm.d.ts +185 -0
  538. package/dist/types/core/time/periodForm.d.ts.map +1 -0
  539. package/dist/types/core/time/present.d.ts +108 -0
  540. package/dist/types/core/time/present.d.ts.map +1 -0
  541. package/dist/types/core/time/range.d.ts +128 -0
  542. package/dist/types/core/time/range.d.ts.map +1 -0
  543. package/dist/types/core/time/reader.d.ts +163 -0
  544. package/dist/types/core/time/reader.d.ts.map +1 -0
  545. package/dist/types/core/time/readers/english.d.ts +100 -0
  546. package/dist/types/core/time/readers/english.d.ts.map +1 -0
  547. package/dist/types/core/time/readingAsk.d.ts +46 -0
  548. package/dist/types/core/time/readingAsk.d.ts.map +1 -0
  549. package/dist/types/core/time/resolve.d.ts +104 -0
  550. package/dist/types/core/time/resolve.d.ts.map +1 -0
  551. package/dist/types/core/time/resolveRecord.d.ts +161 -0
  552. package/dist/types/core/time/resolveRecord.d.ts.map +1 -0
  553. package/dist/types/core/time/rows.d.ts +298 -0
  554. package/dist/types/core/time/rows.d.ts.map +1 -0
  555. package/dist/types/core/time/rowsBuild.d.ts +83 -0
  556. package/dist/types/core/time/rowsBuild.d.ts.map +1 -0
  557. package/dist/types/core/time/textForms.d.ts +54 -0
  558. package/dist/types/core/time/textForms.d.ts.map +1 -0
  559. package/dist/types/core/time/windows.d.ts +114 -0
  560. package/dist/types/core/time/windows.d.ts.map +1 -0
  561. package/dist/types/core/time/wire.d.ts +64 -0
  562. package/dist/types/core/time/wire.d.ts.map +1 -0
  563. package/dist/types/core/time/zone.d.ts +116 -0
  564. package/dist/types/core/time/zone.d.ts.map +1 -0
  565. package/dist/types/core/tools.d.ts +26 -4
  566. package/dist/types/core/tools.d.ts.map +1 -1
  567. package/dist/types/events/payloads.d.ts +16 -2
  568. package/dist/types/events/payloads.d.ts.map +1 -1
  569. package/dist/types/index.d.ts +13 -1
  570. package/dist/types/index.d.ts.map +1 -1
  571. package/dist/types/lib/answer-account/facts/howSure.d.ts.map +1 -1
  572. package/dist/types/lib/answer-account/templates.d.ts +3 -0
  573. package/dist/types/lib/answer-account/templates.d.ts.map +1 -1
  574. package/dist/types/lib/mcp/elicitation.d.ts +85 -0
  575. package/dist/types/lib/mcp/elicitation.d.ts.map +1 -0
  576. package/dist/types/lib/mcp/mcpServe.d.ts.map +1 -1
  577. package/dist/types/lib/mcp/mockMcpClient.d.ts +9 -1
  578. package/dist/types/lib/mcp/mockMcpClient.d.ts.map +1 -1
  579. package/dist/types/lib/mcp/toolExtras.d.ts +21 -2
  580. package/dist/types/lib/mcp/toolExtras.d.ts.map +1 -1
  581. package/dist/types/lib/mcp/types.d.ts +8 -0
  582. package/dist/types/lib/mcp/types.d.ts.map +1 -1
  583. package/dist/types/lib/time-travel/receipt.d.ts +1 -1
  584. package/dist/types/lib/time-travel/receipt.d.ts.map +1 -1
  585. package/dist/types/lib/time-travel/servedView.d.ts +1 -1
  586. package/dist/types/lib/time-travel/servedView.d.ts.map +1 -1
  587. package/dist/types/locales/index.d.ts +6 -0
  588. package/dist/types/locales/index.d.ts.map +1 -1
  589. package/dist/types/locales/timeAsk.d.ts +30 -0
  590. package/dist/types/locales/timeAsk.d.ts.map +1 -0
  591. package/dist/types/recorders/core/resilienceHooks.d.ts.map +1 -1
  592. package/dist/types/resilience/statedWait.d.ts +23 -0
  593. package/dist/types/resilience/statedWait.d.ts.map +1 -0
  594. package/dist/types/resilience/withRetry.d.ts +13 -2
  595. package/dist/types/resilience/withRetry.d.ts.map +1 -1
  596. package/package.json +1 -1
  597. package/dist/artifacts/timeAxis.js +0 -218
  598. package/dist/artifacts/timeAxis.js.map +0 -1
  599. package/dist/esm/artifacts/timeAxis.d.ts +0 -114
  600. package/dist/esm/artifacts/timeAxis.js +0 -212
  601. package/dist/esm/artifacts/timeAxis.js.map +0 -1
  602. package/dist/types/artifacts/timeAxis.d.ts +0 -115
  603. package/dist/types/artifacts/timeAxis.d.ts.map +0 -1
@@ -53,8 +53,13 @@
53
53
  * that needed it are refused.
54
54
  */
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
- exports.settledCalls = exports.bindAnswer = exports.checkAnswer = exports.memberValue = exports.readAskAnswer = exports.isArgumentAsk = exports.withWaiting = exports.argumentAskDeclaration = exports.judgeAskContextHook = exports.nextAskRound = exports.initialAskState = exports.planAskFields = exports.periodsShareField = exports.convertSpelling = exports.ARGUMENT_REASK_QUESTION = exports.ARGUMENT_ASK_QUESTION = exports.ARGUMENT_ASK_ID = exports.ASK_CONTEXT_CHARS = exports.MAX_ASK_FIELDS = exports.MAX_ASK_ROUNDS = exports.ASK_CONTEXT_KEY = exports.ARGUMENT_ASK_KIND = void 0;
56
+ exports.settledCalls = exports.WINDOW_ZONE_EXPECTATION = exports.WINDOW_FORM_EXPECTATION = exports.bindAnswer = exports.factExpectation = exports.checkAnswer = exports.memberValue = exports.readAskAnswer = exports.isArgumentAsk = exports.withWaiting = exports.argumentAskDeclaration = exports.judgeAskContextHook = exports.nextAskRound = exports.initialAskState = exports.planAskFields = exports.periodsShareField = exports.convertSpelling = exports.ARGUMENT_REASK_QUESTION = exports.ARGUMENT_ASK_QUESTION = exports.ARGUMENT_ASK_ID = exports.ASK_CONTEXT_CHARS = exports.MAX_ASK_FIELDS = exports.MAX_ASK_ROUNDS = exports.ASK_CONTEXT_KEY = exports.ARGUMENT_ASK_KIND = void 0;
57
57
  const inputRequest_js_1 = require("../../inputRequest.js");
58
+ const convert_js_1 = require("../../time/convert.js");
59
+ const range_js_1 = require("../../time/range.js");
60
+ const resolve_js_1 = require("../../time/resolve.js");
61
+ const readingAsk_js_1 = require("../../time/readingAsk.js");
62
+ const rows_js_1 = require("../../time/rows.js");
58
63
  const toolShownArgs_js_1 = require("../../toolShownArgs.js");
59
64
  const toolArgsValidation_js_1 = require("../toolArgsValidation.js");
60
65
  const declare_js_1 = require("./declare.js");
@@ -63,7 +68,7 @@ const askMarker_js_1 = require("./askMarker.js");
63
68
  Object.defineProperty(exports, "ARGUMENT_ASK_KIND", { enumerable: true, get: function () { return askMarker_js_1.ARGUMENT_ASK_KIND; } });
64
69
  Object.defineProperty(exports, "ASK_CONTEXT_KEY", { enumerable: true, get: function () { return askMarker_js_1.ASK_CONTEXT_KEY; } });
65
70
  const declare_js_2 = require("./declare.js");
66
- const rows_js_1 = require("./rows.js");
71
+ const rows_js_2 = require("./rows.js");
67
72
  // ─── The bounds and the fixed words ─────────────────────────────────────
68
73
  /** How many times one field may be put to the person before its calls are refused. */
69
74
  exports.MAX_ASK_ROUNDS = 3;
@@ -83,6 +88,50 @@ exports.ARGUMENT_ASK_QUESTION = 'Before the next step can run, a few values are
83
88
  // law: says what happened to the earlier answer, in the past tense, and what is asked now.
84
89
  /** The question of a re-ask, after an answer that did not fit the tool's own schema. */
85
90
  exports.ARGUMENT_REASK_QUESTION = 'One answer did not fit what the tool accepts. Please answer that field again.';
91
+ /**
92
+ * The indexes of the choices EVERY member tool's declared facts allow (§ 6.3:
93
+ * "some readings inside the tool's `direction` → the ones inside as choices")
94
+ * — `undefined` when none is left (several tools that disagree: every choice
95
+ * is offered, and the answer is judged against each tool's facts).
96
+ */
97
+ function allowedChoices(choices, members, toolOf, now) {
98
+ const factsOf = [...new Set(members.map((m) => m.toolName))].map((name) => {
99
+ const rules = (0, declare_js_1.rulesOf)(toolOf(name));
100
+ return rules === undefined || (0, declare_js_1.isRefused)(rules) ? {} : (0, declare_js_1.periodFactsOf)(rules.period);
101
+ });
102
+ const kept = choices.flatMap((value, i) => {
103
+ const range = (0, range_js_1.parseRange)(value);
104
+ if (range === undefined)
105
+ return [];
106
+ return factsOf.every((facts) => (0, convert_js_1.periodFactProblem)(range, facts, now) === undefined) ? [i] : [];
107
+ });
108
+ return kept.length > 0 ? kept : undefined;
109
+ }
110
+ /** A window field's choices narrowed to `kept` (its labels and zones with them). */
111
+ function narrowed(field, kept) {
112
+ const window = field.window;
113
+ if (kept === undefined || field.choices === undefined || window === undefined)
114
+ return field;
115
+ const pick = (list) => list === undefined ? undefined : kept.map((i) => list[i]);
116
+ const labels = pick(window.labels);
117
+ const zones = pick(window.zones);
118
+ return {
119
+ ...field,
120
+ choices: pick(field.choices),
121
+ window: {
122
+ ...window,
123
+ ...(labels !== undefined && { labels }),
124
+ ...(zones !== undefined && { zones }),
125
+ },
126
+ };
127
+ }
128
+ /** The arguments of every period form a tool declares — what a window fills. */
129
+ function formArgumentsOfTool(toolOf, toolName) {
130
+ const rules = (0, declare_js_1.rulesOf)(toolOf(toolName));
131
+ if (rules === undefined || (0, declare_js_1.isRefused)(rules))
132
+ return new Set();
133
+ return new Set((0, declare_js_1.periodFormsOf)(rules.period).flatMap((f) => (0, convert_js_1.formArguments)(f).map((a) => a.argument)));
134
+ }
86
135
  const RULED_ASK_TYPES = {
87
136
  string: 'string',
88
137
  number: 'number',
@@ -160,18 +209,32 @@ function mergeSharedPeriods(fields) {
160
209
  * argument whose rule cannot be read here is left out — the dispatch re-read
161
210
  * refuses its call.
162
211
  */
163
- function planAskFields(asks, calls, toolOf) {
212
+ function planAskFields(asks, calls, toolOf, windowPlan) {
164
213
  const nameOf = new Map(calls.map((c) => [c.id, c.name]));
165
214
  // Keyed by tool, then argument — a map of maps, never a joined key.
166
215
  const byTool = new Map();
167
216
  const order = [];
217
+ // The lazy word-driven ask: a call's PERIOD arguments join the one window field.
218
+ const windowMembers = new Map();
168
219
  for (const entry of asks) {
169
220
  const toolName = nameOf.get(entry.toolCallId);
170
221
  if (toolName === undefined)
171
222
  continue;
172
223
  const forTool = byTool.get(toolName) ?? new Map();
173
224
  byTool.set(toolName, forTool);
225
+ const periodArguments = windowPlan !== undefined && entry.window === true
226
+ ? formArgumentsOfTool(toolOf, toolName)
227
+ : new Set();
174
228
  for (const argument of entry.ask) {
229
+ if (periodArguments.has(argument)) {
230
+ const forWindow = windowMembers.get(toolName) ?? new Map();
231
+ windowMembers.set(toolName, forWindow);
232
+ const ids = forWindow.get(argument) ?? [];
233
+ if (!ids.includes(entry.toolCallId))
234
+ ids.push(entry.toolCallId);
235
+ forWindow.set(argument, ids);
236
+ continue;
237
+ }
175
238
  const quote = entry.quoted?.find((q) => q.argument === argument)?.quote;
176
239
  const seen = forTool.get(argument);
177
240
  if (seen !== undefined) {
@@ -191,7 +254,7 @@ function planAskFields(asks, calls, toolOf) {
191
254
  order.push(pending);
192
255
  }
193
256
  }
194
- return mergeSharedPeriods(order.map((p) => ({
257
+ const fields = mergeSharedPeriods(order.map((p) => ({
195
258
  ...p.field,
196
259
  members: [
197
260
  {
@@ -201,8 +264,35 @@ function planAskFields(asks, calls, toolOf) {
201
264
  },
202
265
  ],
203
266
  })));
267
+ if (windowPlan === undefined || windowMembers.size === 0)
268
+ return fields;
269
+ const window = windowFieldOf(windowPlan, windowMembers);
270
+ const kept = window.choices === undefined
271
+ ? undefined
272
+ : allowedChoices(window.choices, window.members, toolOf, windowPlan.now);
273
+ return [narrowed(window, kept), ...fields];
204
274
  }
205
275
  exports.planAskFields = planAskFields;
276
+ /** The ONE window field: the open mention's question, bound to every call's period arguments. */
277
+ function windowFieldOf(plan, members) {
278
+ return {
279
+ type: 'string',
280
+ question: plan.question,
281
+ ...(plan.choices !== undefined && { choices: plan.choices }),
282
+ members: [...members].flatMap(([toolName, byArgument]) => [...byArgument].map(([argument, ids]) => ({
283
+ toolName,
284
+ argument,
285
+ period: true,
286
+ toolCallIds: [...ids],
287
+ }))),
288
+ window: {
289
+ format: plan.format,
290
+ ...(plan.labels !== undefined && { labels: plan.labels }),
291
+ ...(plan.zones !== undefined && { zones: plan.zones }),
292
+ mention: plan.mention,
293
+ },
294
+ };
295
+ }
206
296
  // ─── The rounds ─────────────────────────────────────────────────────────
207
297
  /** A fresh state for a batch's fields: nothing asked yet. */
208
298
  function initialAskState(iteration, fields) {
@@ -219,7 +309,7 @@ function nextAskRound(state) {
219
309
  const again = state.progress.flatMap((p, i) => (p.invalid === true ? [i] : []));
220
310
  if (again.length > 0)
221
311
  return { fieldIndexes: again.slice(0, exports.MAX_ASK_FIELDS), reask: true };
222
- const fresh = state.progress.flatMap((p, i) => (p.rounds === 0 ? [i] : []));
312
+ const fresh = state.progress.flatMap((p, i) => (p.rounds === 0 || p.next === true ? [i] : []));
223
313
  if (fresh.length > 0)
224
314
  return { fieldIndexes: fresh.slice(0, exports.MAX_ASK_FIELDS), reask: false };
225
315
  return undefined;
@@ -270,7 +360,7 @@ function contextFieldOf(id, field, callLimit) {
270
360
  argument: first.argument,
271
361
  calls,
272
362
  ...(more > 0 && { moreCalls: more }),
273
- ...(quoted !== undefined && { quoted: (0, rows_js_1.shownQuote)(quoted) }),
363
+ ...(quoted !== undefined && { quoted: (0, rows_js_2.shownQuote)(quoted) }),
274
364
  ...(rest.length > 0 && {
275
365
  sharedWith: rest.map((m) => ({
276
366
  tool: m.toolName,
@@ -332,6 +422,9 @@ function argumentAskDeclaration(state, round, host) {
332
422
  required: true,
333
423
  description: field.question,
334
424
  ...(field.choices !== undefined && { enum: [...field.choices] }),
425
+ // A window field is a TIME field: the door judges its answer (`core/time/ask.ts`).
426
+ ...(field.window !== undefined && { format: field.window.format }),
427
+ ...(field.window?.labels !== undefined && { labels: [...field.window.labels] }),
335
428
  };
336
429
  });
337
430
  return {
@@ -417,7 +510,7 @@ exports.memberValue = memberValue;
417
510
  * `expected` names what a misfit failed — the schema's expectation, never the
418
511
  * answer.
419
512
  */
420
- function checkAnswer(field, answer, toolOf) {
513
+ function checkAnswer(field, answer, toolOf, time) {
421
514
  for (const member of field.members) {
422
515
  const value = memberValue(field, member, answer);
423
516
  if (value === undefined) {
@@ -428,10 +521,65 @@ function checkAnswer(field, answer, toolOf) {
428
521
  const expected = verdict.issues[0]?.expected;
429
522
  return { fits: false, ...(expected !== undefined && { expected }) };
430
523
  }
524
+ const fact = time === undefined ? undefined : factBroken(toolOf, member, value, time);
525
+ if (fact !== undefined)
526
+ return { fits: false, expected: factExpectation(fact.problem, fact.facts) };
431
527
  }
432
528
  return { fits: true };
433
529
  }
434
530
  exports.checkAnswer = checkAnswer;
531
+ /**
532
+ * The tool's declared fact an answer for its period argument breaks (the time
533
+ * layer, step T5a — `core/time/convert.ts` · `periodFactProblem`): the answer,
534
+ * read back through the single-argument form that names the argument, against
535
+ * `direction`, `retention` and `maxRange` at the turn's clock. `undefined` for
536
+ * a tool that declares none of the three, an argument no single-argument form
537
+ * names (one bound of two), or an answer no form reads back.
538
+ */
539
+ function factBroken(toolOf, member, value, time) {
540
+ if (member.period !== true)
541
+ return undefined;
542
+ const rules = (0, declare_js_1.rulesOf)(toolOf(member.toolName));
543
+ if (rules === undefined || (0, declare_js_1.isRefused)(rules))
544
+ return undefined;
545
+ const facts = (0, declare_js_1.periodFactsOf)(rules.period);
546
+ if (facts.direction === undefined &&
547
+ facts.retention === undefined &&
548
+ facts.maxRange === undefined) {
549
+ return undefined;
550
+ }
551
+ for (const form of (0, declare_js_1.periodFormsOf)(rules.period)) {
552
+ if (form.kind === 'bounds' || form.kind === 'object' || form.argument !== member.argument)
553
+ continue;
554
+ const range = (0, convert_js_1.readBack)({ [member.argument]: value }, form, time);
555
+ if (range === undefined)
556
+ continue;
557
+ const problem = (0, convert_js_1.periodFactProblem)(range, facts, time.now);
558
+ return problem === undefined ? undefined : { problem, facts };
559
+ }
560
+ return undefined;
561
+ }
562
+ // LENS · tool-result · persistent-history (through `serve.ts` · `unansweredRefusal`)
563
+ // reads: the tool's declared fact the person's answers kept breaking, and its declared value
564
+ // law: names the rule, never the answer; a fact about the source, in the present tense of the source.
565
+ /**
566
+ * What an answer for a period argument must be, in the words the refusal of
567
+ * an exhausted ask names it (`serve.ts` · `unansweredRefusal`'s `expected`) —
568
+ * the tool's own fact, never the person's answer.
569
+ */
570
+ function factExpectation(problem, facts) {
571
+ switch (problem) {
572
+ case 'time-future':
573
+ return 'a window that has already happened (the source holds only the past)';
574
+ case 'time-past':
575
+ return 'a window still to come (the source holds only the future)';
576
+ case 'beyond-retention':
577
+ return `a window inside what the source keeps (${facts.retention ?? 'its retention'})`;
578
+ case 'over-max-range':
579
+ return `a window no wider than ${facts.maxRange ?? 'the source reads at once'}`;
580
+ }
581
+ }
582
+ exports.factExpectation = factExpectation;
435
583
  /**
436
584
  * Bind the person's answer to the ask now out: each field whose value fits
437
585
  * every member's schema is bound (`answered` rows, one per (call, argument),
@@ -440,18 +588,45 @@ exports.checkAnswer = checkAnswer;
440
588
  * or — asked `MAX_ASK_ROUNDS` times already — exhausted. The question is no
441
589
  * longer out afterwards.
442
590
  */
443
- function bindAnswer(state, values, calls, toolOf, stamp) {
591
+ function bindAnswer(state, values, calls, toolOf, stamp, time) {
444
592
  const waiting = state.waiting;
445
593
  if (waiting === undefined)
446
594
  return { state, rows: [] };
447
595
  const byId = new Map(calls.map((c) => [c.id, c]));
448
596
  const progress = [...state.progress];
449
597
  const rows = [];
598
+ const fields = [...state.fields];
450
599
  waiting.fieldIndexes.forEach((index, k) => {
451
600
  const field = state.fields[index];
452
601
  const answer = values[`f${k + 1}`];
453
602
  const was = progress[index];
454
- const check = answer === undefined ? { fits: false } : checkAnswer(field, answer, toolOf);
603
+ if (field.window !== undefined && answer !== undefined) {
604
+ const bound = bindWindowAnswer(field, answer, byId, toolOf, time);
605
+ if ('followUp' in bound) {
606
+ fields[index] = bound.followUp;
607
+ progress[index] = { rounds: was.rounds, next: true };
608
+ return;
609
+ }
610
+ if ('fills' in bound) {
611
+ progress[index] = { rounds: was.rounds, answer, fills: bound.fills };
612
+ rows.push(...windowAnsweredRows(field, bound.fills, byId, toolOf, stamp));
613
+ // The person's window for the mention — the only door a window of words becomes theirs.
614
+ rows.push((0, rows_js_1.timeAnswerRow)({ mention: field.window.mention, ...bound.answered }, stamp));
615
+ return;
616
+ }
617
+ if ('outside' in bound) {
618
+ progress[index] = { rounds: was.rounds, exhausted: true, expected: bound.outside };
619
+ rows.push(...memberCalls(field).map((who) => (0, rows_js_2.askedRowOf)(who, stamp, 'invalid-answer')));
620
+ return;
621
+ }
622
+ progress[index] =
623
+ was.rounds >= exports.MAX_ASK_ROUNDS
624
+ ? { rounds: was.rounds, exhausted: true, expected: bound.expected }
625
+ : { rounds: was.rounds, invalid: true, expected: bound.expected };
626
+ rows.push(...memberCalls(field).map((who) => (0, rows_js_2.askedRowOf)(who, stamp, 'invalid-answer')));
627
+ return;
628
+ }
629
+ const check = answer === undefined ? { fits: false } : checkAnswer(field, answer, toolOf, time);
455
630
  if (answer !== undefined && check.fits) {
456
631
  progress[index] = { rounds: was.rounds, answer };
457
632
  rows.push(...answeredRows(field, answer, byId, toolOf, stamp));
@@ -462,13 +637,166 @@ function bindAnswer(state, values, calls, toolOf, stamp) {
462
637
  was.rounds >= exports.MAX_ASK_ROUNDS
463
638
  ? { rounds: was.rounds, exhausted: true, ...expected }
464
639
  : { rounds: was.rounds, invalid: true, ...expected };
465
- rows.push(...memberCalls(field).map((who) => (0, rows_js_1.askedRowOf)(who, stamp, 'invalid-answer')));
640
+ rows.push(...memberCalls(field).map((who) => (0, rows_js_2.askedRowOf)(who, stamp, 'invalid-answer')));
466
641
  });
467
642
  const { waiting: _settled, ...rest } = state;
468
643
  void _settled;
469
- return { state: { ...rest, progress }, rows };
644
+ return { state: { ...rest, fields, progress }, rows };
470
645
  }
471
646
  exports.bindAnswer = bindAnswer;
647
+ // LENS · tool-result · persistent-history (through `serve.ts` · `unansweredRefusal`)
648
+ // reads: nothing — fixed expectations for a window answer a tool's period forms cannot take
649
+ // law: names the rule, never the answer.
650
+ /** What a window answer must be when no period form of a tool holds it. */
651
+ exports.WINDOW_FORM_EXPECTATION = "a window one of the tool's declared period forms can hold";
652
+ /** What a zone answer must be when the person's words name no time in it. */
653
+ exports.WINDOW_ZONE_EXPECTATION = 'a time zone in which the time the person wrote exists';
654
+ /**
655
+ * Bind one answer to a window field: a `zone` answer re-reads the mention in
656
+ * that zone and asks the follow-up question with the readings as choices —
657
+ * each still a PROPOSAL to confirm (the owner's decision "Always confirm");
658
+ * a `time-range` answer (a choice, or free entry the door already judged) is
659
+ * converted into every member call's forms — exactly, else wider (the fill's
660
+ * own rule) — after each tool's declared facts. A choice the ask offered is
661
+ * `confirmed` (the person's click on the pre-filled reading); any other window
662
+ * is `edited` — both are the person's answer.
663
+ */
664
+ function bindWindowAnswer(field, answer, byId, toolOf, time) {
665
+ const window = field.window;
666
+ if (time === undefined)
667
+ return { expected: exports.WINDOW_FORM_EXPECTATION };
668
+ if (window.format === 'zone') {
669
+ const reading = time.reading;
670
+ if (reading === undefined || typeof answer !== 'string' || time.zone === undefined) {
671
+ return { expected: exports.WINDOW_ZONE_EXPECTATION };
672
+ }
673
+ const row = reading.row;
674
+ // The re-read stays a PROPOSAL: the zone was the person's, the window is still words.
675
+ const resolution = (0, resolve_js_1.resolveMention)((0, resolve_js_1.withZoneAnswered)(row.parses ?? [], answer), { now: time.now, zone: time.zone }, row.reader, true);
676
+ const choice = (0, resolve_js_1.chooseReading)(resolution, reading.policy, row.reader.kind, undefined, true);
677
+ if (choice.by === 'open') {
678
+ const ask = (0, readingAsk_js_1.timeAskOf)({ ...row, candidates: resolution.candidates, choice }, reading.messages);
679
+ if (ask === undefined || ask.field.format !== 'time-range') {
680
+ return { expected: exports.WINDOW_ZONE_EXPECTATION };
681
+ }
682
+ const zones = (ask.field.enum ?? []).map((value) => resolution.candidates.find((c) => (0, range_js_1.spellRange)(c.range) === value)?.zone ?? answer);
683
+ const followUp = {
684
+ ...field,
685
+ question: ask.question,
686
+ ...(ask.field.enum !== undefined && { choices: ask.field.enum }),
687
+ window: {
688
+ format: 'time-range',
689
+ ...(ask.field.labels !== undefined && { labels: ask.field.labels }),
690
+ zones,
691
+ mention: window.mention,
692
+ },
693
+ };
694
+ const choices = (ask.field.enum ?? []);
695
+ const kept = allowedChoices(choices, field.members, toolOf, time.now);
696
+ if (kept === undefined && field.members.length > 0) {
697
+ // Every reading breaks a member tool's facts: nothing is asked (§ 6.3) — the reason.
698
+ const outside = factOutside(choices, field.members, toolOf, time.now);
699
+ if (outside !== undefined)
700
+ return { outside };
701
+ }
702
+ return { followUp: narrowed(followUp, kept) };
703
+ }
704
+ return { expected: exports.WINDOW_ZONE_EXPECTATION };
705
+ }
706
+ const range = typeof answer === 'string' ? (0, range_js_1.parseRange)(answer) : undefined;
707
+ if (range === undefined)
708
+ return { expected: exports.WINDOW_FORM_EXPECTATION };
709
+ const at = field.choices?.indexOf(answer) ?? -1;
710
+ const zone = (at >= 0 ? window.zones?.[at] : undefined) ?? time.zone;
711
+ if (zone === undefined)
712
+ return { expected: exports.WINDOW_FORM_EXPECTATION };
713
+ const bound = windowFills(field, range, zone, byId, toolOf, time);
714
+ if (!('fills' in bound))
715
+ return bound;
716
+ return { fills: bound.fills, answered: { range, zone, how: at >= 0 ? 'confirmed' : 'edited' } };
717
+ }
718
+ /** What the first reading breaks, when EVERY reading breaks one member tool's facts — the refusal's words. */
719
+ function factOutside(choices, members, toolOf, now) {
720
+ for (const name of new Set(members.map((m) => m.toolName))) {
721
+ const rules = (0, declare_js_1.rulesOf)(toolOf(name));
722
+ if (rules === undefined || (0, declare_js_1.isRefused)(rules))
723
+ continue;
724
+ const facts = (0, declare_js_1.periodFactsOf)(rules.period);
725
+ const problems = choices.map((value) => {
726
+ const range = (0, range_js_1.parseRange)(value);
727
+ return range === undefined ? undefined : (0, convert_js_1.periodFactProblem)(range, facts, now);
728
+ });
729
+ const first = problems[0];
730
+ if (first !== undefined && problems.every((p) => p !== undefined)) {
731
+ return factExpectation(first, facts);
732
+ }
733
+ }
734
+ return undefined;
735
+ }
736
+ /** The window written into every member call's forms, after each tool's facts — or what it failed. */
737
+ function windowFills(field, range, zone, byId, toolOf, time) {
738
+ const fills = {};
739
+ for (const member of field.members) {
740
+ const rules = (0, declare_js_1.rulesOf)(toolOf(member.toolName));
741
+ if (rules === undefined || (0, declare_js_1.isRefused)(rules))
742
+ return { expected: exports.WINDOW_FORM_EXPECTATION };
743
+ const forms = (0, declare_js_1.periodFormsOf)(rules.period);
744
+ const facts = (0, declare_js_1.periodFactsOf)(rules.period);
745
+ const problem = (0, convert_js_1.periodFactProblem)(range, facts, time.now);
746
+ if (problem !== undefined)
747
+ return { expected: factExpectation(problem, facts) };
748
+ for (const id of member.toolCallIds) {
749
+ if (fills[id] !== undefined || !byId.has(id))
750
+ continue;
751
+ const ctx = {
752
+ now: time.now,
753
+ zone,
754
+ ...(time.appZone !== undefined && { appZone: time.appZone }),
755
+ granularityMs: (0, convert_js_1.granularityMsOf)(facts),
756
+ };
757
+ const exact = (0, convert_js_1.convertExact)({ range }, forms, ctx);
758
+ const conversion = exact ?? (0, convert_js_1.convertWidened)({ range }, forms, ctx, (0, convert_js_1.widestMsOf)(facts));
759
+ if (conversion === undefined)
760
+ return { expected: exports.WINDOW_FORM_EXPECTATION };
761
+ for (const [argument, value] of Object.entries(conversion.values)) {
762
+ if (typeof value === 'object')
763
+ continue;
764
+ const verdict = (0, toolArgsValidation_js_1.validatePropertyValue)(value, propertyOf(toolOf, { ...member, argument }));
765
+ if (!verdict.ok) {
766
+ const expected = verdict.issues[0]?.expected;
767
+ return { expected: expected ?? exports.WINDOW_FORM_EXPECTATION };
768
+ }
769
+ }
770
+ fills[id] = {
771
+ values: conversion.values,
772
+ ...(exact === undefined && {
773
+ wider: facts.filtersToAsked === true ? 'tool-trims' : 'reads-more',
774
+ }),
775
+ };
776
+ }
777
+ }
778
+ return { fills };
779
+ }
780
+ /** The `answered` rows of a bound window: one per (call, argument) the window filled, in the tool's own view. */
781
+ function windowAnsweredRows(field, fills, byId, toolOf, stamp) {
782
+ const nameOf = new Map(field.members.flatMap((m) => m.toolCallIds.map((id) => [id, m.toolName])));
783
+ return Object.entries(fills).flatMap(([toolCallId, { values }]) => {
784
+ const call = byId.get(toolCallId);
785
+ const toolName = nameOf.get(toolCallId);
786
+ if (call === undefined || toolName === undefined)
787
+ return [];
788
+ const tool = toolOf(toolName);
789
+ const shown = tool === undefined ? undefined : (0, toolShownArgs_js_1.shownArgsOf)(tool, { ...call.args, ...values });
790
+ return Object.keys(values).map((argument) => (0, rows_js_2.answeredRowOf)({
791
+ toolCallId,
792
+ toolName,
793
+ argument,
794
+ rule: 'ask',
795
+ period: true,
796
+ shownValue: shown === undefined ? rows_js_2.HIDDEN_VALUE : shown[argument],
797
+ }, stamp));
798
+ });
799
+ }
472
800
  /** Every (call, argument) a field binds to, as a row identity. */
473
801
  function memberCalls(field) {
474
802
  return field.members.flatMap((m) => m.toolCallIds.map((toolCallId) => ({
@@ -492,7 +820,7 @@ function answeredRows(field, answer, byId, toolOf, stamp) {
492
820
  // (its call is refused at dispatch) has no view to ask, so its value is shown as hidden —
493
821
  // an omission, never a raw value a view might have hidden.
494
822
  const shownValue = tool === undefined
495
- ? rows_js_1.HIDDEN_VALUE
823
+ ? rows_js_2.HIDDEN_VALUE
496
824
  : (0, toolShownArgs_js_1.shownArgsOf)(tool, { ...call.args, [m.argument]: value })[m.argument];
497
825
  // A value the call CARRIED and the answer replaced (declared sources: an untraced value is
498
826
  // asked about) — the model's own, in the same view. Absent when the call left it out.
@@ -500,10 +828,10 @@ function answeredRows(field, answer, byId, toolOf, stamp) {
500
828
  const shownProposed = !carried
501
829
  ? undefined
502
830
  : tool === undefined
503
- ? rows_js_1.HIDDEN_VALUE
831
+ ? rows_js_2.HIDDEN_VALUE
504
832
  : (0, toolShownArgs_js_1.shownArgsOf)(tool, call.args)[m.argument];
505
833
  return [
506
- (0, rows_js_1.answeredRowOf)({
834
+ (0, rows_js_2.answeredRowOf)({
507
835
  toolCallId,
508
836
  toolName: m.toolName,
509
837
  argument: m.argument,
@@ -533,6 +861,20 @@ function settledCalls(state) {
533
861
  };
534
862
  state.fields.forEach((field, i) => {
535
863
  const p = state.progress[i];
864
+ if (field.window !== undefined && p.fills !== undefined) {
865
+ for (const [id, fill] of Object.entries(p.fills)) {
866
+ for (const [argument, value] of Object.entries(fill.values)) {
867
+ entry(id).fills.push({
868
+ argument,
869
+ value: value,
870
+ source: 'answered',
871
+ window: true,
872
+ ...(fill.wider !== undefined && { wider: fill.wider }),
873
+ });
874
+ }
875
+ }
876
+ return;
877
+ }
536
878
  for (const m of field.members) {
537
879
  for (const id of m.toolCallIds) {
538
880
  if (p.answer !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../../src/core/agent/arguments/ask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../../src/core/agent/arguments/ask.ts"],"names":[],"mappings":"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"}