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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../src/core/time/resolve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ /**
3
+ * core/time/resolveRecord — what the resolver writes down: the candidate and
4
+ * choice shapes, the app's policy (read at `.time()`), and the checks the
5
+ * checkpoint door runs on a filed reading.
6
+ *
7
+ * Pattern: the record half of `resolve.ts`, split from the resolver so the
8
+ * SYNCHRONOUS doors — `.time({ policy })` (`clock.ts` ·
9
+ * `readTimeOptions`) and `validateCheckpoint` (`rows.ts` ·
10
+ * `timeRowIsWellFormed`) — reach the shapes and their checks without
11
+ * the resolver, which only an armed seed loads (`agent/stages/
12
+ * timeLayer.ts`, through `import()`: the optional-family law of
13
+ * docs-next's site budget). `resolve.ts` re-exports everything here.
14
+ * Role: core/ leaf (the time layer). Imports `range.ts` and `zone.ts`
15
+ * (the window check) only.
16
+ * Emits: N/A.
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * readPolicy({ dateOrder: 'DMY' }); // { dateOrder: 'DMY', year: 'ask' }
21
+ * candidateIsWellFormed({ kind: 'range', range: { from: 'x', to: 'y' } }); // false
22
+ * ```
23
+ */
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.choiceIsWellFormed = exports.candidateIsWellFormed = exports.PART_ORDER = exports.readPolicy = exports.DEFAULT_TIME_POLICY = void 0;
26
+ const range_js_1 = require("./range.js");
27
+ const zone_js_1 = require("./zone.js");
28
+ /** No silent MDY, no guessed year. */
29
+ exports.DEFAULT_TIME_POLICY = Object.freeze({ dateOrder: 'ask', year: 'ask' });
30
+ // ─── The policy ──────────────────────────────────────────────────────────
31
+ const DATE_ORDERS = ['ask', 'MDY', 'DMY', 'YMD'];
32
+ const YEAR_RULES = ['ask', 'current'];
33
+ /**
34
+ * The app's `policy`, read with the v1 defaults filled in — or a problem in
35
+ * words (an unknown key, a value outside its switch).
36
+ */
37
+ function readPolicy(value) {
38
+ if (value === undefined)
39
+ return exports.DEFAULT_TIME_POLICY;
40
+ if (value === null || typeof value !== 'object' || Array.isArray(value)) {
41
+ return 'policy must be an object — { dateOrder?, year? }';
42
+ }
43
+ const p = value;
44
+ const extra = Object.keys(p).filter((k) => k !== 'dateOrder' && k !== 'year');
45
+ if (extra.length > 0) {
46
+ return `policy takes { dateOrder?, year? } — unknown key ${extra
47
+ .map((k) => `'${k}'`)
48
+ .join(', ')}`;
49
+ }
50
+ if (p.dateOrder !== undefined && !DATE_ORDERS.includes(p.dateOrder)) {
51
+ return "policy.dateOrder must be 'ask', 'MDY', 'DMY' or 'YMD'";
52
+ }
53
+ if (p.year !== undefined && !YEAR_RULES.includes(p.year)) {
54
+ return "policy.year must be 'ask' or 'current'";
55
+ }
56
+ return Object.freeze({
57
+ dateOrder: p.dateOrder ?? 'ask',
58
+ year: p.year ?? 'ask',
59
+ });
60
+ }
61
+ exports.readPolicy = readPolicy;
62
+ // ─── The record's checks ─────────────────────────────────────────────────
63
+ /** The parts a candidate can name, in the order a record lists them. */
64
+ exports.PART_ORDER = [
65
+ 'year',
66
+ 'month',
67
+ 'day',
68
+ 'hour',
69
+ 'minute',
70
+ 'second',
71
+ 'meridiem',
72
+ 'zone',
73
+ 'duration',
74
+ ];
75
+ const GRAINS = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];
76
+ const ANCHORS = ['message', 'previous-window', 'none'];
77
+ const OPEN = [
78
+ 'date-order',
79
+ 'year',
80
+ 'meridiem',
81
+ 'dst',
82
+ 'zone',
83
+ 'parse',
84
+ 'confirm',
85
+ ];
86
+ const isRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
87
+ const isIndex = (value, below) => typeof value === 'number' && Number.isInteger(value) && value >= 0 && value < below;
88
+ const isPartList = (value) => Array.isArray(value) && value.every((p) => exports.PART_ORDER.includes(p));
89
+ function isNote(value) {
90
+ if (!isRecord(value))
91
+ return false;
92
+ switch (value.kind) {
93
+ case 'end-of-grain':
94
+ return true;
95
+ case 'dst-overlap':
96
+ case 'dst-gap':
97
+ return ((value.which === 'earlier' || value.which === 'later') &&
98
+ (value.end === undefined || value.end === 'from' || value.end === 'to'));
99
+ case 'offset-said':
100
+ return typeof value.offset === 'string';
101
+ case 'century-implied':
102
+ return typeof value.century === 'number';
103
+ default:
104
+ return false;
105
+ }
106
+ }
107
+ function isWindow(value) {
108
+ if (!isRecord(value))
109
+ return false;
110
+ if (value.kind === 'range')
111
+ return (0, range_js_1.isTimeRange)(value.range);
112
+ return value.kind === 'lookback' && typeof value.duration === 'string';
113
+ }
114
+ /** Whether `value` is a candidate this module would have written. */
115
+ function candidateIsWellFormed(value) {
116
+ if (!isRecord(value))
117
+ return false;
118
+ const reader = value.reader;
119
+ return (isWindow(value.window) &&
120
+ (0, range_js_1.isTimeRange)(value.range) &&
121
+ (0, zone_js_1.isZoneName)(value.zone) &&
122
+ GRAINS.includes(value.grain) &&
123
+ isPartList(value.said) &&
124
+ isPartList(value.implied) &&
125
+ ANCHORS.includes(value.anchor) &&
126
+ isRecord(reader) &&
127
+ typeof reader.id === 'string' &&
128
+ (reader.kind === 'rule' || reader.kind === 'model') &&
129
+ Array.isArray(value.notes) &&
130
+ value.notes.every(isNote) &&
131
+ isRecord(value.reading) &&
132
+ isIndex(value.parse, 64));
133
+ }
134
+ exports.candidateIsWellFormed = candidateIsWellFormed;
135
+ function isPolicyUsed(value) {
136
+ if (!isRecord(value))
137
+ return false;
138
+ return Object.entries(value).every(([k, v]) => (k === 'dateOrder' && DATE_ORDERS.includes(v)) ||
139
+ (k === 'year' && YEAR_RULES.includes(v)));
140
+ }
141
+ /** Whether `value` is a choice this module would have written over `count` candidates. */
142
+ function choiceIsWellFormed(value, count) {
143
+ if (!isRecord(value))
144
+ return false;
145
+ switch (value.by) {
146
+ case 'only':
147
+ return isIndex(value.candidate, count);
148
+ case 'policy':
149
+ return isIndex(value.candidate, count) && isPolicyUsed(value.policy);
150
+ case 'open':
151
+ return (Array.isArray(value.remaining) &&
152
+ value.remaining.every((i) => isIndex(i, count)) &&
153
+ Array.isArray(value.open) &&
154
+ value.open.length > 0 &&
155
+ value.open.every((q) => OPEN.includes(q)) &&
156
+ (value.policy === undefined || isPolicyUsed(value.policy)));
157
+ case 'none':
158
+ return ['unreadable', 'unsupported', 'no-candidate', 'excluded-by-policy'].includes(value.why);
159
+ default:
160
+ return false;
161
+ }
162
+ }
163
+ exports.choiceIsWellFormed = choiceIsWellFormed;
164
+ //# sourceMappingURL=resolveRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveRecord.js","sourceRoot":"","sources":["../../../src/core/time/resolveRecord.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,412 @@
1
+ "use strict";
2
+ /**
3
+ * core/time/rows — the time layer's rows on the one honesty ledger
4
+ * (`AgentState.findingsLedger`), and the checkpoint door's test for each.
5
+ *
6
+ * Pattern: one owner of each row's shape (the `coverage/period.ts` ·
7
+ * `periodRowIsWellFormed` precedent): the module that defines a row
8
+ * also answers "is this a row I would have filed?", so the
9
+ * checkpoint door (`core/runCheckpoint.ts` · `ledgerRowIsWellFormed`)
10
+ * refuses exactly what the library never files.
11
+ * Role: core/ leaf (the time layer). Imports `instant.ts`, `zone.ts`,
12
+ * `range.ts`, `reader.ts` (the parts check), `resolveRecord.ts` (the
13
+ * candidate and choice checks), `convert.ts` (the refusal codes) and
14
+ * `clock.ts`' and `bind.ts`' types only — the rows are plain records
15
+ * the agent loop files (`agent/stages/timeLayer.ts`, the inputs
16
+ * layer). Their BUILDERS live in `rowsBuild.ts` — never re-exported
17
+ * here: they reach the resolver, which only an armed agent loads,
18
+ * while this module is on the checkpoint door's synchronous path.
19
+ * Emits: N/A — the rows fire no event of their own (the `conflict` row's
20
+ * precedent: no event field ships without a reader in the same
21
+ * release). The lens reads the rows.
22
+ *
23
+ * Eight kinds, each filed only while `.time()` is armed:
24
+ *
25
+ * | Kind | Filed | Carries |
26
+ * |------|-------|---------|
27
+ * | `clock` | once per turn, by seed | the turn's {@link TimeClock} and, when the run passed one, the `control` window |
28
+ * | `clock-on-resume` | first thing in the resumed leg's ToolCalls stage — either pause shape: the pausable resume door, or the stage re-run an `interrupt()` pause makes — when a resume passed a `time` that differs from the kept clock | what was passed and what was kept — the kept clock still rules |
29
+ * | `call` | once per dispatched call, just before the tool runs | `dispatchedAt`: the wall clock at dispatch (a look-back is evaluated by the TOOL at dispatch, which after a pause is later than `now`); `drift` when a look-back was sent more than the tool's step after `now` — `redrawn` into an absolute form, or `shifted` (§ 7.4, `drift.ts`) |
30
+ * | `call-window` | by the inputs layer, once per call to a tool that declares period forms, before it dispatches | which window the call carries: filled from the turn's one window (exactly, or wider — with what the read adds), bound to one (by quote or value), the model's own (beside the person's when it differs), unread, not filled and why, or refused before dispatch and why |
31
+ * | `time-reading` | by seed, once per MENTION the armed reader (`.time({ reader })`) found in the person's message — or ONE row with `mentions: 0` when it found none, so a retry knows the message was read | the quote, the parts, every candidate `resolve.ts` made of them, how the reading settled (`choice` — never settled by the library: every reading is a PROPOSAL, `open` with `confirm`, its candidates `said: []`), the reader's id, version, kind and locale, and the tz database version; a refused mention keeps only why |
32
+ * | `time-answer` | by the batch ask, once per mention the person settled in the time ask — the only door by which a window of words becomes the person's | the mention, the window and its zone, and `how`: `confirmed` (they picked a reading the library offered — the click) or `edited` (they wrote their own) |
33
+ * | `time-derived` | by the Route decider, once per judged answer that stands, when the evidence gate found values no tool result carried that the library itself spelled from this turn's time readings (§ 9.5, step T7 — `forms.ts` · `timeFormsOf`'s `derived` list) | the values, normalized and clipped as the gate reports them — the lineage `derived-from-reading`: never invented, never the person's |
34
+ * | `source-clock` | by ToolCalls, once per call and zone, when the call minted a dataset whose declared time axis names a `zone` (§ 9.6, step T8) | the tool, the call and the zone its rows' wall times are in — read by the limits block's `Clocks` lines and `check.ts` · `clocksDiffer` |
35
+ *
36
+ * Readers that switch over every row kind must skip one they do not know.
37
+ */
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.presentationZoneOf = exports.isTimeRowKind = exports.timeRowIsWellFormed = exports.clockOf = exports.answersOf = exports.sourceClocksOf = exports.callRowOfCall = exports.sourceClockRow = exports.timeDerivedRow = exports.timeAnswerRow = exports.readingsOf = exports.callWindowOfCall = exports.MAX_DERIVED_VALUE_CHARS = exports.MAX_DERIVED_VALUES = void 0;
40
+ const instant_js_1 = require("./instant.js");
41
+ const range_js_1 = require("./range.js");
42
+ const zone_js_1 = require("./zone.js");
43
+ const reader_js_1 = require("./reader.js");
44
+ const periodForm_js_1 = require("./periodForm.js");
45
+ const resolveRecord_js_1 = require("./resolveRecord.js");
46
+ /** The most values one `time-derived` row carries (the gate's report bound). */
47
+ exports.MAX_DERIVED_VALUES = 12;
48
+ /** The longest value a `time-derived` row carries (the gate's clip). */
49
+ exports.MAX_DERIVED_VALUE_CHARS = 64;
50
+ // ─── Reading ─────────────────────────────────────────────────────────────
51
+ /** This turn's `call-window` row for one call, if the inputs layer filed one — `ctx.time` reads it. */
52
+ function callWindowOfCall(ledger, toolCallId, turn) {
53
+ if (ledger === undefined)
54
+ return undefined;
55
+ for (let i = ledger.length - 1; i >= 0; i--) {
56
+ const r = ledger[i];
57
+ if (r !== null &&
58
+ typeof r === 'object' &&
59
+ r.kind === 'call-window' &&
60
+ r.toolCallId === toolCallId &&
61
+ r.turn === turn) {
62
+ return r;
63
+ }
64
+ }
65
+ return undefined;
66
+ }
67
+ exports.callWindowOfCall = callWindowOfCall;
68
+ /** The `time-reading` rows filed for `turn` — read back on a resume or a retry, never re-read. */
69
+ function readingsOf(ledger, turn) {
70
+ if (ledger === undefined)
71
+ return [];
72
+ return ledger.filter((row) => {
73
+ const r = row;
74
+ return r !== null && typeof r === 'object' && r.kind === 'time-reading' && r.turn === turn;
75
+ });
76
+ }
77
+ exports.readingsOf = readingsOf;
78
+ /** The `time-answer` row for one window the person settled in the time ask. */
79
+ function timeAnswerRow(answer, at) {
80
+ return {
81
+ kind: 'time-answer',
82
+ turn: at.turn,
83
+ iteration: at.iteration,
84
+ mention: answer.mention,
85
+ from: answer.range.from,
86
+ to: answer.range.to,
87
+ zone: answer.zone,
88
+ how: answer.how,
89
+ };
90
+ }
91
+ exports.timeAnswerRow = timeAnswerRow;
92
+ /** The `time-derived` row for one judged answer — `values` cut to {@link MAX_DERIVED_VALUES}. */
93
+ function timeDerivedRow(values, at) {
94
+ return {
95
+ kind: 'time-derived',
96
+ turn: at.turn,
97
+ iteration: at.iteration,
98
+ values: values.slice(0, exports.MAX_DERIVED_VALUES),
99
+ };
100
+ }
101
+ exports.timeDerivedRow = timeDerivedRow;
102
+ /** The `source-clock` row for one call's dataset whose declared axis names `zone`. */
103
+ function sourceClockRow(call, at, zone) {
104
+ return {
105
+ kind: 'source-clock',
106
+ turn: at.turn,
107
+ iteration: at.iteration,
108
+ toolCallId: call.toolCallId,
109
+ toolName: call.toolName,
110
+ zone,
111
+ };
112
+ }
113
+ exports.sourceClockRow = sourceClockRow;
114
+ /** This turn's `call` row for one call — the last filed (a resumed leg files its own). */
115
+ function callRowOfCall(ledger, toolCallId, turn) {
116
+ if (ledger === undefined)
117
+ return undefined;
118
+ for (let i = ledger.length - 1; i >= 0; i--) {
119
+ const r = ledger[i];
120
+ if (r !== null &&
121
+ typeof r === 'object' &&
122
+ r.kind === 'call' &&
123
+ r.toolCallId === toolCallId &&
124
+ r.turn === turn) {
125
+ return r;
126
+ }
127
+ }
128
+ return undefined;
129
+ }
130
+ exports.callRowOfCall = callRowOfCall;
131
+ /** The `source-clock` rows filed for `turn`, in the order filed. */
132
+ function sourceClocksOf(ledger, turn) {
133
+ if (ledger === undefined)
134
+ return [];
135
+ return ledger.filter((row) => {
136
+ const r = row;
137
+ return (r !== null &&
138
+ typeof r === 'object' &&
139
+ r.kind === 'source-clock' &&
140
+ (turn === undefined || r.turn === turn));
141
+ });
142
+ }
143
+ exports.sourceClocksOf = sourceClocksOf;
144
+ /** The `time-answer` rows filed for `turn`, in the order filed. */
145
+ function answersOf(ledger, turn) {
146
+ if (ledger === undefined)
147
+ return [];
148
+ return ledger.filter((row) => {
149
+ const r = row;
150
+ return r !== null && typeof r === 'object' && r.kind === 'time-answer' && r.turn === turn;
151
+ });
152
+ }
153
+ exports.answersOf = answersOf;
154
+ /**
155
+ * The clock of the LATEST turn on the ledger — the last `clock` row — or
156
+ * `undefined` when none was filed (an agent without `.time()`, or a turn
157
+ * paused by a runtime that had none). A continued conversation carries one
158
+ * row per turn; the last one is this turn's, because each turn's seed files
159
+ * exactly one (last in seed, before any stage of the turn can read it).
160
+ */
161
+ function clockOf(ledger) {
162
+ if (ledger === undefined)
163
+ return undefined;
164
+ for (let i = ledger.length - 1; i >= 0; i--) {
165
+ const row = ledger[i];
166
+ if (row !== null && typeof row === 'object' && row.kind === 'clock')
167
+ return row;
168
+ }
169
+ return undefined;
170
+ }
171
+ exports.clockOf = clockOf;
172
+ // ─── The checkpoint door ─────────────────────────────────────────────────
173
+ const isInstant = (value) => (0, instant_js_1.instantOf)(value, 'strict') !== undefined;
174
+ const isCount = (value) => typeof value === 'number' && Number.isInteger(value) && value >= 0;
175
+ function isKept(value) {
176
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
177
+ return false;
178
+ const k = value;
179
+ return (isInstant(k.now) && (0, zone_js_1.isZoneName)(k.zone) && (k.window === undefined || (0, range_js_1.isTimeRange)(k.window)));
180
+ }
181
+ function isPassed(value) {
182
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
183
+ return false;
184
+ const p = value;
185
+ const keys = Object.keys(p);
186
+ return (keys.length > 0 &&
187
+ keys.every((k) => k === 'now' || k === 'zone' || k === 'window') &&
188
+ (p.now === undefined || isInstant(p.now)) &&
189
+ (p.zone === undefined || (0, zone_js_1.isZoneName)(p.zone)) &&
190
+ (p.window === undefined || (0, range_js_1.isTimeRange)(p.window)));
191
+ }
192
+ function isControlWindow(value) {
193
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
194
+ return false;
195
+ const { source, ...range } = value;
196
+ return source === 'control' && (0, range_js_1.isTimeRange)(range);
197
+ }
198
+ const nonEmpty = (value) => typeof value === 'string' && value.length > 0;
199
+ function isReaderStamp(value) {
200
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
201
+ return false;
202
+ const r = value;
203
+ return (Object.keys(r).length === 4 &&
204
+ nonEmpty(r.id) &&
205
+ nonEmpty(r.version) &&
206
+ nonEmpty(r.locale) &&
207
+ (r.kind === 'rule' || r.kind === 'model'));
208
+ }
209
+ const MENTION_FIELDS = ['mention', 'quote', 'parses', 'problem', 'refused', 'candidates', 'choice'];
210
+ function isReadingRow(row) {
211
+ if (!isReaderStamp(row.reader) || !nonEmpty(row.tzdata) || !isCount(row.mentions))
212
+ return false;
213
+ const mentions = row.mentions;
214
+ if (mentions === 0)
215
+ return MENTION_FIELDS.every((k) => row[k] === undefined);
216
+ if (!isCount(row.mention) || row.mention >= mentions)
217
+ return false;
218
+ if (row.refused !== undefined) {
219
+ return ((row.refused === 'quote-not-in-text' || row.refused === 'malformed') &&
220
+ ['quote', 'parses', 'problem', 'candidates', 'choice'].every((k) => row[k] === undefined));
221
+ }
222
+ const parses = row.parses;
223
+ const candidates = row.candidates;
224
+ return (nonEmpty(row.quote) &&
225
+ Array.isArray(parses) &&
226
+ parses.every((p) => (0, reader_js_1.isTimeParts)(p)) &&
227
+ (row.problem === undefined || (row.problem === 'unreadable' && parses.length === 0)) &&
228
+ Array.isArray(candidates) &&
229
+ candidates.every(resolveRecord_js_1.candidateIsWellFormed) &&
230
+ (0, resolveRecord_js_1.choiceIsWellFormed)(row.choice, candidates.length));
231
+ }
232
+ const HOWS = ['filled', 'bound', 'model-chosen', 'model', 'unread', 'not-filled', 'refused'];
233
+ const WHYS = ['no-window', 'several-mentions', 'open-reading', 'no-exact-form'];
234
+ function isPersonWindow(value) {
235
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
236
+ return false;
237
+ const { source, mention, ...range } = value;
238
+ return ((source === 'said' ||
239
+ source === 'derived-from-reading' ||
240
+ source === 'answered' ||
241
+ source === 'control') &&
242
+ (mention === undefined || isCount(mention)) &&
243
+ (source === 'control') === (mention === undefined) &&
244
+ (0, range_js_1.isTimeRange)(range));
245
+ }
246
+ function isRangeList(value) {
247
+ return Array.isArray(value) && value.length >= 1 && value.length <= 2 && value.every(range_js_1.isTimeRange);
248
+ }
249
+ /** A widened fill's fields: `sent` with exactly one of `differs` / `trimmedByTool`, or none of the three. */
250
+ function widenedOk(row) {
251
+ if (row.sent === undefined)
252
+ return row.differs === undefined && row.trimmedByTool === undefined;
253
+ if (!(0, range_js_1.isTimeRange)(row.sent))
254
+ return false;
255
+ if (row.trimmedByTool !== undefined)
256
+ return row.trimmedByTool === true && row.differs === undefined;
257
+ const differs = row.differs;
258
+ if (differs === null || typeof differs !== 'object' || Array.isArray(differs))
259
+ return false;
260
+ const d = differs;
261
+ return Object.keys(d).length === 1 && isRangeList(d.extra);
262
+ }
263
+ function isCallWindowRow(row) {
264
+ if (typeof row.toolCallId !== 'string' || typeof row.toolName !== 'string')
265
+ return false;
266
+ if (!HOWS.includes(row.how))
267
+ return false;
268
+ const has = (k) => row[k] !== undefined;
269
+ const only = (...keys) => [
270
+ 'form',
271
+ 'asked',
272
+ 'person',
273
+ 'by',
274
+ 'rounded',
275
+ 'why',
276
+ 'sent',
277
+ 'differs',
278
+ 'trimmedByTool',
279
+ 'partlyBeyondRetention',
280
+ 'refused',
281
+ 'argument',
282
+ ].every((k) => keys.includes(k) || !has(k));
283
+ const formOk = isCount(row.form);
284
+ const askedOk = (0, range_js_1.isTimeRange)(row.asked);
285
+ const partlyOk = row.partlyBeyondRetention === undefined || row.partlyBeyondRetention === true;
286
+ switch (row.how) {
287
+ case 'filled':
288
+ return (only('form', 'asked', 'person', 'rounded', 'sent', 'differs', 'trimmedByTool', 'partlyBeyondRetention') &&
289
+ formOk &&
290
+ askedOk &&
291
+ isPersonWindow(row.person) &&
292
+ (row.rounded === undefined || row.rounded === true) &&
293
+ widenedOk(row) &&
294
+ partlyOk);
295
+ case 'bound':
296
+ return (only('form', 'asked', 'person', 'by', 'partlyBeyondRetention') &&
297
+ formOk &&
298
+ askedOk &&
299
+ isPersonWindow(row.person) &&
300
+ (row.by === 'quote' || row.by === 'value') &&
301
+ partlyOk);
302
+ case 'model-chosen':
303
+ return (only('form', 'asked', 'person', 'partlyBeyondRetention') &&
304
+ formOk &&
305
+ askedOk &&
306
+ (row.person === undefined || isPersonWindow(row.person)) &&
307
+ partlyOk);
308
+ case 'model':
309
+ return only('form', 'asked', 'partlyBeyondRetention') && formOk && askedOk && partlyOk;
310
+ case 'unread':
311
+ return only();
312
+ case 'refused':
313
+ return (only('form', 'asked', 'person', 'refused', 'argument') &&
314
+ periodForm_js_1.TIME_REFUSALS.includes(row.refused) &&
315
+ (row.form === undefined || formOk) &&
316
+ (row.asked === undefined || askedOk) &&
317
+ (row.person === undefined || isPersonWindow(row.person)) &&
318
+ // A skipped wall time names its argument and has no range; every other refusal has a range.
319
+ (row.refused === 'dst-gap'
320
+ ? typeof row.argument === 'string' && formOk && row.asked === undefined
321
+ : row.argument === undefined && askedOk));
322
+ default:
323
+ return only('why') && WHYS.includes(row.why);
324
+ }
325
+ }
326
+ function isCallDrift(value) {
327
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
328
+ return false;
329
+ const d = value;
330
+ if (typeof d.byMs !== 'number' || !Number.isSafeInteger(d.byMs) || d.byMs === 0)
331
+ return false;
332
+ if (d.outcome === 'redrawn')
333
+ return Object.keys(d).length === 3 && isCount(d.form);
334
+ return d.outcome === 'shifted' && Object.keys(d).length === 2;
335
+ }
336
+ /** A `time-answer` row: its mention, a range, a zone, `how` — and no other key. */
337
+ function isAnswerRow(row) {
338
+ const { kind: _k, turn: _t, iteration: _i, mention, zone, how, ...range } = row;
339
+ void _k;
340
+ void _t;
341
+ void _i;
342
+ return (isCount(mention) &&
343
+ (0, zone_js_1.isZoneName)(zone) &&
344
+ (how === 'confirmed' || how === 'edited') &&
345
+ (0, range_js_1.isTimeRange)(range));
346
+ }
347
+ /** A `time-derived` row: one to `MAX_DERIVED_VALUES` non-empty values — and no other key. */
348
+ function isDerivedRow(row) {
349
+ const values = row.values;
350
+ return (Object.keys(row).length === 4 &&
351
+ Array.isArray(values) &&
352
+ values.length >= 1 &&
353
+ values.length <= exports.MAX_DERIVED_VALUES &&
354
+ values.every((v) => nonEmpty(v) && v.length <= exports.MAX_DERIVED_VALUE_CHARS));
355
+ }
356
+ /**
357
+ * The checkpoint door's test for a time-layer row — `true` only for a row of
358
+ * one of the eight kinds with every field this module files, well formed.
359
+ * Any other kind answers `false` (the caller routes by kind first).
360
+ */
361
+ function timeRowIsWellFormed(row) {
362
+ if (!isCount(row.turn) || !isCount(row.iteration))
363
+ return false;
364
+ switch (row.kind) {
365
+ case 'clock':
366
+ return (isInstant(row.now) &&
367
+ (row.nowSource === 'app' || row.nowSource === 'default') &&
368
+ (0, zone_js_1.isZoneName)(row.zone) &&
369
+ (row.zoneSource === 'run' || row.zoneSource === 'builder') &&
370
+ (row.window === undefined || isControlWindow(row.window)));
371
+ case 'clock-on-resume':
372
+ return isPassed(row.passed) && isKept(row.kept);
373
+ case 'call':
374
+ return (typeof row.toolCallId === 'string' &&
375
+ typeof row.toolName === 'string' &&
376
+ isInstant(row.dispatchedAt) &&
377
+ (row.drift === undefined || isCallDrift(row.drift)));
378
+ case 'time-reading':
379
+ return isReadingRow(row);
380
+ case 'call-window':
381
+ return isCallWindowRow(row);
382
+ case 'time-answer':
383
+ return isAnswerRow(row);
384
+ case 'time-derived':
385
+ return isDerivedRow(row);
386
+ case 'source-clock':
387
+ return (typeof row.toolCallId === 'string' &&
388
+ typeof row.toolName === 'string' &&
389
+ (0, zone_js_1.isZoneName)(row.zone));
390
+ default:
391
+ return false;
392
+ }
393
+ }
394
+ exports.timeRowIsWellFormed = timeRowIsWellFormed;
395
+ /** Whether a ledger row is one of the time layer's kinds (the router's question). */
396
+ function isTimeRowKind(kind) {
397
+ return (kind === 'clock' ||
398
+ kind === 'clock-on-resume' ||
399
+ kind === 'call' ||
400
+ kind === 'time-reading' ||
401
+ kind === 'call-window' ||
402
+ kind === 'time-answer' ||
403
+ kind === 'time-derived' ||
404
+ kind === 'source-clock');
405
+ }
406
+ exports.isTimeRowKind = isTimeRowKind;
407
+ /** The zone the answer's lines are rendered in — the clock's (no reader is armed yet, so the run's). */
408
+ function presentationZoneOf(ledger) {
409
+ return clockOf(ledger)?.zone;
410
+ }
411
+ exports.presentationZoneOf = presentationZoneOf;
412
+ //# sourceMappingURL=rows.js.map