@athenaintel/react 0.57.1 → 0.59.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 (811) hide show
  1. package/README.md +778 -9
  2. package/dist/agent-runtime/src/addressed-agents.cjs +16 -0
  3. package/dist/agent-runtime/src/addressed-agents.cjs.map +1 -0
  4. package/dist/agent-runtime/src/addressed-agents.d.ts +30 -0
  5. package/dist/agent-runtime/src/addressed-agents.js +16 -0
  6. package/dist/agent-runtime/src/addressed-agents.js.map +1 -0
  7. package/dist/agent-runtime/src/answer-label.cjs +4 -3
  8. package/dist/agent-runtime/src/answer-label.cjs.map +1 -1
  9. package/dist/agent-runtime/src/answer-label.d.ts +13 -6
  10. package/dist/agent-runtime/src/answer-label.js +4 -3
  11. package/dist/agent-runtime/src/answer-label.js.map +1 -1
  12. package/dist/agent-runtime/src/chat-outbox-attachments.cjs.map +1 -1
  13. package/dist/agent-runtime/src/chat-outbox-attachments.d.ts +1 -1
  14. package/dist/agent-runtime/src/chat-outbox-attachments.js.map +1 -1
  15. package/dist/agent-runtime/src/chat-outbox-entry.cjs +101 -0
  16. package/dist/agent-runtime/src/chat-outbox-entry.cjs.map +1 -0
  17. package/dist/agent-runtime/src/chat-outbox-entry.d.ts +99 -0
  18. package/dist/agent-runtime/src/chat-outbox-entry.js +101 -0
  19. package/dist/agent-runtime/src/chat-outbox-entry.js.map +1 -0
  20. package/dist/agent-runtime/src/chat-outbox-legacy.cjs +252 -0
  21. package/dist/agent-runtime/src/chat-outbox-legacy.cjs.map +1 -0
  22. package/dist/agent-runtime/src/chat-outbox-legacy.d.ts +96 -0
  23. package/dist/agent-runtime/src/chat-outbox-legacy.js +252 -0
  24. package/dist/agent-runtime/src/chat-outbox-legacy.js.map +1 -0
  25. package/dist/agent-runtime/src/chat-outbox-policy.cjs +30 -0
  26. package/dist/agent-runtime/src/chat-outbox-policy.cjs.map +1 -0
  27. package/dist/agent-runtime/src/chat-outbox-policy.d.ts +42 -0
  28. package/dist/agent-runtime/src/chat-outbox-policy.js +30 -0
  29. package/dist/agent-runtime/src/chat-outbox-policy.js.map +1 -0
  30. package/dist/agent-runtime/src/chat-outbox-storage.cjs +306 -0
  31. package/dist/agent-runtime/src/chat-outbox-storage.cjs.map +1 -0
  32. package/dist/agent-runtime/src/chat-outbox-storage.d.ts +194 -0
  33. package/dist/agent-runtime/src/chat-outbox-storage.js +306 -0
  34. package/dist/agent-runtime/src/chat-outbox-storage.js.map +1 -0
  35. package/dist/agent-runtime/src/chat-outbox-thread.cjs +21 -94
  36. package/dist/agent-runtime/src/chat-outbox-thread.cjs.map +1 -1
  37. package/dist/agent-runtime/src/chat-outbox-thread.d.ts +22 -18
  38. package/dist/agent-runtime/src/chat-outbox-thread.js +21 -94
  39. package/dist/agent-runtime/src/chat-outbox-thread.js.map +1 -1
  40. package/dist/agent-runtime/src/chat-outbox.cjs +492 -547
  41. package/dist/agent-runtime/src/chat-outbox.cjs.map +1 -1
  42. package/dist/agent-runtime/src/chat-outbox.d.ts +110 -142
  43. package/dist/agent-runtime/src/chat-outbox.js +492 -547
  44. package/dist/agent-runtime/src/chat-outbox.js.map +1 -1
  45. package/dist/agent-runtime/src/composer-markdown.cjs.map +1 -1
  46. package/dist/agent-runtime/src/composer-markdown.d.ts +1 -1
  47. package/dist/agent-runtime/src/composer-markdown.js.map +1 -1
  48. package/dist/agent-runtime/src/deep-agent-transport-recipe.cjs +3 -1
  49. package/dist/agent-runtime/src/deep-agent-transport-recipe.cjs.map +1 -1
  50. package/dist/agent-runtime/src/deep-agent-transport-recipe.d.ts +8 -1
  51. package/dist/agent-runtime/src/deep-agent-transport-recipe.js +3 -1
  52. package/dist/agent-runtime/src/deep-agent-transport-recipe.js.map +1 -1
  53. package/dist/agent-runtime/src/dictation-preferences.d.ts +356 -0
  54. package/dist/agent-runtime/src/dictation-record.d.ts +279 -0
  55. package/dist/agent-runtime/src/dictation-session.d.ts +106 -7
  56. package/dist/agent-runtime/src/dictation-snippets.d.ts +9 -0
  57. package/dist/agent-runtime/src/dictation-transfer.d.ts +142 -0
  58. package/dist/agent-runtime/src/edit-command.cjs.map +1 -1
  59. package/dist/agent-runtime/src/edit-command.d.ts +1 -1
  60. package/dist/agent-runtime/src/edit-command.js.map +1 -1
  61. package/dist/agent-runtime/src/errors.cjs +1 -0
  62. package/dist/agent-runtime/src/errors.cjs.map +1 -1
  63. package/dist/agent-runtime/src/errors.js +1 -0
  64. package/dist/agent-runtime/src/errors.js.map +1 -1
  65. package/dist/agent-runtime/src/generated/runconfig-contract.cjs +24 -0
  66. package/dist/agent-runtime/src/generated/runconfig-contract.cjs.map +1 -1
  67. package/dist/agent-runtime/src/generated/runconfig-contract.d.ts +3 -3
  68. package/dist/agent-runtime/src/generated/runconfig-contract.js +24 -0
  69. package/dist/agent-runtime/src/generated/runconfig-contract.js.map +1 -1
  70. package/dist/agent-runtime/src/index.d.ts +14 -8
  71. package/dist/agent-runtime/src/lane-follow.cjs +289 -0
  72. package/dist/agent-runtime/src/lane-follow.cjs.map +1 -0
  73. package/dist/agent-runtime/src/lane-follow.js +289 -0
  74. package/dist/agent-runtime/src/lane-follow.js.map +1 -0
  75. package/dist/agent-runtime/src/lane-images.cjs +387 -0
  76. package/dist/agent-runtime/src/lane-images.cjs.map +1 -0
  77. package/dist/agent-runtime/src/lane-images.js +387 -0
  78. package/dist/agent-runtime/src/lane-images.js.map +1 -0
  79. package/dist/agent-runtime/src/message-window.js +1 -1
  80. package/dist/agent-runtime/src/messages.cjs +19 -1
  81. package/dist/agent-runtime/src/messages.cjs.map +1 -1
  82. package/dist/agent-runtime/src/messages.d.ts +8 -0
  83. package/dist/agent-runtime/src/messages.js +21 -3
  84. package/dist/agent-runtime/src/messages.js.map +1 -1
  85. package/dist/agent-runtime/src/named-agents.cjs +301 -0
  86. package/dist/agent-runtime/src/named-agents.cjs.map +1 -0
  87. package/dist/agent-runtime/src/named-agents.d.ts +246 -0
  88. package/dist/agent-runtime/src/named-agents.js +301 -0
  89. package/dist/agent-runtime/src/named-agents.js.map +1 -0
  90. package/dist/agent-runtime/src/offline-status.cjs.map +1 -1
  91. package/dist/agent-runtime/src/offline-status.d.ts +66 -2
  92. package/dist/agent-runtime/src/offline-status.js.map +1 -1
  93. package/dist/agent-runtime/src/ptc-subcalls.cjs +41 -0
  94. package/dist/agent-runtime/src/ptc-subcalls.cjs.map +1 -0
  95. package/dist/agent-runtime/src/ptc-subcalls.js +41 -0
  96. package/dist/agent-runtime/src/ptc-subcalls.js.map +1 -0
  97. package/dist/agent-runtime/src/queue.cjs +2 -2
  98. package/dist/agent-runtime/src/queue.cjs.map +1 -1
  99. package/dist/agent-runtime/src/queue.d.ts +20 -25
  100. package/dist/agent-runtime/src/queue.js +2 -2
  101. package/dist/agent-runtime/src/queue.js.map +1 -1
  102. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs +314 -84
  103. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs.map +1 -1
  104. package/dist/agent-runtime/src/quota-safe-local-storage-session.d.ts +137 -40
  105. package/dist/agent-runtime/src/quota-safe-local-storage-session.js +318 -88
  106. package/dist/agent-runtime/src/quota-safe-local-storage-session.js.map +1 -1
  107. package/dist/agent-runtime/src/run-send.cjs +54 -0
  108. package/dist/agent-runtime/src/run-send.cjs.map +1 -0
  109. package/dist/agent-runtime/src/run-send.d.ts +51 -0
  110. package/dist/agent-runtime/src/run-send.js +54 -0
  111. package/dist/agent-runtime/src/run-send.js.map +1 -0
  112. package/dist/agent-runtime/src/running-tool-placeholder.cjs +6 -0
  113. package/dist/agent-runtime/src/running-tool-placeholder.cjs.map +1 -1
  114. package/dist/agent-runtime/src/running-tool-placeholder.js +6 -0
  115. package/dist/agent-runtime/src/running-tool-placeholder.js.map +1 -1
  116. package/dist/agent-runtime/src/runtime.d.ts +9 -5
  117. package/dist/agent-runtime/src/sealed-idb.cjs +64 -0
  118. package/dist/agent-runtime/src/sealed-idb.cjs.map +1 -1
  119. package/dist/agent-runtime/src/sealed-idb.d.ts +16 -0
  120. package/dist/agent-runtime/src/sealed-idb.js +64 -0
  121. package/dist/agent-runtime/src/sealed-idb.js.map +1 -1
  122. package/dist/agent-runtime/src/send-recovery.cjs +90 -118
  123. package/dist/agent-runtime/src/send-recovery.cjs.map +1 -1
  124. package/dist/agent-runtime/src/send-recovery.d.ts +25 -29
  125. package/dist/agent-runtime/src/send-recovery.js +90 -118
  126. package/dist/agent-runtime/src/send-recovery.js.map +1 -1
  127. package/dist/agent-runtime/src/statewire-diagnostics.d.ts +4 -1
  128. package/dist/agent-runtime/src/statewire-held-sends.cjs +191 -0
  129. package/dist/agent-runtime/src/statewire-held-sends.cjs.map +1 -0
  130. package/dist/agent-runtime/src/statewire-held-sends.d.ts +119 -0
  131. package/dist/agent-runtime/src/statewire-held-sends.js +191 -0
  132. package/dist/agent-runtime/src/statewire-held-sends.js.map +1 -0
  133. package/dist/agent-runtime/src/statewire-state.cjs +4 -0
  134. package/dist/agent-runtime/src/statewire-state.cjs.map +1 -1
  135. package/dist/agent-runtime/src/statewire-state.js +4 -0
  136. package/dist/agent-runtime/src/statewire-state.js.map +1 -1
  137. package/dist/agent-runtime/src/statewire-transport.cjs +8 -2
  138. package/dist/agent-runtime/src/statewire-transport.cjs.map +1 -1
  139. package/dist/agent-runtime/src/statewire-transport.d.ts +14 -5
  140. package/dist/agent-runtime/src/statewire-transport.js +8 -2
  141. package/dist/agent-runtime/src/statewire-transport.js.map +1 -1
  142. package/dist/agent-runtime/src/subagent-transcripts.cjs +1 -23
  143. package/dist/agent-runtime/src/subagent-transcripts.cjs.map +1 -1
  144. package/dist/agent-runtime/src/subagent-transcripts.js +3 -25
  145. package/dist/agent-runtime/src/subagent-transcripts.js.map +1 -1
  146. package/dist/agent-runtime/src/subagents.cjs +22 -29
  147. package/dist/agent-runtime/src/subagents.cjs.map +1 -1
  148. package/dist/agent-runtime/src/subagents.js +23 -30
  149. package/dist/agent-runtime/src/subagents.js.map +1 -1
  150. package/dist/agent-runtime/src/thread-extras.cjs +27 -19
  151. package/dist/agent-runtime/src/thread-extras.cjs.map +1 -1
  152. package/dist/agent-runtime/src/thread-extras.d.ts +19 -6
  153. package/dist/agent-runtime/src/thread-extras.js +27 -19
  154. package/dist/agent-runtime/src/thread-extras.js.map +1 -1
  155. package/dist/agent-runtime/src/thread-handoff-flow-machine.d.ts +8 -8
  156. package/dist/agent-runtime/src/tool-metadata.cjs +12 -0
  157. package/dist/agent-runtime/src/tool-metadata.cjs.map +1 -1
  158. package/dist/agent-runtime/src/tool-metadata.js +12 -0
  159. package/dist/agent-runtime/src/tool-metadata.js.map +1 -1
  160. package/dist/agent-runtime/src/tool-names.cjs +21 -0
  161. package/dist/agent-runtime/src/tool-names.cjs.map +1 -1
  162. package/dist/agent-runtime/src/tool-names.d.ts +8 -0
  163. package/dist/agent-runtime/src/tool-names.js +21 -0
  164. package/dist/agent-runtime/src/tool-names.js.map +1 -1
  165. package/dist/agent-runtime/src/typed-interrupt-kinds.cjs +247 -0
  166. package/dist/agent-runtime/src/typed-interrupt-kinds.cjs.map +1 -0
  167. package/dist/agent-runtime/src/typed-interrupt-kinds.d.ts +173 -0
  168. package/dist/agent-runtime/src/typed-interrupt-kinds.js +247 -0
  169. package/dist/agent-runtime/src/typed-interrupt-kinds.js.map +1 -0
  170. package/dist/agent-runtime/src/typed-interrupts.cjs +48 -0
  171. package/dist/agent-runtime/src/typed-interrupts.cjs.map +1 -0
  172. package/dist/agent-runtime/src/typed-interrupts.d.ts +75 -0
  173. package/dist/agent-runtime/src/typed-interrupts.js +48 -0
  174. package/dist/agent-runtime/src/typed-interrupts.js.map +1 -0
  175. package/dist/agent-runtime/src/types.d.ts +1 -1
  176. package/dist/agent-runtime/src/use-conversation-list.cjs +1 -0
  177. package/dist/agent-runtime/src/use-conversation-list.cjs.map +1 -1
  178. package/dist/agent-runtime/src/use-conversation-list.d.ts +7 -0
  179. package/dist/agent-runtime/src/use-conversation-list.js +1 -0
  180. package/dist/agent-runtime/src/use-conversation-list.js.map +1 -1
  181. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs +46 -29
  182. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs.map +1 -1
  183. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.d.ts +14 -22
  184. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js +46 -29
  185. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js.map +1 -1
  186. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs +78 -14
  187. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs.map +1 -1
  188. package/dist/agent-runtime/src/use-deep-agent-runtime.d.ts +34 -7
  189. package/dist/agent-runtime/src/use-deep-agent-runtime.js +79 -15
  190. package/dist/agent-runtime/src/use-deep-agent-runtime.js.map +1 -1
  191. package/dist/agent-runtime/src/use-deep-agent-thread.cjs +16 -1
  192. package/dist/agent-runtime/src/use-deep-agent-thread.cjs.map +1 -1
  193. package/dist/agent-runtime/src/use-deep-agent-thread.d.ts +7 -2
  194. package/dist/agent-runtime/src/use-deep-agent-thread.js +16 -1
  195. package/dist/agent-runtime/src/use-deep-agent-thread.js.map +1 -1
  196. package/dist/agent-runtime/src/use-deep-agent-voice.cjs +30 -4
  197. package/dist/agent-runtime/src/use-deep-agent-voice.cjs.map +1 -1
  198. package/dist/agent-runtime/src/use-deep-agent-voice.d.ts +22 -4
  199. package/dist/agent-runtime/src/use-deep-agent-voice.js +30 -4
  200. package/dist/agent-runtime/src/use-deep-agent-voice.js.map +1 -1
  201. package/dist/agent-runtime/src/withdrawn-turns.d.ts +5 -4
  202. package/dist/agent-runtime/src/word-device-fit.d.ts +174 -0
  203. package/dist/agent-runtime/src/work-in.d.ts +127 -0
  204. package/dist/assets/AthenaAssetEmbed.cjs.map +1 -1
  205. package/dist/assets/AthenaAssetEmbed.d.ts +6 -1
  206. package/dist/assets/AthenaAssetEmbed.js.map +1 -1
  207. package/dist/assets/asset-panel-store.cjs +13 -5
  208. package/dist/assets/asset-panel-store.cjs.map +1 -1
  209. package/dist/assets/asset-panel-store.d.ts +33 -2
  210. package/dist/assets/asset-panel-store.js +13 -5
  211. package/dist/assets/asset-panel-store.js.map +1 -1
  212. package/dist/auth/AthenaCredentialSourceContext.cjs +11 -0
  213. package/dist/auth/AthenaCredentialSourceContext.cjs.map +1 -1
  214. package/dist/auth/AthenaCredentialSourceContext.d.ts +6 -0
  215. package/dist/auth/AthenaCredentialSourceContext.js +11 -0
  216. package/dist/auth/AthenaCredentialSourceContext.js.map +1 -1
  217. package/dist/auth/account-identity.cjs +13 -2
  218. package/dist/auth/account-identity.cjs.map +1 -1
  219. package/dist/auth/account-identity.d.ts +9 -0
  220. package/dist/auth/account-identity.js +13 -2
  221. package/dist/auth/account-identity.js.map +1 -1
  222. package/dist/auth/credential-source.cjs +20 -4
  223. package/dist/auth/credential-source.cjs.map +1 -1
  224. package/dist/auth/credential-source.d.ts +9 -0
  225. package/dist/auth/credential-source.js +20 -4
  226. package/dist/auth/credential-source.js.map +1 -1
  227. package/dist/catalog/chat-pickers.cjs +31 -0
  228. package/dist/catalog/chat-pickers.cjs.map +1 -1
  229. package/dist/catalog/chat-pickers.d.ts +17 -0
  230. package/dist/catalog/chat-pickers.js +33 -2
  231. package/dist/catalog/chat-pickers.js.map +1 -1
  232. package/dist/catalog/runtime-catalog.cjs +63 -3
  233. package/dist/catalog/runtime-catalog.cjs.map +1 -1
  234. package/dist/catalog/runtime-catalog.d.ts +63 -3
  235. package/dist/catalog/runtime-catalog.js +64 -4
  236. package/dist/catalog/runtime-catalog.js.map +1 -1
  237. package/dist/chat/AthenaChat.cjs +337 -99
  238. package/dist/chat/AthenaChat.cjs.map +1 -1
  239. package/dist/chat/AthenaChat.d.ts +80 -4
  240. package/dist/chat/AthenaChat.js +337 -99
  241. package/dist/chat/AthenaChat.js.map +1 -1
  242. package/dist/chat/StatewireApprovalCard.cjs +35 -5
  243. package/dist/chat/StatewireApprovalCard.cjs.map +1 -1
  244. package/dist/chat/StatewireApprovalCard.d.ts +55 -2
  245. package/dist/chat/StatewireApprovalCard.js +37 -7
  246. package/dist/chat/StatewireApprovalCard.js.map +1 -1
  247. package/dist/chat/StatewireQueuedMessages.cjs +17 -2
  248. package/dist/chat/StatewireQueuedMessages.cjs.map +1 -1
  249. package/dist/chat/StatewireQueuedMessages.d.ts +8 -45
  250. package/dist/chat/StatewireQueuedMessages.js +18 -3
  251. package/dist/chat/StatewireQueuedMessages.js.map +1 -1
  252. package/dist/chat/chat-agent-mentions.cjs +70 -0
  253. package/dist/chat/chat-agent-mentions.cjs.map +1 -0
  254. package/dist/chat/chat-agent-mentions.d.ts +13 -0
  255. package/dist/chat/chat-agent-mentions.js +70 -0
  256. package/dist/chat/chat-agent-mentions.js.map +1 -0
  257. package/dist/chat/composer-actions.cjs +12 -0
  258. package/dist/chat/composer-actions.cjs.map +1 -0
  259. package/dist/chat/composer-actions.d.ts +22 -0
  260. package/dist/chat/composer-actions.js +12 -0
  261. package/dist/chat/composer-actions.js.map +1 -0
  262. package/dist/chat/follow-up-suggestions.cjs +185 -0
  263. package/dist/chat/follow-up-suggestions.cjs.map +1 -0
  264. package/dist/chat/follow-up-suggestions.d.ts +64 -0
  265. package/dist/chat/follow-up-suggestions.js +185 -0
  266. package/dist/chat/follow-up-suggestions.js.map +1 -0
  267. package/dist/chat/super-grouping/ToolTimeline.cjs +4 -3
  268. package/dist/chat/super-grouping/ToolTimeline.cjs.map +1 -1
  269. package/dist/chat/super-grouping/ToolTimeline.d.ts +7 -3
  270. package/dist/chat/super-grouping/ToolTimeline.js +4 -3
  271. package/dist/chat/super-grouping/ToolTimeline.js.map +1 -1
  272. package/dist/chat/turn-changes.cjs +284 -0
  273. package/dist/chat/turn-changes.cjs.map +1 -0
  274. package/dist/chat/turn-changes.d.ts +130 -0
  275. package/dist/chat/turn-changes.js +284 -0
  276. package/dist/chat/turn-changes.js.map +1 -0
  277. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.cjs +31 -0
  278. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.cjs.map +1 -0
  279. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.d.ts +31 -0
  280. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.js +31 -0
  281. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.js.map +1 -0
  282. package/dist/chat/typed-interrupts/approval-cards.cjs +250 -0
  283. package/dist/chat/typed-interrupts/approval-cards.cjs.map +1 -0
  284. package/dist/chat/typed-interrupts/approval-cards.d.ts +22 -0
  285. package/dist/chat/typed-interrupts/approval-cards.js +250 -0
  286. package/dist/chat/typed-interrupts/approval-cards.js.map +1 -0
  287. package/dist/chat/typed-interrupts/form-cards.cjs +289 -0
  288. package/dist/chat/typed-interrupts/form-cards.cjs.map +1 -0
  289. package/dist/chat/typed-interrupts/form-cards.d.ts +6 -0
  290. package/dist/chat/typed-interrupts/form-cards.js +289 -0
  291. package/dist/chat/typed-interrupts/form-cards.js.map +1 -0
  292. package/dist/chat/typed-interrupts/interrupt-card-shell.cjs +182 -0
  293. package/dist/chat/typed-interrupts/interrupt-card-shell.cjs.map +1 -0
  294. package/dist/chat/typed-interrupts/interrupt-card-shell.d.ts +47 -0
  295. package/dist/chat/typed-interrupts/interrupt-card-shell.js +182 -0
  296. package/dist/chat/typed-interrupts/interrupt-card-shell.js.map +1 -0
  297. package/dist/chat/typed-interrupts/json-schema-form.cjs +388 -0
  298. package/dist/chat/typed-interrupts/json-schema-form.cjs.map +1 -0
  299. package/dist/chat/typed-interrupts/json-schema-form.d.ts +33 -0
  300. package/dist/chat/typed-interrupts/json-schema-form.js +388 -0
  301. package/dist/chat/typed-interrupts/json-schema-form.js.map +1 -0
  302. package/dist/chat/typed-interrupts/questionnaire-card.cjs +449 -0
  303. package/dist/chat/typed-interrupts/questionnaire-card.cjs.map +1 -0
  304. package/dist/chat/typed-interrupts/questionnaire-card.d.ts +20 -0
  305. package/dist/chat/typed-interrupts/questionnaire-card.js +449 -0
  306. package/dist/chat/typed-interrupts/questionnaire-card.js.map +1 -0
  307. package/dist/chat/typed-interrupts/request-file-card.cjs +159 -0
  308. package/dist/chat/typed-interrupts/request-file-card.cjs.map +1 -0
  309. package/dist/chat/typed-interrupts/request-file-card.d.ts +2 -0
  310. package/dist/chat/typed-interrupts/request-file-card.js +159 -0
  311. package/dist/chat/typed-interrupts/request-file-card.js.map +1 -0
  312. package/dist/chat/typed-interrupts/toolkit-selection-card.cjs +189 -0
  313. package/dist/chat/typed-interrupts/toolkit-selection-card.cjs.map +1 -0
  314. package/dist/chat/typed-interrupts/toolkit-selection-card.d.ts +23 -0
  315. package/dist/chat/typed-interrupts/toolkit-selection-card.js +189 -0
  316. package/dist/chat/typed-interrupts/toolkit-selection-card.js.map +1 -0
  317. package/dist/chat/typed-interrupts/typed-interrupt-body.cjs +26 -0
  318. package/dist/chat/typed-interrupts/typed-interrupt-body.cjs.map +1 -0
  319. package/dist/chat/typed-interrupts/typed-interrupt-body.d.ts +3 -0
  320. package/dist/chat/typed-interrupts/typed-interrupt-body.js +26 -0
  321. package/dist/chat/typed-interrupts/typed-interrupt-body.js.map +1 -0
  322. package/dist/chat/typed-interrupts/typed-interrupt-graphql.cjs +105 -0
  323. package/dist/chat/typed-interrupts/typed-interrupt-graphql.cjs.map +1 -0
  324. package/dist/chat/typed-interrupts/typed-interrupt-graphql.d.ts +29 -0
  325. package/dist/chat/typed-interrupts/typed-interrupt-graphql.js +105 -0
  326. package/dist/chat/typed-interrupts/typed-interrupt-graphql.js.map +1 -0
  327. package/dist/chat/typed-interrupts/typed-interrupt-notice.cjs +70 -0
  328. package/dist/chat/typed-interrupts/typed-interrupt-notice.cjs.map +1 -0
  329. package/dist/chat/typed-interrupts/typed-interrupt-notice.d.ts +45 -0
  330. package/dist/chat/typed-interrupts/typed-interrupt-notice.js +70 -0
  331. package/dist/chat/typed-interrupts/typed-interrupt-notice.js.map +1 -0
  332. package/dist/chat/typed-interrupts/typed-interrupt-panel.cjs +76 -0
  333. package/dist/chat/typed-interrupts/typed-interrupt-panel.cjs.map +1 -0
  334. package/dist/chat/typed-interrupts/typed-interrupt-panel.d.ts +11 -0
  335. package/dist/chat/typed-interrupts/typed-interrupt-panel.js +76 -0
  336. package/dist/chat/typed-interrupts/typed-interrupt-panel.js.map +1 -0
  337. package/dist/chat/typed-interrupts/typed-interrupt-types.d.ts +46 -0
  338. package/dist/chat/typed-interrupts/use-interrupt-draft.cjs +106 -0
  339. package/dist/chat/typed-interrupts/use-interrupt-draft.cjs.map +1 -0
  340. package/dist/chat/typed-interrupts/use-interrupt-draft.d.ts +29 -0
  341. package/dist/chat/typed-interrupts/use-interrupt-draft.js +106 -0
  342. package/dist/chat/typed-interrupts/use-interrupt-draft.js.map +1 -0
  343. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.cjs +231 -0
  344. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.cjs.map +1 -0
  345. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.d.ts +66 -0
  346. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.js +231 -0
  347. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.js.map +1 -0
  348. package/dist/chat-ui/composer/composer-named-agents.cjs +13 -0
  349. package/dist/chat-ui/composer/composer-named-agents.cjs.map +1 -0
  350. package/dist/chat-ui/composer/composer-named-agents.d.ts +20 -0
  351. package/dist/chat-ui/composer/composer-named-agents.js +13 -0
  352. package/dist/chat-ui/composer/composer-named-agents.js.map +1 -0
  353. package/dist/chat-ui/composer/slash-command-menu.cjs +143 -0
  354. package/dist/chat-ui/composer/slash-command-menu.cjs.map +1 -0
  355. package/dist/chat-ui/composer/slash-command-menu.d.ts +19 -0
  356. package/dist/chat-ui/composer/slash-command-menu.js +143 -0
  357. package/dist/chat-ui/composer/slash-command-menu.js.map +1 -0
  358. package/dist/chat-ui/composer/slash-commands-extension.cjs +51 -0
  359. package/dist/chat-ui/composer/slash-commands-extension.cjs.map +1 -0
  360. package/dist/chat-ui/composer/slash-commands-extension.d.ts +39 -0
  361. package/dist/chat-ui/composer/slash-commands-extension.js +51 -0
  362. package/dist/chat-ui/composer/slash-commands-extension.js.map +1 -0
  363. package/dist/chat-ui/composer/slash-commands.cjs +74 -0
  364. package/dist/chat-ui/composer/slash-commands.cjs.map +1 -0
  365. package/dist/chat-ui/composer/slash-commands.d.ts +82 -0
  366. package/dist/chat-ui/composer/slash-commands.js +74 -0
  367. package/dist/chat-ui/composer/slash-commands.js.map +1 -0
  368. package/dist/chat-ui/composer/tiptap-composer.cjs +135 -9
  369. package/dist/chat-ui/composer/tiptap-composer.cjs.map +1 -1
  370. package/dist/chat-ui/composer/tiptap-composer.d.ts +61 -2
  371. package/dist/chat-ui/composer/tiptap-composer.js +135 -9
  372. package/dist/chat-ui/composer/tiptap-composer.js.map +1 -1
  373. package/dist/chat-ui/index.cjs +3 -0
  374. package/dist/chat-ui/index.cjs.map +1 -1
  375. package/dist/chat-ui/index.d.ts +3 -2
  376. package/dist/chat-ui/index.js +3 -0
  377. package/dist/chat-ui/index.js.map +1 -1
  378. package/dist/chat-ui/mentions/mention-chip.cjs +1 -1
  379. package/dist/chat-ui/mentions/mention-chip.cjs.map +1 -1
  380. package/dist/chat-ui/mentions/mention-chip.js +2 -2
  381. package/dist/chat-ui/mentions/mention-chip.js.map +1 -1
  382. package/dist/chat-ui/mentions/mention-extension.cjs +8 -1
  383. package/dist/chat-ui/mentions/mention-extension.cjs.map +1 -1
  384. package/dist/chat-ui/mentions/mention-extension.js +8 -1
  385. package/dist/chat-ui/mentions/mention-extension.js.map +1 -1
  386. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.cjs +1 -0
  387. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.cjs.map +1 -1
  388. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.js +1 -0
  389. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.js.map +1 -1
  390. package/dist/chat-ui/mentions/suggestions/components/mention-icon.cjs +2 -0
  391. package/dist/chat-ui/mentions/suggestions/components/mention-icon.cjs.map +1 -1
  392. package/dist/chat-ui/mentions/suggestions/components/mention-icon.js +3 -1
  393. package/dist/chat-ui/mentions/suggestions/components/mention-icon.js.map +1 -1
  394. package/dist/chat-ui/mentions/suggestions/components/menu-item.cjs +1 -1
  395. package/dist/chat-ui/mentions/suggestions/components/menu-item.cjs.map +1 -1
  396. package/dist/chat-ui/mentions/suggestions/components/menu-item.js +1 -1
  397. package/dist/chat-ui/mentions/suggestions/components/menu-item.js.map +1 -1
  398. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs +36 -0
  399. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs.map +1 -1
  400. package/dist/chat-ui/mentions/suggestions/data/api-client.d.ts +42 -0
  401. package/dist/chat-ui/mentions/suggestions/data/api-client.js +36 -0
  402. package/dist/chat-ui/mentions/suggestions/data/api-client.js.map +1 -1
  403. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs +235 -19
  404. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs.map +1 -1
  405. package/dist/chat-ui/mentions/suggestions/data/sources/index.d.ts +88 -10
  406. package/dist/chat-ui/mentions/suggestions/data/sources/index.js +236 -20
  407. package/dist/chat-ui/mentions/suggestions/data/sources/index.js.map +1 -1
  408. package/dist/chat-ui/mentions/suggestions/data/types.cjs.map +1 -1
  409. package/dist/chat-ui/mentions/suggestions/data/types.d.ts +27 -1
  410. package/dist/chat-ui/mentions/suggestions/data/types.js.map +1 -1
  411. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs +56 -5
  412. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs.map +1 -1
  413. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.d.ts +26 -6
  414. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js +57 -6
  415. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js.map +1 -1
  416. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.cjs +34 -17
  417. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.cjs.map +1 -1
  418. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.d.ts +19 -1
  419. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.js +35 -18
  420. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.js.map +1 -1
  421. package/dist/chat-ui/statewire.d.ts +1 -1
  422. package/dist/chat-ui/thread/statewire-history-edge.cjs +15 -0
  423. package/dist/chat-ui/thread/statewire-history-edge.cjs.map +1 -1
  424. package/dist/chat-ui/thread/statewire-history-edge.d.ts +4 -1
  425. package/dist/chat-ui/thread/statewire-history-edge.js +15 -0
  426. package/dist/chat-ui/thread/statewire-history-edge.js.map +1 -1
  427. package/dist/collab/client.cjs +17 -5
  428. package/dist/collab/client.cjs.map +1 -1
  429. package/dist/collab/client.d.ts +22 -7
  430. package/dist/collab/client.js +17 -5
  431. package/dist/collab/client.js.map +1 -1
  432. package/dist/composer/ComposerAttachedReferences.cjs +119 -0
  433. package/dist/composer/ComposerAttachedReferences.cjs.map +1 -0
  434. package/dist/composer/ComposerAttachedReferences.d.ts +26 -0
  435. package/dist/composer/ComposerAttachedReferences.js +119 -0
  436. package/dist/composer/ComposerAttachedReferences.js.map +1 -0
  437. package/dist/composer/ComposerNamedAgents.cjs +63 -0
  438. package/dist/composer/ComposerNamedAgents.cjs.map +1 -0
  439. package/dist/composer/ComposerNamedAgents.d.ts +16 -0
  440. package/dist/composer/ComposerNamedAgents.js +63 -0
  441. package/dist/composer/ComposerNamedAgents.js.map +1 -0
  442. package/dist/composer/attached-references.cjs +159 -0
  443. package/dist/composer/attached-references.cjs.map +1 -0
  444. package/dist/composer/attached-references.d.ts +86 -0
  445. package/dist/composer/attached-references.js +159 -0
  446. package/dist/composer/attached-references.js.map +1 -0
  447. package/dist/composer/build-composed-message.cjs +14 -7
  448. package/dist/composer/build-composed-message.cjs.map +1 -1
  449. package/dist/composer/build-composed-message.d.ts +6 -1
  450. package/dist/composer/build-composed-message.js +14 -7
  451. package/dist/composer/build-composed-message.js.map +1 -1
  452. package/dist/composer/composer-handoff.cjs +6 -2
  453. package/dist/composer/composer-handoff.cjs.map +1 -1
  454. package/dist/composer/composer-handoff.d.ts +7 -1
  455. package/dist/composer/composer-handoff.js +6 -2
  456. package/dist/composer/composer-handoff.js.map +1 -1
  457. package/dist/composer/folder-upload.cjs +149 -0
  458. package/dist/composer/folder-upload.cjs.map +1 -0
  459. package/dist/composer/folder-upload.d.ts +79 -0
  460. package/dist/composer/folder-upload.js +149 -0
  461. package/dist/composer/folder-upload.js.map +1 -0
  462. package/dist/composer/index.d.ts +1 -1
  463. package/dist/composer/useAttachToChat.cjs +35 -0
  464. package/dist/composer/useAttachToChat.cjs.map +1 -0
  465. package/dist/composer/useAttachToChat.d.ts +54 -0
  466. package/dist/composer/useAttachToChat.js +35 -0
  467. package/dist/composer/useAttachToChat.js.map +1 -0
  468. package/dist/composer/useAttachedReferencesComposerProps.cjs +19 -0
  469. package/dist/composer/useAttachedReferencesComposerProps.cjs.map +1 -0
  470. package/dist/composer/useAttachedReferencesComposerProps.d.ts +12 -0
  471. package/dist/composer/useAttachedReferencesComposerProps.js +19 -0
  472. package/dist/composer/useAttachedReferencesComposerProps.js.map +1 -0
  473. package/dist/composer/useFileUpload.cjs +95 -7
  474. package/dist/composer/useFileUpload.cjs.map +1 -1
  475. package/dist/composer/useFileUpload.d.ts +21 -2
  476. package/dist/composer/useFileUpload.js +95 -7
  477. package/dist/composer/useFileUpload.js.map +1 -1
  478. package/dist/data/athena-api-error.cjs +125 -0
  479. package/dist/data/athena-api-error.cjs.map +1 -0
  480. package/dist/data/athena-api-error.d.ts +96 -0
  481. package/dist/data/athena-api-error.js +125 -0
  482. package/dist/data/athena-api-error.js.map +1 -0
  483. package/dist/data/athena-data-client.cjs +106 -0
  484. package/dist/data/athena-data-client.cjs.map +1 -0
  485. package/dist/data/athena-data-client.d.ts +74 -0
  486. package/dist/data/athena-data-client.js +106 -0
  487. package/dist/data/athena-data-client.js.map +1 -0
  488. package/dist/data/athena-member.cjs +93 -0
  489. package/dist/data/athena-member.cjs.map +1 -0
  490. package/dist/data/athena-member.d.ts +125 -0
  491. package/dist/data/athena-member.js +93 -0
  492. package/dist/data/athena-member.js.map +1 -0
  493. package/dist/data/athena-request.cjs +458 -0
  494. package/dist/data/athena-request.cjs.map +1 -0
  495. package/dist/data/athena-request.d.ts +120 -0
  496. package/dist/data/athena-request.js +458 -0
  497. package/dist/data/athena-request.js.map +1 -0
  498. package/dist/data/use-athena-fetch.cjs +14 -0
  499. package/dist/data/use-athena-fetch.cjs.map +1 -0
  500. package/dist/data/use-athena-fetch.d.ts +19 -0
  501. package/dist/data/use-athena-fetch.js +14 -0
  502. package/dist/data/use-athena-fetch.js.map +1 -0
  503. package/dist/data/use-athena-graphql.cjs +66 -0
  504. package/dist/data/use-athena-graphql.cjs.map +1 -0
  505. package/dist/data/use-athena-graphql.d.ts +56 -0
  506. package/dist/data/use-athena-graphql.js +66 -0
  507. package/dist/data/use-athena-graphql.js.map +1 -0
  508. package/dist/data/use-athena-rest.cjs +33 -0
  509. package/dist/data/use-athena-rest.cjs.map +1 -0
  510. package/dist/data/use-athena-rest.d.ts +21 -0
  511. package/dist/data/use-athena-rest.js +33 -0
  512. package/dist/data/use-athena-rest.js.map +1 -0
  513. package/dist/data/use-semantic-query.cjs +44 -0
  514. package/dist/data/use-semantic-query.cjs.map +1 -0
  515. package/dist/data/use-semantic-query.d.ts +92 -0
  516. package/dist/data/use-semantic-query.js +44 -0
  517. package/dist/data/use-semantic-query.js.map +1 -0
  518. package/dist/diagnostics/athena-diagnostics.cjs.map +1 -1
  519. package/dist/diagnostics/athena-diagnostics.d.ts +5 -1
  520. package/dist/diagnostics/athena-diagnostics.js.map +1 -1
  521. package/dist/diagnostics/errors.cjs +7 -0
  522. package/dist/diagnostics/errors.cjs.map +1 -1
  523. package/dist/diagnostics/errors.d.ts +7 -0
  524. package/dist/diagnostics/errors.js +7 -0
  525. package/dist/diagnostics/errors.js.map +1 -1
  526. package/dist/index.cjs +155 -11
  527. package/dist/index.cjs.map +1 -1
  528. package/dist/index.d.ts +72 -13
  529. package/dist/index.js +148 -4
  530. package/dist/index.js.map +1 -1
  531. package/dist/keryx-http/src/initial-sync.cjs +64 -16
  532. package/dist/keryx-http/src/initial-sync.cjs.map +1 -1
  533. package/dist/keryx-http/src/initial-sync.d.ts +31 -1
  534. package/dist/keryx-http/src/initial-sync.js +64 -16
  535. package/dist/keryx-http/src/initial-sync.js.map +1 -1
  536. package/dist/keryx-http/src/own-awareness.cjs +20 -0
  537. package/dist/keryx-http/src/own-awareness.cjs.map +1 -0
  538. package/dist/keryx-http/src/own-awareness.d.ts +50 -0
  539. package/dist/keryx-http/src/own-awareness.js +20 -0
  540. package/dist/keryx-http/src/own-awareness.js.map +1 -0
  541. package/dist/keryx-http/src/update-attributions.cjs +26 -1
  542. package/dist/keryx-http/src/update-attributions.cjs.map +1 -1
  543. package/dist/keryx-http/src/update-attributions.d.ts +10 -1
  544. package/dist/keryx-http/src/update-attributions.js +26 -1
  545. package/dist/keryx-http/src/update-attributions.js.map +1 -1
  546. package/dist/offline/chat-outbox.cjs +262 -26
  547. package/dist/offline/chat-outbox.cjs.map +1 -1
  548. package/dist/offline/chat-outbox.d.ts +90 -12
  549. package/dist/offline/chat-outbox.js +263 -27
  550. package/dist/offline/chat-outbox.js.map +1 -1
  551. package/dist/provider/AthenaProvider.cjs +63 -19
  552. package/dist/provider/AthenaProvider.cjs.map +1 -1
  553. package/dist/provider/AthenaProvider.d.ts +24 -8
  554. package/dist/provider/AthenaProvider.js +66 -22
  555. package/dist/provider/AthenaProvider.js.map +1 -1
  556. package/dist/react/package.json.cjs +1 -1
  557. package/dist/react/package.json.js +1 -1
  558. package/dist/references/src/anchors/types.cjs +5 -0
  559. package/dist/references/src/anchors/types.cjs.map +1 -1
  560. package/dist/references/src/anchors/types.js +5 -0
  561. package/dist/references/src/anchors/types.js.map +1 -1
  562. package/dist/references/src/attachable.cjs +149 -0
  563. package/dist/references/src/attachable.cjs.map +1 -0
  564. package/dist/references/src/attachable.d.ts +87 -0
  565. package/dist/references/src/attachable.js +149 -0
  566. package/dist/references/src/attachable.js.map +1 -0
  567. package/dist/runtime/StatewirePlanModeLaneSync.cjs +93 -0
  568. package/dist/runtime/StatewirePlanModeLaneSync.cjs.map +1 -0
  569. package/dist/runtime/StatewirePlanModeLaneSync.d.ts +34 -0
  570. package/dist/runtime/StatewirePlanModeLaneSync.js +93 -0
  571. package/dist/runtime/StatewirePlanModeLaneSync.js.map +1 -0
  572. package/dist/runtime/StatewireThreadConfigLaneSync.cjs +2 -0
  573. package/dist/runtime/StatewireThreadConfigLaneSync.cjs.map +1 -1
  574. package/dist/runtime/StatewireThreadConfigLaneSync.d.ts +4 -0
  575. package/dist/runtime/StatewireThreadConfigLaneSync.js +2 -0
  576. package/dist/runtime/StatewireThreadConfigLaneSync.js.map +1 -1
  577. package/dist/runtime/statewire-plan-mode.cjs +71 -0
  578. package/dist/runtime/statewire-plan-mode.cjs.map +1 -0
  579. package/dist/runtime/statewire-plan-mode.d.ts +88 -0
  580. package/dist/runtime/statewire-plan-mode.js +71 -0
  581. package/dist/runtime/statewire-plan-mode.js.map +1 -0
  582. package/dist/runtime/statewire-run-config.cjs +18 -1
  583. package/dist/runtime/statewire-run-config.cjs.map +1 -1
  584. package/dist/runtime/statewire-run-config.d.ts +20 -0
  585. package/dist/runtime/statewire-run-config.js +18 -1
  586. package/dist/runtime/statewire-run-config.js.map +1 -1
  587. package/dist/runtime/statewire-session-key.cjs +11 -5
  588. package/dist/runtime/statewire-session-key.cjs.map +1 -1
  589. package/dist/runtime/statewire-session-key.d.ts +22 -10
  590. package/dist/runtime/statewire-session-key.js +11 -5
  591. package/dist/runtime/statewire-session-key.js.map +1 -1
  592. package/dist/runtime/useAthenaStatewireRuntime.cjs +65 -8
  593. package/dist/runtime/useAthenaStatewireRuntime.cjs.map +1 -1
  594. package/dist/runtime/useAthenaStatewireRuntime.d.ts +26 -10
  595. package/dist/runtime/useAthenaStatewireRuntime.js +67 -10
  596. package/dist/runtime/useAthenaStatewireRuntime.js.map +1 -1
  597. package/dist/search/useAthenaAssets.cjs +394 -0
  598. package/dist/search/useAthenaAssets.cjs.map +1 -0
  599. package/dist/search/useAthenaAssets.d.ts +186 -0
  600. package/dist/search/useAthenaAssets.js +394 -0
  601. package/dist/search/useAthenaAssets.js.map +1 -0
  602. package/dist/sheet-range/index.cjs +4 -0
  603. package/dist/sheet-range/index.cjs.map +1 -1
  604. package/dist/sheet-range/index.d.ts +4 -2
  605. package/dist/sheet-range/index.js +4 -0
  606. package/dist/sheet-range/index.js.map +1 -1
  607. package/dist/sheet-range/query-range.cjs +102 -0
  608. package/dist/sheet-range/query-range.cjs.map +1 -0
  609. package/dist/sheet-range/query-range.d.ts +46 -0
  610. package/dist/sheet-range/query-range.js +102 -0
  611. package/dist/sheet-range/query-range.js.map +1 -0
  612. package/dist/styles.css +1 -1
  613. package/dist/subagents/index.cjs +49 -0
  614. package/dist/subagents/index.cjs.map +1 -0
  615. package/dist/subagents/index.d.ts +16 -0
  616. package/dist/subagents/index.js +49 -0
  617. package/dist/subagents/index.js.map +1 -0
  618. package/dist/subagents/lane-follow.cjs +19 -0
  619. package/dist/subagents/lane-follow.cjs.map +1 -0
  620. package/dist/subagents/lane-follow.d.ts +9 -0
  621. package/dist/subagents/lane-follow.js +19 -0
  622. package/dist/subagents/lane-follow.js.map +1 -0
  623. package/dist/subagents/lane-model.cjs +178 -0
  624. package/dist/subagents/lane-model.cjs.map +1 -0
  625. package/dist/subagents/lane-model.d.ts +140 -0
  626. package/dist/subagents/lane-model.js +178 -0
  627. package/dist/subagents/lane-model.js.map +1 -0
  628. package/dist/subagents/lane-parts.cjs +517 -0
  629. package/dist/subagents/lane-parts.cjs.map +1 -0
  630. package/dist/subagents/lane-parts.d.ts +130 -0
  631. package/dist/subagents/lane-parts.js +517 -0
  632. package/dist/subagents/lane-parts.js.map +1 -0
  633. package/dist/subagents/subagent-lane-group.cjs +215 -0
  634. package/dist/subagents/subagent-lane-group.cjs.map +1 -0
  635. package/dist/subagents/subagent-lane-group.d.ts +67 -0
  636. package/dist/subagents/subagent-lane-group.js +215 -0
  637. package/dist/subagents/subagent-lane-group.js.map +1 -0
  638. package/dist/subagents/subagent-transcript-drawer.cjs +431 -0
  639. package/dist/subagents/subagent-transcript-drawer.cjs.map +1 -0
  640. package/dist/subagents/subagent-transcript-drawer.d.ts +78 -0
  641. package/dist/subagents/subagent-transcript-drawer.js +431 -0
  642. package/dist/subagents/subagent-transcript-drawer.js.map +1 -0
  643. package/dist/subagents/task-subagent-group.cjs +115 -0
  644. package/dist/subagents/task-subagent-group.cjs.map +1 -0
  645. package/dist/subagents/task-subagent-group.d.ts +36 -0
  646. package/dist/subagents/task-subagent-group.js +115 -0
  647. package/dist/subagents/task-subagent-group.js.map +1 -0
  648. package/dist/subagents/use-omitted-images-in-view.cjs +68 -0
  649. package/dist/subagents/use-omitted-images-in-view.cjs.map +1 -0
  650. package/dist/subagents/use-omitted-images-in-view.d.ts +21 -0
  651. package/dist/subagents/use-omitted-images-in-view.js +68 -0
  652. package/dist/subagents/use-omitted-images-in-view.js.map +1 -0
  653. package/dist/threads/Inbox.cjs +2 -2
  654. package/dist/threads/Inbox.cjs.map +1 -1
  655. package/dist/threads/SessionList.cjs +27 -24
  656. package/dist/threads/SessionList.cjs.map +1 -1
  657. package/dist/threads/SessionList.js +22 -19
  658. package/dist/threads/SessionList.js.map +1 -1
  659. package/dist/threads/SessionsPage.cjs +13 -7
  660. package/dist/threads/SessionsPage.cjs.map +1 -1
  661. package/dist/threads/SessionsPage.d.ts +10 -1
  662. package/dist/threads/SessionsPage.js +9 -3
  663. package/dist/threads/SessionsPage.js.map +1 -1
  664. package/dist/threads/live-session-rows.cjs +207 -0
  665. package/dist/threads/live-session-rows.cjs.map +1 -0
  666. package/dist/threads/live-session-rows.d.ts +175 -0
  667. package/dist/threads/live-session-rows.js +207 -0
  668. package/dist/threads/live-session-rows.js.map +1 -0
  669. package/dist/threads/session-list-model.cjs.map +1 -1
  670. package/dist/threads/session-list-model.d.ts +2 -1
  671. package/dist/threads/session-list-model.js.map +1 -1
  672. package/dist/threads/session-row-parts.cjs +3 -3
  673. package/dist/threads/session-row-parts.cjs.map +1 -1
  674. package/dist/threads/sessions-page-model.cjs +13 -5
  675. package/dist/threads/sessions-page-model.cjs.map +1 -1
  676. package/dist/threads/sessions-page-model.d.ts +7 -0
  677. package/dist/threads/sessions-page-model.js +11 -3
  678. package/dist/threads/sessions-page-model.js.map +1 -1
  679. package/dist/threads/sessions-page-storage.cjs +8 -8
  680. package/dist/threads/sessions-page-storage.cjs.map +1 -1
  681. package/dist/threads/sessions-page-storage.d.ts +5 -1
  682. package/dist/threads/sessions-page-storage.js +8 -8
  683. package/dist/threads/sessions-page-storage.js.map +1 -1
  684. package/dist/threads/statewire-thread-list.cjs +173 -20
  685. package/dist/threads/statewire-thread-list.cjs.map +1 -1
  686. package/dist/threads/statewire-thread-list.d.ts +44 -1
  687. package/dist/threads/statewire-thread-list.js +174 -21
  688. package/dist/threads/statewire-thread-list.js.map +1 -1
  689. package/dist/threads/use-athena-sessions.cjs +1 -0
  690. package/dist/threads/use-athena-sessions.cjs.map +1 -1
  691. package/dist/threads/use-athena-sessions.d.ts +7 -0
  692. package/dist/threads/use-athena-sessions.js +1 -0
  693. package/dist/threads/use-athena-sessions.js.map +1 -1
  694. package/dist/threads/use-athena-thread-agent.cjs +31 -0
  695. package/dist/threads/use-athena-thread-agent.cjs.map +1 -0
  696. package/dist/threads/use-athena-thread-agent.d.ts +38 -0
  697. package/dist/threads/use-athena-thread-agent.js +31 -0
  698. package/dist/threads/use-athena-thread-agent.js.map +1 -0
  699. package/dist/threads/use-athena-thread-plan-mode.cjs +18 -0
  700. package/dist/threads/use-athena-thread-plan-mode.cjs.map +1 -0
  701. package/dist/threads/use-athena-thread-plan-mode.d.ts +18 -0
  702. package/dist/threads/use-athena-thread-plan-mode.js +18 -0
  703. package/dist/threads/use-athena-thread-plan-mode.js.map +1 -0
  704. package/dist/threads/use-rest-conversation-history.d.ts +1 -0
  705. package/dist/tools/agent-creations.cjs +97 -0
  706. package/dist/tools/agent-creations.cjs.map +1 -0
  707. package/dist/tools/agent-creations.d.ts +38 -0
  708. package/dist/tools/agent-creations.js +97 -0
  709. package/dist/tools/agent-creations.js.map +1 -0
  710. package/dist/tools/agent-highlights.cjs +100 -0
  711. package/dist/tools/agent-highlights.cjs.map +1 -0
  712. package/dist/tools/agent-highlights.d.ts +57 -0
  713. package/dist/tools/agent-highlights.js +100 -0
  714. package/dist/tools/agent-highlights.js.map +1 -0
  715. package/dist/tools/append-document-tool-ui.cjs +1 -0
  716. package/dist/tools/append-document-tool-ui.cjs.map +1 -1
  717. package/dist/tools/append-document-tool-ui.d.ts +7 -0
  718. package/dist/tools/append-document-tool-ui.js +2 -1
  719. package/dist/tools/append-document-tool-ui.js.map +1 -1
  720. package/dist/tools/auto-open-tools.cjs +144 -71
  721. package/dist/tools/auto-open-tools.cjs.map +1 -1
  722. package/dist/tools/auto-open-tools.d.ts +131 -1
  723. package/dist/tools/auto-open-tools.js +145 -72
  724. package/dist/tools/auto-open-tools.js.map +1 -1
  725. package/dist/tools/browser-tool-uis.cjs +594 -0
  726. package/dist/tools/browser-tool-uis.cjs.map +1 -0
  727. package/dist/tools/browser-tool-uis.d.ts +8 -0
  728. package/dist/tools/browser-tool-uis.js +594 -0
  729. package/dist/tools/browser-tool-uis.js.map +1 -0
  730. package/dist/tools/computer-asset-tool-uis.cjs +313 -0
  731. package/dist/tools/computer-asset-tool-uis.cjs.map +1 -0
  732. package/dist/tools/computer-asset-tool-uis.d.ts +5 -0
  733. package/dist/tools/computer-asset-tool-uis.js +313 -0
  734. package/dist/tools/computer-asset-tool-uis.js.map +1 -0
  735. package/dist/tools/document-edit-tool-uis.cjs +218 -0
  736. package/dist/tools/document-edit-tool-uis.cjs.map +1 -0
  737. package/dist/tools/document-edit-tool-uis.d.ts +40 -0
  738. package/dist/tools/document-edit-tool-uis.js +218 -0
  739. package/dist/tools/document-edit-tool-uis.js.map +1 -0
  740. package/dist/tools/drive-tool-uis.cjs +425 -0
  741. package/dist/tools/drive-tool-uis.cjs.map +1 -0
  742. package/dist/tools/drive-tool-uis.d.ts +120 -0
  743. package/dist/tools/drive-tool-uis.js +425 -0
  744. package/dist/tools/drive-tool-uis.js.map +1 -0
  745. package/dist/tools/email-calendar-tool-uis.cjs +789 -0
  746. package/dist/tools/email-calendar-tool-uis.cjs.map +1 -0
  747. package/dist/tools/email-calendar-tool-uis.d.ts +129 -0
  748. package/dist/tools/email-calendar-tool-uis.js +789 -0
  749. package/dist/tools/email-calendar-tool-uis.js.map +1 -0
  750. package/dist/tools/ontology-tool-uis.cjs +83 -0
  751. package/dist/tools/ontology-tool-uis.cjs.map +1 -0
  752. package/dist/tools/ontology-tool-uis.d.ts +9 -0
  753. package/dist/tools/ontology-tool-uis.js +83 -0
  754. package/dist/tools/ontology-tool-uis.js.map +1 -0
  755. package/dist/tools/orchestration-tool-uis.cjs +586 -0
  756. package/dist/tools/orchestration-tool-uis.cjs.map +1 -0
  757. package/dist/tools/orchestration-tool-uis.d.ts +141 -0
  758. package/dist/tools/orchestration-tool-uis.js +586 -0
  759. package/dist/tools/orchestration-tool-uis.js.map +1 -0
  760. package/dist/tools/presentation-edit-tool-uis.cjs +516 -0
  761. package/dist/tools/presentation-edit-tool-uis.cjs.map +1 -0
  762. package/dist/tools/presentation-edit-tool-uis.d.ts +73 -0
  763. package/dist/tools/presentation-edit-tool-uis.js +516 -0
  764. package/dist/tools/presentation-edit-tool-uis.js.map +1 -0
  765. package/dist/tools/project-tool-uis.cjs +213 -0
  766. package/dist/tools/project-tool-uis.cjs.map +1 -0
  767. package/dist/tools/project-tool-uis.d.ts +14 -0
  768. package/dist/tools/project-tool-uis.js +213 -0
  769. package/dist/tools/project-tool-uis.js.map +1 -0
  770. package/dist/tools/sandbox-tool-uis.cjs +491 -0
  771. package/dist/tools/sandbox-tool-uis.cjs.map +1 -0
  772. package/dist/tools/sandbox-tool-uis.d.ts +116 -0
  773. package/dist/tools/sandbox-tool-uis.js +491 -0
  774. package/dist/tools/sandbox-tool-uis.js.map +1 -0
  775. package/dist/tools/sheet-query-tool-ui.cjs +138 -0
  776. package/dist/tools/sheet-query-tool-ui.cjs.map +1 -0
  777. package/dist/tools/sheet-query-tool-ui.d.ts +15 -0
  778. package/dist/tools/sheet-query-tool-ui.js +138 -0
  779. package/dist/tools/sheet-query-tool-ui.js.map +1 -0
  780. package/dist/tools/studio-screenshot-tool-uis.cjs +262 -0
  781. package/dist/tools/studio-screenshot-tool-uis.cjs.map +1 -0
  782. package/dist/tools/studio-screenshot-tool-uis.d.ts +52 -0
  783. package/dist/tools/studio-screenshot-tool-uis.js +262 -0
  784. package/dist/tools/studio-screenshot-tool-uis.js.map +1 -0
  785. package/dist/tools/subagent-task-tool-ui.cjs +24 -475
  786. package/dist/tools/subagent-task-tool-ui.cjs.map +1 -1
  787. package/dist/tools/subagent-task-tool-ui.d.ts +19 -103
  788. package/dist/tools/subagent-task-tool-ui.js +28 -479
  789. package/dist/tools/subagent-task-tool-ui.js.map +1 -1
  790. package/dist/tools/tool-summary.cjs +36 -0
  791. package/dist/tools/tool-summary.cjs.map +1 -1
  792. package/dist/tools/tool-summary.js +36 -0
  793. package/dist/tools/tool-summary.js.map +1 -1
  794. package/dist/tools/tool-uis.cjs +181 -53
  795. package/dist/tools/tool-uis.cjs.map +1 -1
  796. package/dist/tools/tool-uis.d.ts +40 -0
  797. package/dist/tools/tool-uis.js +183 -55
  798. package/dist/tools/tool-uis.js.map +1 -1
  799. package/dist/typed-interrupts/index.cjs +15 -0
  800. package/dist/typed-interrupts/index.cjs.map +1 -0
  801. package/dist/typed-interrupts/index.d.ts +20 -0
  802. package/dist/typed-interrupts/index.js +15 -0
  803. package/dist/typed-interrupts/index.js.map +1 -0
  804. package/dist/workbench/session-workbench-panes.cjs +6 -6
  805. package/dist/workbench/session-workbench-panes.cjs.map +1 -1
  806. package/package.json +28 -6
  807. package/dist/agent-runtime/src/chat-outbox-store.cjs +0 -510
  808. package/dist/agent-runtime/src/chat-outbox-store.cjs.map +0 -1
  809. package/dist/agent-runtime/src/chat-outbox-store.d.ts +0 -210
  810. package/dist/agent-runtime/src/chat-outbox-store.js +0 -510
  811. package/dist/agent-runtime/src/chat-outbox-store.js.map +0 -1
@@ -0,0 +1,252 @@
1
+ import { LEGACY_CHAT_OUTBOX_SOURCE, readFiles, readAttachments, readChatOutboxLocalMeta, runSendMessage, CHAT_OUTBOX_LOCAL_META_KIND } from "./chat-outbox-entry.js";
2
+ import { requestToPromise, transactionDone, sha256Hex, idbGlobals, lazySealedDatabase, openJson } from "./sealed-idb.js";
3
+ import { DEEP_AGENT_STATEWIRE_PROTOCOL } from "./statewire-transport.js";
4
+ const LEGACY_CHAT_OUTBOX_DATABASE = LEGACY_CHAT_OUTBOX_SOURCE;
5
+ const LEGACY_FORMAT = 1;
6
+ const DATABASE_VERSION = 1;
7
+ const ENTRIES_STORE = "entries";
8
+ const BY_OWNER = "byOwner";
9
+ const BY_OWNER_THREAD = "byOwnerThread";
10
+ function isRecord(value) {
11
+ return typeof value === "object" && value !== null && !Array.isArray(value);
12
+ }
13
+ function readLegacyChatOutboxFailure(value) {
14
+ if (!isRecord(value) || typeof value.at !== "number") return void 0;
15
+ return { reason: typeof value.reason === "string" && value.reason.length > 0 ? value.reason : "error", at: value.at };
16
+ }
17
+ function parseLegacyChatOutboxMessage(value) {
18
+ if (!isRecord(value)) return null;
19
+ const { id, threadId, text, queuedAt } = value;
20
+ if (typeof id !== "string" || typeof threadId !== "string" || typeof text !== "string") return null;
21
+ if (typeof queuedAt !== "number" || !Number.isFinite(queuedAt)) return null;
22
+ const files = readFiles(value.files);
23
+ const attachments = readAttachments(value.attachments);
24
+ return {
25
+ id,
26
+ threadId,
27
+ text,
28
+ queuedAt,
29
+ newChat: value.newChat === true,
30
+ ...typeof value.composerMarkdown === "string" && { composerMarkdown: value.composerMarkdown },
31
+ ...typeof value.composerHtml === "string" && { composerHtml: value.composerHtml },
32
+ ...isRecord(value.metadata) && { metadata: value.metadata },
33
+ ...isRecord(value.sendContext) && { sendContext: value.sendContext },
34
+ ...files && { files },
35
+ ...attachments && { attachments }
36
+ };
37
+ }
38
+ function withFailure(message, value) {
39
+ const failure = readLegacyChatOutboxFailure(value);
40
+ return failure ? { ...message, failure } : message;
41
+ }
42
+ function upgrade(db) {
43
+ if (!db.objectStoreNames.contains(ENTRIES_STORE)) {
44
+ const store = db.createObjectStore(ENTRIES_STORE, { keyPath: "key" });
45
+ store.createIndex(BY_OWNER, "owner", { unique: false });
46
+ store.createIndex(BY_OWNER_THREAD, ["owner", "thread"], { unique: false });
47
+ }
48
+ }
49
+ function createLegacyChatOutboxReader({
50
+ ownerId,
51
+ getKey,
52
+ factory = idbGlobals.indexedDB,
53
+ databaseName = LEGACY_CHAT_OUTBOX_DATABASE
54
+ }) {
55
+ const database = lazySealedDatabase({ factory, name: databaseName, version: DATABASE_VERSION, upgrade });
56
+ const ownerHash = () => sha256Hex(ownerId);
57
+ const recordKey = (threadId, id) => sha256Hex(`${ownerId}|${threadId}|${id}`);
58
+ const aadOf = (record) => `athena-chat-outbox|${LEGACY_FORMAT}|${record.owner}|${record.thread}|${record.key}`;
59
+ const open = async (records) => {
60
+ if (records.length === 0) return [];
61
+ let key = null;
62
+ try {
63
+ key = await getKey();
64
+ } catch {
65
+ key = null;
66
+ }
67
+ if (!key) return [];
68
+ const opened = [];
69
+ for (const record of records) {
70
+ if (!record || record.format > LEGACY_FORMAT) continue;
71
+ try {
72
+ const message = parseLegacyChatOutboxMessage(await openJson({ key, sealed: record.sealed, aad: aadOf(record) }));
73
+ if (message) opened.push(withFailure(message, record.failure));
74
+ } catch {
75
+ }
76
+ }
77
+ return opened.sort((a, b) => a.queuedAt - b.queuedAt);
78
+ };
79
+ const readIndex = async (index, query) => {
80
+ const db = await database();
81
+ if (!db) return [];
82
+ return await requestToPromise(
83
+ db.transaction(ENTRIES_STORE, "readonly").objectStore(ENTRIES_STORE).index(index).getAll(query)
84
+ );
85
+ };
86
+ return {
87
+ async listAll() {
88
+ try {
89
+ return await open(await readIndex(BY_OWNER, await ownerHash()));
90
+ } catch {
91
+ return [];
92
+ }
93
+ },
94
+ async list(threadId) {
95
+ try {
96
+ const thread = await sha256Hex(`${ownerId}|${threadId}`);
97
+ return await open(await readIndex(BY_OWNER_THREAD, [await ownerHash(), thread]));
98
+ } catch {
99
+ return [];
100
+ }
101
+ },
102
+ async count() {
103
+ const db = await database();
104
+ if (!db) return 0;
105
+ const owner = await ownerHash();
106
+ const keys = await requestToPromise(
107
+ db.transaction(ENTRIES_STORE, "readonly").objectStore(ENTRIES_STORE).index(BY_OWNER).getAllKeys(owner)
108
+ );
109
+ return keys.length;
110
+ },
111
+ async remove(threadId, id) {
112
+ const db = await database();
113
+ if (!db) return;
114
+ const key = await recordKey(threadId, id);
115
+ const tx = db.transaction(ENTRIES_STORE, "readwrite");
116
+ const store = tx.objectStore(ENTRIES_STORE);
117
+ const existing = await requestToPromise(store.get(key));
118
+ if (!isRecord(existing) || typeof existing.format !== "number" || existing.format <= LEGACY_FORMAT) {
119
+ store.delete(key);
120
+ }
121
+ await transactionDone(tx);
122
+ },
123
+ async clear() {
124
+ const db = await database();
125
+ if (!db) return;
126
+ const owner = await ownerHash();
127
+ const tx = db.transaction(ENTRIES_STORE, "readwrite");
128
+ const store = tx.objectStore(ENTRIES_STORE);
129
+ const keys = await requestToPromise(store.index(BY_OWNER).getAllKeys(owner));
130
+ for (const key of keys) store.delete(key);
131
+ await transactionDone(tx);
132
+ }
133
+ };
134
+ }
135
+ function newRunId() {
136
+ var _a, _b;
137
+ const host = globalThis;
138
+ return ((_b = (_a = host.crypto) == null ? void 0 : _a.randomUUID) == null ? void 0 : _b.call(_a)) ?? `run-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
139
+ }
140
+ function legacyAgents(message) {
141
+ var _a;
142
+ if (message.metadata && "addressedAgents" in message.metadata) return void 0;
143
+ const named = (_a = message.sendContext) == null ? void 0 : _a.namedAgents;
144
+ if (!Array.isArray(named)) return void 0;
145
+ const refs = named.flatMap(
146
+ (agent) => isRecord(agent) && typeof agent.ref === "string" && agent.ref.length > 0 ? [agent.ref] : []
147
+ );
148
+ return refs.length > 0 ? refs : void 0;
149
+ }
150
+ const LEGACY_ATTACHMENT_REFUSED_CODE = "attachment-unavailable";
151
+ function legacyChatOutboxSendFailure(failure) {
152
+ return {
153
+ fate: "rejected",
154
+ cause: "server",
155
+ code: failure.reason === "attachment" ? LEGACY_ATTACHMENT_REFUSED_CODE : `legacy-${failure.reason}`
156
+ };
157
+ }
158
+ function legacyChatOutboxInsert(message) {
159
+ const agents = legacyAgents(message);
160
+ const metadata = agents === void 0 && message.metadata === void 0 ? void 0 : { ...message.metadata, ...agents !== void 0 && { addressedAgents: agents } };
161
+ const parts = [
162
+ ...(message.files ?? []).map((file) => ({
163
+ type: "file",
164
+ mediaType: file.mediaType,
165
+ url: file.url,
166
+ ...file.filename !== void 0 && { filename: file.filename }
167
+ })),
168
+ ...message.text.length > 0 ? [{ type: "text", text: message.text }] : []
169
+ ];
170
+ const localMeta = {
171
+ kind: CHAT_OUTBOX_LOCAL_META_KIND,
172
+ threadId: message.threadId,
173
+ queuedAt: message.queuedAt,
174
+ newChat: message.newChat,
175
+ migratedFrom: LEGACY_CHAT_OUTBOX_SOURCE,
176
+ legacyId: message.id,
177
+ ...message.composerMarkdown !== void 0 && { composerMarkdown: message.composerMarkdown },
178
+ ...message.composerHtml !== void 0 && { composerHtml: message.composerHtml },
179
+ ...message.attachments !== void 0 && { attachments: message.attachments },
180
+ ...message.failure !== void 0 && { error: legacyChatOutboxSendFailure(message.failure) }
181
+ };
182
+ return {
183
+ protocol: DEEP_AGENT_STATEWIRE_PROTOCOL,
184
+ command: {
185
+ method: "run/send",
186
+ params: [
187
+ {
188
+ type: "run/send",
189
+ behavior: "auto",
190
+ runId: newRunId(),
191
+ message: { id: message.id, role: "user", parts, ...metadata !== void 0 && { metadata } }
192
+ }
193
+ ]
194
+ },
195
+ held: true,
196
+ localMeta
197
+ };
198
+ }
199
+ function holdsLegacy(outbox, message) {
200
+ return outbox.entries.some((entry) => {
201
+ var _a;
202
+ const meta = readChatOutboxLocalMeta(entry.localMeta);
203
+ return meta.legacyId === message.id || ((_a = runSendMessage(entry.command)) == null ? void 0 : _a.id) === message.id;
204
+ });
205
+ }
206
+ async function migrateLegacyChatOutbox({
207
+ threadId,
208
+ reader,
209
+ outbox,
210
+ isKept,
211
+ messageIdsShown
212
+ }) {
213
+ const result = { inserted: 0, removed: 0, kept: 0 };
214
+ const messages = await reader.list(threadId);
215
+ for (const message of messages) {
216
+ if (message.threadId !== threadId) continue;
217
+ const delivered = (messageIdsShown == null ? void 0 : messageIdsShown().has(message.id)) ?? false;
218
+ if (!delivered && !holdsLegacy(outbox, message)) {
219
+ outbox.insert(legacyChatOutboxInsert(message));
220
+ result.inserted += 1;
221
+ }
222
+ let kept = delivered;
223
+ if (!kept) {
224
+ try {
225
+ kept = await isKept(message.id);
226
+ } catch {
227
+ kept = false;
228
+ }
229
+ }
230
+ if (!kept) {
231
+ result.kept += 1;
232
+ continue;
233
+ }
234
+ try {
235
+ await reader.remove(threadId, message.id);
236
+ result.removed += 1;
237
+ } catch {
238
+ result.kept += 1;
239
+ }
240
+ }
241
+ return result;
242
+ }
243
+ export {
244
+ LEGACY_CHAT_OUTBOX_DATABASE,
245
+ createLegacyChatOutboxReader,
246
+ legacyChatOutboxInsert,
247
+ legacyChatOutboxSendFailure,
248
+ migrateLegacyChatOutbox,
249
+ parseLegacyChatOutboxMessage,
250
+ readLegacyChatOutboxFailure
251
+ };
252
+ //# sourceMappingURL=chat-outbox-legacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-outbox-legacy.js","sources":["../../../../agent-runtime/src/chat-outbox-legacy.ts"],"sourcesContent":["import type { StatewireClient } from \"statewire\";\nimport {\n CHAT_OUTBOX_LOCAL_META_KIND,\n type ChatOutboxAttachment,\n type ChatOutboxFile,\n type ChatOutboxLocalMeta,\n LEGACY_CHAT_OUTBOX_SOURCE,\n readAttachments,\n readChatOutboxLocalMeta,\n readFiles,\n runSendMessage,\n} from \"./chat-outbox-entry\";\nimport {\n type IdbDatabase,\n idbGlobals,\n lazySealedDatabase,\n openJson,\n requestToPromise,\n sha256Hex,\n transactionDone,\n} from \"./sealed-idb\";\nimport { DEEP_AGENT_STATEWIRE_PROTOCOL } from \"./statewire-transport\";\n\n/**\n * The chat outbox's previous store (`athena-chat-outbox:v1`, one IndexedDB database per browser,\n * records sealed with AES-GCM under the person's key), read once to move each waiting message into\n * its thread's statewire outbox ({@link migrateLegacyChatOutbox}). Nothing new is ever written\n * here: a record is deleted only once its message is held in the thread's outbox on the device.\n */\n\nexport const LEGACY_CHAT_OUTBOX_DATABASE = LEGACY_CHAT_OUTBOX_SOURCE;\nconst LEGACY_FORMAT = 1;\nconst DATABASE_VERSION = 1;\nconst ENTRIES_STORE = \"entries\";\nconst BY_OWNER = \"byOwner\";\nconst BY_OWNER_THREAD = \"byOwnerThread\";\n\n/**\n * A hand-off the legacy store recorded as failed (`refused`, `error`, `prepare`, `attachment`):\n * the message waited for the person's Retry, Edit or Discard, and still does once migrated.\n */\nexport interface LegacyChatOutboxFailure {\n reason: string;\n at: number;\n}\n\n/** A message the legacy store kept. */\nexport interface LegacyChatOutboxMessage {\n id: string;\n threadId: string;\n text: string;\n queuedAt: number;\n newChat: boolean;\n composerMarkdown?: string;\n composerHtml?: string;\n metadata?: Record<string, unknown>;\n /** The per-send settings it was typed with (Olympus: `{ namedAgents }`, the agents it named). */\n sendContext?: Record<string, unknown>;\n files?: ChatOutboxFile[];\n attachments?: ChatOutboxAttachment[];\n /** Its last hand-off failed: it never goes on its own. */\n failure?: LegacyChatOutboxFailure;\n}\n\ninterface StoredRecord {\n key: string;\n owner: string;\n thread: string;\n format: number;\n sealed: Uint8Array;\n failure?: unknown;\n}\n\nexport interface LegacyChatOutboxReader {\n /** Every message kept for this person (records that do not open are skipped and left). */\n listAll(): Promise<LegacyChatOutboxMessage[]>;\n list(threadId: string): Promise<LegacyChatOutboxMessage[]>;\n /** How many records are kept for this person, opened or not. */\n count(): Promise<number>;\n remove(threadId: string, id: string): Promise<void>;\n /** Every record of this person, gone (a sign-out the person chose). */\n clear(): Promise<void>;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\n/** A legacy record's failure read back; any failure with a time counts, its reason defaulting to `error`. */\nexport function readLegacyChatOutboxFailure(value: unknown): LegacyChatOutboxFailure | undefined {\n if (!isRecord(value) || typeof value.at !== \"number\") return undefined;\n return { reason: typeof value.reason === \"string\" && value.reason.length > 0 ? value.reason : \"error\", at: value.at };\n}\n\n/** A sealed v1 entry read back, or `null` when it is not one. */\nexport function parseLegacyChatOutboxMessage(value: unknown): LegacyChatOutboxMessage | null {\n if (!isRecord(value)) return null;\n const { id, threadId, text, queuedAt } = value;\n if (typeof id !== \"string\" || typeof threadId !== \"string\" || typeof text !== \"string\") return null;\n if (typeof queuedAt !== \"number\" || !Number.isFinite(queuedAt)) return null;\n const files = readFiles(value.files);\n const attachments = readAttachments(value.attachments);\n return {\n id,\n threadId,\n text,\n queuedAt,\n newChat: value.newChat === true,\n ...(typeof value.composerMarkdown === \"string\" && { composerMarkdown: value.composerMarkdown }),\n ...(typeof value.composerHtml === \"string\" && { composerHtml: value.composerHtml }),\n ...(isRecord(value.metadata) && { metadata: value.metadata }),\n ...(isRecord(value.sendContext) && { sendContext: value.sendContext }),\n ...(files && { files }),\n ...(attachments && { attachments }),\n };\n}\n\nfunction withFailure(message: LegacyChatOutboxMessage, value: unknown): LegacyChatOutboxMessage {\n const failure = readLegacyChatOutboxFailure(value);\n return failure ? { ...message, failure } : message;\n}\n\nfunction upgrade(db: IdbDatabase): void {\n if (!db.objectStoreNames.contains(ENTRIES_STORE)) {\n const store = db.createObjectStore(ENTRIES_STORE, { keyPath: \"key\" });\n store.createIndex(BY_OWNER, \"owner\", { unique: false });\n store.createIndex(BY_OWNER_THREAD, [\"owner\", \"thread\"], { unique: false });\n }\n}\n\n/**\n * The legacy store, read-only but for deletes. `getKey` is the person's AES-GCM key for reading\n * (`null`: nothing opens). `factory` is an `IDBFactory` (the browser's by default).\n */\nexport function createLegacyChatOutboxReader({\n ownerId,\n getKey,\n factory = idbGlobals.indexedDB,\n databaseName = LEGACY_CHAT_OUTBOX_DATABASE,\n}: {\n ownerId: string;\n getKey: () => Promise<CryptoKey | null>;\n factory?: object | undefined;\n databaseName?: string;\n}): LegacyChatOutboxReader {\n const database = lazySealedDatabase({ factory, name: databaseName, version: DATABASE_VERSION, upgrade });\n const ownerHash = () => sha256Hex(ownerId);\n const recordKey = (threadId: string, id: string) => sha256Hex(`${ownerId}|${threadId}|${id}`);\n const aadOf = (record: StoredRecord) =>\n `athena-chat-outbox|${LEGACY_FORMAT}|${record.owner}|${record.thread}|${record.key}`;\n\n const open = async (records: StoredRecord[]): Promise<LegacyChatOutboxMessage[]> => {\n if (records.length === 0) return [];\n let key: CryptoKey | null = null;\n try {\n key = await getKey();\n } catch {\n key = null;\n }\n if (!key) return [];\n const opened: LegacyChatOutboxMessage[] = [];\n for (const record of records) {\n if (!record || record.format > LEGACY_FORMAT) continue;\n try {\n const message = parseLegacyChatOutboxMessage(await openJson({ key, sealed: record.sealed, aad: aadOf(record) }));\n if (message) opened.push(withFailure(message, record.failure));\n } catch {\n // Not readable with this key: left as it is (it may be the only copy of someone's work).\n }\n }\n return opened.sort((a, b) => a.queuedAt - b.queuedAt);\n };\n\n const readIndex = async (index: string, query: unknown): Promise<StoredRecord[]> => {\n const db = await database();\n if (!db) return [];\n return (await requestToPromise(\n db.transaction(ENTRIES_STORE, \"readonly\").objectStore(ENTRIES_STORE).index(index).getAll(query),\n )) as StoredRecord[];\n };\n\n return {\n async listAll() {\n try {\n return await open(await readIndex(BY_OWNER, await ownerHash()));\n } catch {\n return [];\n }\n },\n async list(threadId) {\n try {\n const thread = await sha256Hex(`${ownerId}|${threadId}`);\n return await open(await readIndex(BY_OWNER_THREAD, [await ownerHash(), thread]));\n } catch {\n return [];\n }\n },\n async count() {\n const db = await database();\n if (!db) return 0;\n // Hashed before the transaction opens: an await on anything but its own requests ends it.\n const owner = await ownerHash();\n const keys = await requestToPromise(\n db.transaction(ENTRIES_STORE, \"readonly\").objectStore(ENTRIES_STORE).index(BY_OWNER).getAllKeys(owner),\n );\n return keys.length;\n },\n async remove(threadId, id) {\n const db = await database();\n if (!db) return;\n const key = await recordKey(threadId, id);\n const tx = db.transaction(ENTRIES_STORE, \"readwrite\");\n const store = tx.objectStore(ENTRIES_STORE);\n const existing = await requestToPromise(store.get(key));\n // A newer build's record of the same message stays as that build wrote it.\n if (!isRecord(existing) || typeof existing.format !== \"number\" || existing.format <= LEGACY_FORMAT) {\n store.delete(key);\n }\n await transactionDone(tx);\n },\n async clear() {\n const db = await database();\n if (!db) return;\n const owner = await ownerHash();\n const tx = db.transaction(ENTRIES_STORE, \"readwrite\");\n const store = tx.objectStore(ENTRIES_STORE);\n const keys = await requestToPromise(store.index(BY_OWNER).getAllKeys(owner));\n for (const key of keys) store.delete(key);\n await transactionDone(tx);\n },\n };\n}\n\nfunction newRunId(): string {\n const host = globalThis as { crypto?: { randomUUID?: () => string } };\n return host.crypto?.randomUUID?.() ?? `run-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;\n}\n\n/**\n * The agents a legacy message named: Olympus kept them as `sendContext.namedAgents`\n * (`[{ ref, name, assetId }]`). A message whose metadata already names its own keeps those.\n */\nfunction legacyAgents(message: LegacyChatOutboxMessage): string[] | undefined {\n if (message.metadata && \"addressedAgents\" in message.metadata) return undefined;\n const named = message.sendContext?.namedAgents;\n if (!Array.isArray(named)) return undefined;\n const refs = named.flatMap((agent) =>\n isRecord(agent) && typeof agent.ref === \"string\" && agent.ref.length > 0 ? [agent.ref] : [],\n );\n return refs.length > 0 ? refs : undefined;\n}\n\n/** The failure code of a legacy attachment refusal (`CHAT_OUTBOX_ATTACHMENT_REFUSED_CODE`). */\nconst LEGACY_ATTACHMENT_REFUSED_CODE = \"attachment-unavailable\";\n\n/** The `localMeta.error` a legacy failure becomes: the row shows \"Couldn't send\" and never goes on its own. */\nexport function legacyChatOutboxSendFailure(failure: LegacyChatOutboxFailure): StatewireClient.SendFailure {\n return {\n fate: \"rejected\",\n cause: \"server\",\n code: failure.reason === \"attachment\" ? LEGACY_ATTACHMENT_REFUSED_CODE : `legacy-${failure.reason}`,\n };\n}\n\n/**\n * The held `run/send` a legacy message becomes (re-anchored when it is released). A message\n * whose hand-off had failed keeps its failure (`localMeta.error`): it waits for Retry, Edit or Discard.\n */\nexport function legacyChatOutboxInsert(message: LegacyChatOutboxMessage): StatewireClient.OutboxInsert {\n const agents = legacyAgents(message);\n const metadata =\n agents === undefined && message.metadata === undefined\n ? undefined\n : { ...message.metadata, ...(agents !== undefined && { addressedAgents: agents }) };\n const parts = [\n ...(message.files ?? []).map((file) => ({\n type: \"file\" as const,\n mediaType: file.mediaType,\n url: file.url,\n ...(file.filename !== undefined && { filename: file.filename }),\n })),\n ...(message.text.length > 0 ? [{ type: \"text\" as const, text: message.text }] : []),\n ];\n const localMeta: ChatOutboxLocalMeta = {\n kind: CHAT_OUTBOX_LOCAL_META_KIND,\n threadId: message.threadId,\n queuedAt: message.queuedAt,\n newChat: message.newChat,\n migratedFrom: LEGACY_CHAT_OUTBOX_SOURCE,\n legacyId: message.id,\n ...(message.composerMarkdown !== undefined && { composerMarkdown: message.composerMarkdown }),\n ...(message.composerHtml !== undefined && { composerHtml: message.composerHtml }),\n ...(message.attachments !== undefined && { attachments: message.attachments }),\n ...(message.failure !== undefined && { error: legacyChatOutboxSendFailure(message.failure) }),\n };\n return {\n protocol: DEEP_AGENT_STATEWIRE_PROTOCOL,\n command: {\n method: \"run/send\",\n params: [\n {\n type: \"run/send\",\n behavior: \"auto\",\n runId: newRunId(),\n message: { id: message.id, role: \"user\", parts, ...(metadata !== undefined && { metadata }) },\n },\n ],\n },\n held: true,\n localMeta,\n };\n}\n\n/** The outbox verbs a migration uses (`StatewireClient.Outbox`, structurally). */\nexport interface LegacyMigrationOutbox {\n readonly entries: readonly StatewireClient.OutboxEntry[];\n insert(entry: StatewireClient.OutboxInsert): string;\n}\n\n/** Whether the outbox already holds the legacy message (inserted by an earlier, interrupted run). */\nfunction holdsLegacy(outbox: LegacyMigrationOutbox, message: LegacyChatOutboxMessage): boolean {\n return outbox.entries.some((entry) => {\n const meta = readChatOutboxLocalMeta(entry.localMeta);\n return meta.legacyId === message.id || runSendMessage(entry.command)?.id === message.id;\n });\n}\n\nexport interface MigrateLegacyChatOutboxResult {\n /** Inserted into the thread's outbox by this run. */\n inserted: number;\n /** Legacy records deleted (their message is held on the device). */\n removed: number;\n /** Left in the legacy store: not yet confirmed kept on the device, or a delete that failed. */\n kept: number;\n}\n\n/**\n * Moves the thread's legacy records into its statewire outbox: each becomes a held entry\n * (`insert({ protocol, command, held: true, localMeta: { migratedFrom, legacyId, queuedAt, … } })`)\n * and its record is deleted only once `isKept` confirms the entry is stored on the device (read\n * back from storage, e.g. through `readOutboxes`). Idempotent: an entry already holding the\n * message (an interrupted earlier run, another tab) is not inserted again, and its record is\n * deleted once confirmed. A session kept in page memory only never confirms, so its legacy records\n * stay until the message is sent or discarded ({@link ChatOutboxOptions.legacy}).\n */\nexport async function migrateLegacyChatOutbox({\n threadId,\n reader,\n outbox,\n isKept,\n messageIdsShown,\n}: {\n threadId: string;\n reader: LegacyChatOutboxReader;\n outbox: LegacyMigrationOutbox;\n /** Resolves `true` once the entry carrying `messageId` is stored on the device. */\n isKept: (messageId: string) => Promise<boolean>;\n /** Message ids the thread already shows (delivered before the migration): their records just go. */\n messageIdsShown?: () => ReadonlySet<string>;\n}): Promise<MigrateLegacyChatOutboxResult> {\n const result: MigrateLegacyChatOutboxResult = { inserted: 0, removed: 0, kept: 0 };\n const messages = await reader.list(threadId);\n for (const message of messages) {\n if (message.threadId !== threadId) continue;\n const delivered = messageIdsShown?.().has(message.id) ?? false;\n if (!delivered && !holdsLegacy(outbox, message)) {\n outbox.insert(legacyChatOutboxInsert(message));\n result.inserted += 1;\n }\n let kept = delivered;\n if (!kept) {\n try {\n kept = await isKept(message.id);\n } catch {\n kept = false;\n }\n }\n if (!kept) {\n result.kept += 1;\n continue;\n }\n try {\n await reader.remove(threadId, message.id);\n result.removed += 1;\n } catch {\n result.kept += 1;\n }\n }\n return result;\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const runSend = require("./run-send.cjs");
4
+ function isMessageRunCommand(command) {
5
+ return runSend.MESSAGE_RUN_METHODS.has(command.method) || command.method in runSend.LEGACY_RUN_SEND_BEHAVIORS;
6
+ }
7
+ const IN_LINE_METHODS = /* @__PURE__ */ new Set([...runSend.MESSAGE_RUN_METHODS, "run/reload", "run/continue"]);
8
+ const athenaCanOvertake = (entry) => !IN_LINE_METHODS.has(entry.command.method);
9
+ function createChatOutboxFlushPolicy({
10
+ foreground,
11
+ outbox
12
+ }) {
13
+ return ({ commands, reason }) => {
14
+ if (reason !== "reload" || foreground()) return;
15
+ const target = outbox();
16
+ if (!target) return;
17
+ for (const entry of commands) {
18
+ if (!isMessageRunCommand(entry.command)) continue;
19
+ try {
20
+ target.hold(entry.id);
21
+ } catch {
22
+ }
23
+ }
24
+ };
25
+ }
26
+ exports.MESSAGE_RUN_METHODS = runSend.MESSAGE_RUN_METHODS;
27
+ exports.athenaCanOvertake = athenaCanOvertake;
28
+ exports.createChatOutboxFlushPolicy = createChatOutboxFlushPolicy;
29
+ exports.isMessageRunCommand = isMessageRunCommand;
30
+ //# sourceMappingURL=chat-outbox-policy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-outbox-policy.cjs","sources":["../../../../agent-runtime/src/chat-outbox-policy.ts"],"sourcesContent":["import type { StatewireClient } from \"statewire\";\nimport { LEGACY_RUN_SEND_BEHAVIORS, MESSAGE_RUN_METHODS } from \"./run-send\";\n\n/**\n * How Athena's `athena` lane orders and flushes its outbox (statewire 0.24).\n *\n * - **Ordering** ({@link athenaCanOvertake}): a command that carries a user message (`run/send`,\n * `run/edit`) or starts a turn from the transcript (`run/reload`, `run/continue`)\n * never moves ahead of a held or waiting entry, so nothing typed after a message that waits (to\n * be sent after a countdown, to be asked about, or to be retried) is delivered before it. Every\n * other command (`run/stop`, a tool result, an input reply, a dequeue) passes everything: the\n * person can stop a run or answer it while messages wait.\n * - **Flushing** ({@link createChatOutboxFlushPolicy}): a tab that is not in front never sends a\n * backlog. Message sends a flush offers with reason `\"reload\"` (queued before this page mounted)\n * are held instead; the visible tab's chat outbox counts them down and sends them.\n */\n\nexport { MESSAGE_RUN_METHODS };\n\n/**\n * Whether an outbox entry's command carries a user message, in either contract: a record an\n * earlier build stored still holds `run/enqueue` / `run/steer` until it is next mounted.\n */\nexport function isMessageRunCommand(command: { method: string }): boolean {\n return MESSAGE_RUN_METHODS.has(command.method) || command.method in LEGACY_RUN_SEND_BEHAVIORS;\n}\n\n/** The commands that keep their place in line behind a held or waiting entry. */\nconst IN_LINE_METHODS: ReadonlySet<string> = new Set([...MESSAGE_RUN_METHODS, \"run/reload\", \"run/continue\"]);\n\n/**\n * `canOvertake` for the `athena` protocol: messages (and the turns that re-run the transcript)\n * never pass anything held or waiting; every other command passes everything.\n */\nexport const athenaCanOvertake: StatewireClient.CanOvertake = (entry) => !IN_LINE_METHODS.has(entry.command.method);\n\n/** The outbox verbs the flush policy uses. */\nexport interface ChatOutboxFlushTarget {\n hold(id: string): void;\n}\n\n/**\n * An `onFlush` that holds message sends offered with reason `\"reload\"` while `foreground()` says\n * the app is not in front. Verbs called inside `onFlush` apply before stamping, so a held entry is\n * never sent by this flush. `outbox` is read per flush (the thread's `extras.outbox`, or the\n * client's `outbox`); while it is unavailable nothing is held.\n */\nexport function createChatOutboxFlushPolicy({\n foreground,\n outbox,\n}: {\n foreground: () => boolean;\n outbox: () => ChatOutboxFlushTarget | null | undefined;\n}): StatewireClient.OnFlush {\n return ({ commands, reason }) => {\n if (reason !== \"reload\" || foreground()) return;\n const target = outbox();\n if (!target) return;\n for (const entry of commands) {\n if (!isMessageRunCommand(entry.command)) continue;\n try {\n target.hold(entry.id);\n } catch {\n // An entry another sharer stamped meanwhile is no longer this flush's to hold.\n }\n }\n };\n}\n"],"names":["MESSAGE_RUN_METHODS","LEGACY_RUN_SEND_BEHAVIORS"],"mappings":";;;AAuBO,SAAS,oBAAoB,SAAsC;AACxE,SAAOA,QAAAA,oBAAoB,IAAI,QAAQ,MAAM,KAAK,QAAQ,UAAUC,QAAAA;AACtE;AAGA,MAAM,sCAA2C,IAAI,CAAC,GAAGD,QAAAA,qBAAqB,cAAc,cAAc,CAAC;AAMpG,MAAM,oBAAiD,CAAC,UAAU,CAAC,gBAAgB,IAAI,MAAM,QAAQ,MAAM;AAa3G,SAAS,4BAA4B;AAAA,EAC1C;AAAA,EACA;AACF,GAG4B;AAC1B,SAAO,CAAC,EAAE,UAAU,aAAa;AAC/B,QAAI,WAAW,YAAY,aAAc;AACzC,UAAM,SAAS,OAAA;AACf,QAAI,CAAC,OAAQ;AACb,eAAW,SAAS,UAAU;AAC5B,UAAI,CAAC,oBAAoB,MAAM,OAAO,EAAG;AACzC,UAAI;AACF,eAAO,KAAK,MAAM,EAAE;AAAA,MACtB,QAAQ;AAAA,MAER;AAAA,IACF;AAAA,EACF;AACF;;;;;"}
@@ -0,0 +1,42 @@
1
+ import type { StatewireClient } from "statewire";
2
+ import { MESSAGE_RUN_METHODS } from "./run-send";
3
+ /**
4
+ * How Athena's `athena` lane orders and flushes its outbox (statewire 0.24).
5
+ *
6
+ * - **Ordering** ({@link athenaCanOvertake}): a command that carries a user message (`run/send`,
7
+ * `run/edit`) or starts a turn from the transcript (`run/reload`, `run/continue`)
8
+ * never moves ahead of a held or waiting entry, so nothing typed after a message that waits (to
9
+ * be sent after a countdown, to be asked about, or to be retried) is delivered before it. Every
10
+ * other command (`run/stop`, a tool result, an input reply, a dequeue) passes everything: the
11
+ * person can stop a run or answer it while messages wait.
12
+ * - **Flushing** ({@link createChatOutboxFlushPolicy}): a tab that is not in front never sends a
13
+ * backlog. Message sends a flush offers with reason `"reload"` (queued before this page mounted)
14
+ * are held instead; the visible tab's chat outbox counts them down and sends them.
15
+ */
16
+ export { MESSAGE_RUN_METHODS };
17
+ /**
18
+ * Whether an outbox entry's command carries a user message, in either contract: a record an
19
+ * earlier build stored still holds `run/enqueue` / `run/steer` until it is next mounted.
20
+ */
21
+ export declare function isMessageRunCommand(command: {
22
+ method: string;
23
+ }): boolean;
24
+ /**
25
+ * `canOvertake` for the `athena` protocol: messages (and the turns that re-run the transcript)
26
+ * never pass anything held or waiting; every other command passes everything.
27
+ */
28
+ export declare const athenaCanOvertake: StatewireClient.CanOvertake;
29
+ /** The outbox verbs the flush policy uses. */
30
+ export interface ChatOutboxFlushTarget {
31
+ hold(id: string): void;
32
+ }
33
+ /**
34
+ * An `onFlush` that holds message sends offered with reason `"reload"` while `foreground()` says
35
+ * the app is not in front. Verbs called inside `onFlush` apply before stamping, so a held entry is
36
+ * never sent by this flush. `outbox` is read per flush (the thread's `extras.outbox`, or the
37
+ * client's `outbox`); while it is unavailable nothing is held.
38
+ */
39
+ export declare function createChatOutboxFlushPolicy({ foreground, outbox, }: {
40
+ foreground: () => boolean;
41
+ outbox: () => ChatOutboxFlushTarget | null | undefined;
42
+ }): StatewireClient.OnFlush;
@@ -0,0 +1,30 @@
1
+ import { LEGACY_RUN_SEND_BEHAVIORS, MESSAGE_RUN_METHODS } from "./run-send.js";
2
+ function isMessageRunCommand(command) {
3
+ return MESSAGE_RUN_METHODS.has(command.method) || command.method in LEGACY_RUN_SEND_BEHAVIORS;
4
+ }
5
+ const IN_LINE_METHODS = /* @__PURE__ */ new Set([...MESSAGE_RUN_METHODS, "run/reload", "run/continue"]);
6
+ const athenaCanOvertake = (entry) => !IN_LINE_METHODS.has(entry.command.method);
7
+ function createChatOutboxFlushPolicy({
8
+ foreground,
9
+ outbox
10
+ }) {
11
+ return ({ commands, reason }) => {
12
+ if (reason !== "reload" || foreground()) return;
13
+ const target = outbox();
14
+ if (!target) return;
15
+ for (const entry of commands) {
16
+ if (!isMessageRunCommand(entry.command)) continue;
17
+ try {
18
+ target.hold(entry.id);
19
+ } catch {
20
+ }
21
+ }
22
+ };
23
+ }
24
+ export {
25
+ MESSAGE_RUN_METHODS,
26
+ athenaCanOvertake,
27
+ createChatOutboxFlushPolicy,
28
+ isMessageRunCommand
29
+ };
30
+ //# sourceMappingURL=chat-outbox-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-outbox-policy.js","sources":["../../../../agent-runtime/src/chat-outbox-policy.ts"],"sourcesContent":["import type { StatewireClient } from \"statewire\";\nimport { LEGACY_RUN_SEND_BEHAVIORS, MESSAGE_RUN_METHODS } from \"./run-send\";\n\n/**\n * How Athena's `athena` lane orders and flushes its outbox (statewire 0.24).\n *\n * - **Ordering** ({@link athenaCanOvertake}): a command that carries a user message (`run/send`,\n * `run/edit`) or starts a turn from the transcript (`run/reload`, `run/continue`)\n * never moves ahead of a held or waiting entry, so nothing typed after a message that waits (to\n * be sent after a countdown, to be asked about, or to be retried) is delivered before it. Every\n * other command (`run/stop`, a tool result, an input reply, a dequeue) passes everything: the\n * person can stop a run or answer it while messages wait.\n * - **Flushing** ({@link createChatOutboxFlushPolicy}): a tab that is not in front never sends a\n * backlog. Message sends a flush offers with reason `\"reload\"` (queued before this page mounted)\n * are held instead; the visible tab's chat outbox counts them down and sends them.\n */\n\nexport { MESSAGE_RUN_METHODS };\n\n/**\n * Whether an outbox entry's command carries a user message, in either contract: a record an\n * earlier build stored still holds `run/enqueue` / `run/steer` until it is next mounted.\n */\nexport function isMessageRunCommand(command: { method: string }): boolean {\n return MESSAGE_RUN_METHODS.has(command.method) || command.method in LEGACY_RUN_SEND_BEHAVIORS;\n}\n\n/** The commands that keep their place in line behind a held or waiting entry. */\nconst IN_LINE_METHODS: ReadonlySet<string> = new Set([...MESSAGE_RUN_METHODS, \"run/reload\", \"run/continue\"]);\n\n/**\n * `canOvertake` for the `athena` protocol: messages (and the turns that re-run the transcript)\n * never pass anything held or waiting; every other command passes everything.\n */\nexport const athenaCanOvertake: StatewireClient.CanOvertake = (entry) => !IN_LINE_METHODS.has(entry.command.method);\n\n/** The outbox verbs the flush policy uses. */\nexport interface ChatOutboxFlushTarget {\n hold(id: string): void;\n}\n\n/**\n * An `onFlush` that holds message sends offered with reason `\"reload\"` while `foreground()` says\n * the app is not in front. Verbs called inside `onFlush` apply before stamping, so a held entry is\n * never sent by this flush. `outbox` is read per flush (the thread's `extras.outbox`, or the\n * client's `outbox`); while it is unavailable nothing is held.\n */\nexport function createChatOutboxFlushPolicy({\n foreground,\n outbox,\n}: {\n foreground: () => boolean;\n outbox: () => ChatOutboxFlushTarget | null | undefined;\n}): StatewireClient.OnFlush {\n return ({ commands, reason }) => {\n if (reason !== \"reload\" || foreground()) return;\n const target = outbox();\n if (!target) return;\n for (const entry of commands) {\n if (!isMessageRunCommand(entry.command)) continue;\n try {\n target.hold(entry.id);\n } catch {\n // An entry another sharer stamped meanwhile is no longer this flush's to hold.\n }\n }\n };\n}\n"],"names":[],"mappings":";AAuBO,SAAS,oBAAoB,SAAsC;AACxE,SAAO,oBAAoB,IAAI,QAAQ,MAAM,KAAK,QAAQ,UAAU;AACtE;AAGA,MAAM,sCAA2C,IAAI,CAAC,GAAG,qBAAqB,cAAc,cAAc,CAAC;AAMpG,MAAM,oBAAiD,CAAC,UAAU,CAAC,gBAAgB,IAAI,MAAM,QAAQ,MAAM;AAa3G,SAAS,4BAA4B;AAAA,EAC1C;AAAA,EACA;AACF,GAG4B;AAC1B,SAAO,CAAC,EAAE,UAAU,aAAa;AAC/B,QAAI,WAAW,YAAY,aAAc;AACzC,UAAM,SAAS,OAAA;AACf,QAAI,CAAC,OAAQ;AACb,eAAW,SAAS,UAAU;AAC5B,UAAI,CAAC,oBAAoB,MAAM,OAAO,EAAG;AACzC,UAAI;AACF,eAAO,KAAK,MAAM,EAAE;AAAA,MACtB,QAAQ;AAAA,MAER;AAAA,IACF;AAAA,EACF;AACF;"}