effect-agent 0.1.0-beta.85 → 0.1.0-beta.86

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 (751) hide show
  1. package/dist/Agent-CN0EWRsR.d.mts +226 -0
  2. package/dist/Agent-RklVROrm.mjs +83 -0
  3. package/dist/Agent-RklVROrm.mjs.map +1 -0
  4. package/dist/AgentError-CggcAQ7V.d.mts +101 -0
  5. package/dist/AgentPolicy-CetmQrf3.d.mts +96 -0
  6. package/dist/AgentRuntime-BLyETCPo.mjs +4562 -0
  7. package/dist/AgentRuntime-BLyETCPo.mjs.map +1 -0
  8. package/dist/AgentRuntime-uxR_a4VM.d.mts +346 -0
  9. package/dist/AgentUpdates-DMJ-_xow.d.mts +53 -0
  10. package/dist/ContextCompactor-Dxu5zhOL.d.mts +161 -0
  11. package/dist/ContextWindow-DRQ5Mbm2.d.mts +58 -0
  12. package/dist/DurableAgentRuntime-sOrBVu4B.mjs +6366 -0
  13. package/dist/DurableAgentRuntime-sOrBVu4B.mjs.map +1 -0
  14. package/dist/DurableFailpoint-Oinuuedm.d.mts +41 -0
  15. package/dist/DurableStep-Cry_iol4.d.mts +103 -0
  16. package/dist/Ephemeral.d.mts +22 -0
  17. package/dist/Ephemeral.mjs +22 -0
  18. package/dist/Ephemeral.mjs.map +1 -0
  19. package/dist/EventSource-OqS_P9ug.d.mts +51 -0
  20. package/dist/Identifiers-CN2s30fF.d.mts +40 -0
  21. package/dist/MemoryNamespace-BbRW5p71.d.mts +36 -0
  22. package/dist/MemoryReference-B8Q3UJoJ.d.mts +79 -0
  23. package/dist/Messaging-CkcIdt4I.d.mts +490 -0
  24. package/dist/MessagingHost-CRk0kXzT.d.mts +246 -0
  25. package/dist/MessagingHost-CWi_PP3g.mjs +137 -0
  26. package/dist/MessagingHost-CWi_PP3g.mjs.map +1 -0
  27. package/dist/OperationAuthorizer-TzcQtpX5.d.mts +61 -0
  28. package/dist/Output-D6SkedVx.d.mts +25 -0
  29. package/dist/PageCapture-Df8Xwskw.d.mts +583 -0
  30. package/dist/PageScreenshot-BpgZKAxl.d.mts +48 -0
  31. package/dist/PreparedInputAdmission-C4HbjHgl.d.mts +38 -0
  32. package/dist/Receipt-BAHyigAF.d.mts +33 -0
  33. package/dist/Records-BAGkekt8.d.mts +3570 -0
  34. package/dist/RunEvent-DIrzkjLr.d.mts +460 -0
  35. package/dist/RunEventSink-D5aVhISG.d.mts +108 -0
  36. package/dist/RunJournal-Cgg1kNvc.mjs +825 -0
  37. package/dist/RunJournal-Cgg1kNvc.mjs.map +1 -0
  38. package/dist/RunOptions-g1aigcKI.d.mts +915 -0
  39. package/dist/RunPolicyUsage-ClZxyR46.d.mts +21 -0
  40. package/dist/Sandbox-CEsDWBLq.d.mts +173 -0
  41. package/dist/Schedule-H3SEYX9g.d.mts +842 -0
  42. package/dist/Scheduling-C9aIP8zT.mjs +691 -0
  43. package/dist/Scheduling-C9aIP8zT.mjs.map +1 -0
  44. package/dist/Subagent-Cy_hU1tv.mjs +1469 -0
  45. package/dist/Subagent-Cy_hU1tv.mjs.map +1 -0
  46. package/dist/Subagent-DyfzHNdv.d.mts +826 -0
  47. package/dist/SubagentContract-DdT7Cqe6.d.mts +116 -0
  48. package/dist/SubagentHost-CJUBQlcc.d.mts +140 -0
  49. package/dist/Subscription-BEP8oQO5.d.mts +921 -0
  50. package/dist/SubscriptionInput-vAAOBrK7.d.mts +41 -0
  51. package/dist/Thread-DOBQ0QUY.d.mts +96 -0
  52. package/dist/ThreadHistory-tS1KwxHR.d.mts +60 -0
  53. package/dist/ToolBroker-DWs4tZra.d.mts +133 -0
  54. package/dist/ToolExposure-9uF_Yo0T.mjs +10 -0
  55. package/dist/ToolExposure-9uF_Yo0T.mjs.map +1 -0
  56. package/dist/ToolExposure-C93U1sPu.mjs +30 -0
  57. package/dist/ToolExposure-C93U1sPu.mjs.map +1 -0
  58. package/dist/ToolExposure-UCN12eCd.d.mts +39 -0
  59. package/dist/ToolExposure-r2eOWk4F.d.mts +46 -0
  60. package/dist/ToolExposure.d.mts +6 -5
  61. package/dist/ToolExposure.mjs +17 -9
  62. package/dist/ToolExposure.mjs.map +1 -1
  63. package/dist/ToolReconciler-DQVaJfpE.d.mts +76 -0
  64. package/dist/ToolResult-DmmgoChv.d.mts +61 -0
  65. package/dist/Usage-Dx0aknfk.d.mts +121 -0
  66. package/dist/WakeScheduler-EjUF-GhC.d.mts +56 -0
  67. package/dist/Worker-CaPYykpe.d.mts +228 -0
  68. package/dist/agent-registration-CWDMOAZA.mjs +172 -0
  69. package/dist/agent-registration-CWDMOAZA.mjs.map +1 -0
  70. package/dist/capabilities/Approval.d.mts +114 -0
  71. package/dist/capabilities/Approval.mjs +226 -0
  72. package/dist/capabilities/Approval.mjs.map +1 -0
  73. package/dist/capabilities/Budget.d.mts +112 -0
  74. package/dist/capabilities/Budget.mjs +346 -0
  75. package/dist/capabilities/Budget.mjs.map +1 -0
  76. package/dist/capabilities/CodeMode.d.mts +157 -0
  77. package/dist/capabilities/CodeMode.mjs +522 -0
  78. package/dist/capabilities/CodeMode.mjs.map +1 -0
  79. package/dist/capabilities/Commands.d.mts +55 -0
  80. package/dist/capabilities/Commands.mjs +57 -0
  81. package/dist/capabilities/Commands.mjs.map +1 -0
  82. package/dist/capabilities/ContextTools.d.mts +321 -0
  83. package/dist/capabilities/ContextTools.mjs +126 -0
  84. package/dist/capabilities/ContextTools.mjs.map +1 -0
  85. package/dist/capabilities/Mcp.d.mts +108 -0
  86. package/dist/capabilities/Mcp.mjs +260 -0
  87. package/dist/capabilities/Mcp.mjs.map +1 -0
  88. package/dist/capabilities/McpClient.d.mts +115 -0
  89. package/dist/capabilities/McpClient.mjs +506 -0
  90. package/dist/capabilities/McpClient.mjs.map +1 -0
  91. package/dist/capabilities/MemoryNotes.d.mts +424 -0
  92. package/dist/capabilities/MemoryNotes.mjs +128 -0
  93. package/dist/capabilities/MemoryNotes.mjs.map +1 -0
  94. package/dist/capabilities/Messaging.d.mts +3 -0
  95. package/dist/capabilities/Messaging.mjs +151 -0
  96. package/dist/capabilities/Messaging.mjs.map +1 -0
  97. package/dist/capabilities/ModelContext.d.mts +89 -0
  98. package/dist/capabilities/ModelContext.mjs +168 -0
  99. package/dist/capabilities/ModelContext.mjs.map +1 -0
  100. package/dist/capabilities/Redaction.d.mts +37 -0
  101. package/dist/capabilities/Redaction.mjs +104 -0
  102. package/dist/capabilities/Redaction.mjs.map +1 -0
  103. package/dist/capabilities/Remembering.d.mts +434 -0
  104. package/dist/capabilities/Remembering.mjs +290 -0
  105. package/dist/capabilities/Remembering.mjs.map +1 -0
  106. package/dist/capabilities/RunHooks.d.mts +82 -0
  107. package/dist/capabilities/RunHooks.mjs +144 -0
  108. package/dist/capabilities/RunHooks.mjs.map +1 -0
  109. package/dist/capabilities/SemanticMemory.d.mts +431 -0
  110. package/dist/capabilities/SemanticMemory.mjs +315 -0
  111. package/dist/capabilities/SemanticMemory.mjs.map +1 -0
  112. package/dist/capabilities/Subagent.d.mts +4 -0
  113. package/dist/capabilities/Subagent.mjs +5 -0
  114. package/dist/capabilities/SubagentReservations.d.mts +186 -0
  115. package/dist/capabilities/SubagentReservations.mjs +479 -0
  116. package/dist/capabilities/SubagentReservations.mjs.map +1 -0
  117. package/dist/capabilities/ToolDiscovery.d.mts +109 -0
  118. package/dist/capabilities/ToolDiscovery.mjs +211 -0
  119. package/dist/capabilities/ToolDiscovery.mjs.map +1 -0
  120. package/dist/capabilities/WebCapture.d.mts +163 -0
  121. package/dist/capabilities/WebCapture.mjs +335 -0
  122. package/dist/capabilities/WebCapture.mjs.map +1 -0
  123. package/dist/capabilities/WebSearch.d.mts +71 -0
  124. package/dist/capabilities/WebSearch.mjs +112 -0
  125. package/dist/capabilities/WebSearch.mjs.map +1 -0
  126. package/dist/compaction-C2OTceKw.mjs +505 -0
  127. package/dist/compaction-C2OTceKw.mjs.map +1 -0
  128. package/dist/core/Agent.d.mts +2 -0
  129. package/dist/core/Agent.mjs +2 -0
  130. package/dist/core/AgentError.d.mts +2 -0
  131. package/dist/core/AgentError.mjs +117 -0
  132. package/dist/core/AgentError.mjs.map +1 -0
  133. package/dist/core/AgentPolicy.d.mts +2 -0
  134. package/dist/core/AgentPolicy.mjs +94 -0
  135. package/dist/core/AgentPolicy.mjs.map +1 -0
  136. package/dist/core/AgentUpdates.d.mts +2 -0
  137. package/dist/core/AgentUpdates.mjs +63 -0
  138. package/dist/core/AgentUpdates.mjs.map +1 -0
  139. package/dist/core/IdGenerator.d.mts +26 -0
  140. package/dist/core/IdGenerator.mjs +27 -0
  141. package/dist/core/IdGenerator.mjs.map +1 -0
  142. package/dist/core/Identifiers.d.mts +2 -0
  143. package/dist/core/Identifiers.mjs +43 -0
  144. package/dist/core/Identifiers.mjs.map +1 -0
  145. package/dist/core/Memory.d.mts +57 -0
  146. package/dist/core/Memory.mjs +203 -0
  147. package/dist/core/Memory.mjs.map +1 -0
  148. package/dist/core/MemoryNamespace.d.mts +2 -0
  149. package/dist/core/MemoryNamespace.mjs +116 -0
  150. package/dist/core/MemoryNamespace.mjs.map +1 -0
  151. package/dist/core/MemoryReference.d.mts +2 -0
  152. package/dist/core/MemoryReference.mjs +109 -0
  153. package/dist/core/MemoryReference.mjs.map +1 -0
  154. package/dist/core/MemoryRevalidation.d.mts +65 -0
  155. package/dist/core/MemoryRevalidation.mjs +126 -0
  156. package/dist/core/MemoryRevalidation.mjs.map +1 -0
  157. package/dist/core/MemoryStore.d.mts +186 -0
  158. package/dist/core/MemoryStore.mjs +243 -0
  159. package/dist/core/MemoryStore.mjs.map +1 -0
  160. package/dist/core/Receipt.d.mts +2 -0
  161. package/dist/core/Receipt.mjs +36 -0
  162. package/dist/core/Receipt.mjs.map +1 -0
  163. package/dist/core/RememberingStore.d.mts +1562 -0
  164. package/dist/core/RememberingStore.mjs +190 -0
  165. package/dist/core/RememberingStore.mjs.map +1 -0
  166. package/dist/core/RunEvent.d.mts +2 -0
  167. package/dist/core/RunEvent.mjs +337 -0
  168. package/dist/core/RunEvent.mjs.map +1 -0
  169. package/dist/core/RunPolicyUsage.d.mts +2 -0
  170. package/dist/core/RunPolicyUsage.mjs +21 -0
  171. package/dist/core/RunPolicyUsage.mjs.map +1 -0
  172. package/dist/core/SemanticMemoryIndex.d.mts +826 -0
  173. package/dist/core/SemanticMemoryIndex.mjs +185 -0
  174. package/dist/core/SemanticMemoryIndex.mjs.map +1 -0
  175. package/dist/core/SemanticMemoryRevalidation.d.mts +45 -0
  176. package/dist/core/SemanticMemoryRevalidation.mjs +191 -0
  177. package/dist/core/SemanticMemoryRevalidation.mjs.map +1 -0
  178. package/dist/core/SubagentContract.d.mts +2 -0
  179. package/dist/core/SubagentContract.mjs +148 -0
  180. package/dist/core/SubagentContract.mjs.map +1 -0
  181. package/dist/core/Thread.d.mts +2 -0
  182. package/dist/core/Thread.mjs +250 -0
  183. package/dist/core/Thread.mjs.map +1 -0
  184. package/dist/core/ToolResult.d.mts +2 -0
  185. package/dist/core/ToolResult.mjs +140 -0
  186. package/dist/core/ToolResult.mjs.map +1 -0
  187. package/dist/core/Usage.d.mts +2 -0
  188. package/dist/core/Usage.mjs +319 -0
  189. package/dist/core/Usage.mjs.map +1 -0
  190. package/dist/core/Worker.d.mts +3 -0
  191. package/dist/core/Worker.mjs +147 -0
  192. package/dist/core/Worker.mjs.map +1 -0
  193. package/dist/durable/ActivityStore.d.mts +116 -0
  194. package/dist/durable/ActivityStore.mjs +131 -0
  195. package/dist/durable/ActivityStore.mjs.map +1 -0
  196. package/dist/durable/Admin.d.mts +2 -0
  197. package/dist/durable/Admin.mjs +328 -0
  198. package/dist/durable/Admin.mjs.map +1 -0
  199. package/dist/durable/AgentRegistration.d.mts +2 -0
  200. package/dist/durable/AgentRegistration.mjs +14 -0
  201. package/dist/durable/AgentRegistration.mjs.map +1 -0
  202. package/dist/durable/Certification.d.mts +111 -0
  203. package/dist/durable/Certification.mjs +159 -0
  204. package/dist/durable/Certification.mjs.map +1 -0
  205. package/dist/durable/CommittedActivity.d.mts +62 -0
  206. package/dist/durable/CommittedActivity.mjs +159 -0
  207. package/dist/durable/CommittedActivity.mjs.map +1 -0
  208. package/dist/durable/Digest.d.mts +2 -0
  209. package/dist/durable/Digest.mjs +50 -0
  210. package/dist/durable/Digest.mjs.map +1 -0
  211. package/dist/durable/DurableAgentRuntime.d.mts +3 -0
  212. package/dist/durable/DurableAgentRuntime.mjs +3 -0
  213. package/dist/durable/DurableFailpoint.d.mts +2 -0
  214. package/dist/durable/DurableFailpoint.mjs +94 -0
  215. package/dist/durable/DurableFailpoint.mjs.map +1 -0
  216. package/dist/durable/DurableFailpointTestControl.d.mts +15 -0
  217. package/dist/durable/DurableFailpointTestControl.mjs +19 -0
  218. package/dist/durable/DurableFailpointTestControl.mjs.map +1 -0
  219. package/dist/durable/EventSource.d.mts +2 -0
  220. package/dist/durable/EventSource.mjs +65 -0
  221. package/dist/durable/EventSource.mjs.map +1 -0
  222. package/dist/durable/GitHubWorkflowSource.d.mts +144 -0
  223. package/dist/durable/GitHubWorkflowSource.mjs +209 -0
  224. package/dist/durable/GitHubWorkflowSource.mjs.map +1 -0
  225. package/dist/durable/MessageDelivery.d.mts +492 -0
  226. package/dist/durable/MessageDelivery.mjs +495 -0
  227. package/dist/durable/MessageDelivery.mjs.map +1 -0
  228. package/dist/durable/MessageDeliveryStoreConformance.d.mts +358 -0
  229. package/dist/durable/MessageDeliveryStoreConformance.mjs +243 -0
  230. package/dist/durable/MessageDeliveryStoreConformance.mjs.map +1 -0
  231. package/dist/durable/OperationAuthorizer.d.mts +2 -0
  232. package/dist/durable/OperationAuthorizer.mjs +70 -0
  233. package/dist/durable/OperationAuthorizer.mjs.map +1 -0
  234. package/dist/durable/PersistentHistory.d.mts +16 -0
  235. package/dist/durable/PersistentHistory.mjs +125 -0
  236. package/dist/durable/PersistentHistory.mjs.map +1 -0
  237. package/dist/durable/PreparedInputAdmission.d.mts +2 -0
  238. package/dist/durable/PreparedInputAdmission.mjs +34 -0
  239. package/dist/durable/PreparedInputAdmission.mjs.map +1 -0
  240. package/dist/durable/Records.d.mts +2 -0
  241. package/dist/durable/Records.mjs +795 -0
  242. package/dist/durable/Records.mjs.map +1 -0
  243. package/dist/durable/Recovery.d.mts +2 -0
  244. package/dist/durable/Recovery.mjs +739 -0
  245. package/dist/durable/Recovery.mjs.map +1 -0
  246. package/dist/durable/RunJournal.d.mts +2 -0
  247. package/dist/durable/RunJournal.mjs +2 -0
  248. package/dist/durable/Schedule.d.mts +2 -0
  249. package/dist/durable/Schedule.mjs +382 -0
  250. package/dist/durable/Schedule.mjs.map +1 -0
  251. package/dist/durable/ScheduleStoreConformance.d.mts +18 -0
  252. package/dist/durable/ScheduleStoreConformance.mjs +420 -0
  253. package/dist/durable/ScheduleStoreConformance.mjs.map +1 -0
  254. package/dist/durable/ScheduleTransition.d.mts +24 -0
  255. package/dist/durable/ScheduleTransition.mjs +180 -0
  256. package/dist/durable/ScheduleTransition.mjs.map +1 -0
  257. package/dist/durable/Scheduling.d.mts +54 -0
  258. package/dist/durable/Scheduling.mjs +2 -0
  259. package/dist/durable/SqlMemoryStore.d.mts +30 -0
  260. package/dist/durable/SqlMemoryStore.mjs +435 -0
  261. package/dist/durable/SqlMemoryStore.mjs.map +1 -0
  262. package/dist/durable/SqlMessageDeliveryStore.d.mts +40 -0
  263. package/dist/durable/SqlMessageDeliveryStore.mjs +167 -0
  264. package/dist/durable/SqlMessageDeliveryStore.mjs.map +1 -0
  265. package/dist/durable/SqlStorageV2Upgrade.d.mts +22 -0
  266. package/dist/durable/SqlStorageV2Upgrade.mjs +459 -0
  267. package/dist/durable/SqlStorageV2Upgrade.mjs.map +1 -0
  268. package/dist/durable/SqlSubscriptionStore.d.mts +63 -0
  269. package/dist/durable/SqlSubscriptionStore.mjs +751 -0
  270. package/dist/durable/SqlSubscriptionStore.mjs.map +1 -0
  271. package/dist/durable/SubmissionLedger.d.mts +3 -0
  272. package/dist/durable/SubmissionLedger.mjs +914 -0
  273. package/dist/durable/SubmissionLedger.mjs.map +1 -0
  274. package/dist/durable/SubmissionLedgerConformance.d.mts +30 -0
  275. package/dist/durable/SubmissionLedgerConformance.mjs +1986 -0
  276. package/dist/durable/SubmissionLedgerConformance.mjs.map +1 -0
  277. package/dist/durable/SubmissionStatus.d.mts +2 -0
  278. package/dist/durable/SubmissionStatus.mjs +18 -0
  279. package/dist/durable/SubmissionStatus.mjs.map +1 -0
  280. package/dist/durable/Subscription.d.mts +2 -0
  281. package/dist/durable/Subscription.mjs +360 -0
  282. package/dist/durable/Subscription.mjs.map +1 -0
  283. package/dist/durable/SubscriptionInput.d.mts +2 -0
  284. package/dist/durable/SubscriptionInput.mjs +52 -0
  285. package/dist/durable/SubscriptionInput.mjs.map +1 -0
  286. package/dist/durable/SubscriptionStoreConformance.d.mts +17 -0
  287. package/dist/durable/SubscriptionStoreConformance.mjs +625 -0
  288. package/dist/durable/SubscriptionStoreConformance.mjs.map +1 -0
  289. package/dist/durable/SubscriptionTools.d.mts +273 -0
  290. package/dist/durable/SubscriptionTools.mjs +190 -0
  291. package/dist/durable/SubscriptionTools.mjs.map +1 -0
  292. package/dist/durable/SubscriptionTransition.d.mts +21 -0
  293. package/dist/durable/SubscriptionTransition.mjs +148 -0
  294. package/dist/durable/SubscriptionTransition.mjs.map +1 -0
  295. package/dist/durable/Subscriptions.d.mts +73 -0
  296. package/dist/durable/Subscriptions.mjs +627 -0
  297. package/dist/durable/Subscriptions.mjs.map +1 -0
  298. package/dist/durable/ThreadContextHistory.d.mts +32 -0
  299. package/dist/durable/ThreadContextHistory.mjs +152 -0
  300. package/dist/durable/ThreadContextHistory.mjs.map +1 -0
  301. package/dist/durable/ThreadContextHistoryProjection.d.mts +60 -0
  302. package/dist/durable/ThreadContextHistoryProjection.mjs +149 -0
  303. package/dist/durable/ThreadContextHistoryProjection.mjs.map +1 -0
  304. package/dist/durable/ThreadInvariants.d.mts +74 -0
  305. package/dist/durable/ThreadInvariants.mjs +200 -0
  306. package/dist/durable/ThreadInvariants.mjs.map +1 -0
  307. package/dist/durable/ThreadProjection.d.mts +78 -0
  308. package/dist/durable/ThreadProjection.mjs +158 -0
  309. package/dist/durable/ThreadProjection.mjs.map +1 -0
  310. package/dist/durable/ThreadProjectionMaintenance.d.mts +49 -0
  311. package/dist/durable/ThreadProjectionMaintenance.mjs +33 -0
  312. package/dist/durable/ThreadProjectionMaintenance.mjs.map +1 -0
  313. package/dist/durable/ThreadStore.d.mts +2 -0
  314. package/dist/durable/ThreadStore.mjs +147 -0
  315. package/dist/durable/ThreadStore.mjs.map +1 -0
  316. package/dist/durable/ThreadStoreConformance.d.mts +29 -0
  317. package/dist/durable/ThreadStoreConformance.mjs +248 -0
  318. package/dist/durable/ThreadStoreConformance.mjs.map +1 -0
  319. package/dist/durable/ToolReconciler.d.mts +2 -0
  320. package/dist/durable/ToolReconciler.mjs +81 -0
  321. package/dist/durable/ToolReconciler.mjs.map +1 -0
  322. package/dist/durable/WakeScheduler.d.mts +2 -0
  323. package/dist/durable/WakeScheduler.mjs +85 -0
  324. package/dist/durable/WakeScheduler.mjs.map +1 -0
  325. package/dist/durable/WorkerHost.d.mts +129 -0
  326. package/dist/durable/WorkerHost.mjs +77 -0
  327. package/dist/durable/WorkerHost.mjs.map +1 -0
  328. package/dist/engine/AgentRuntime.d.mts +2 -0
  329. package/dist/engine/AgentRuntime.mjs +2 -0
  330. package/dist/engine/Compaction.d.mts +7 -0
  331. package/dist/engine/Compaction.mjs +16 -0
  332. package/dist/engine/Compaction.mjs.map +1 -0
  333. package/dist/engine/ContextCompactor.d.mts +2 -0
  334. package/dist/engine/ContextCompactor.mjs +119 -0
  335. package/dist/engine/ContextCompactor.mjs.map +1 -0
  336. package/dist/engine/ContextHistory.d.mts +65 -0
  337. package/dist/engine/ContextHistory.mjs +76 -0
  338. package/dist/engine/ContextHistory.mjs.map +1 -0
  339. package/dist/engine/ContextWindow.d.mts +2 -0
  340. package/dist/engine/ContextWindow.mjs +59 -0
  341. package/dist/engine/ContextWindow.mjs.map +1 -0
  342. package/dist/engine/DurableStep.d.mts +2 -0
  343. package/dist/engine/DurableStep.mjs +62 -0
  344. package/dist/engine/DurableStep.mjs.map +1 -0
  345. package/dist/engine/MessagingHost.d.mts +2 -0
  346. package/dist/engine/MessagingHost.mjs +2 -0
  347. package/dist/engine/Output.d.mts +2 -0
  348. package/dist/engine/Output.mjs +8 -0
  349. package/dist/engine/Output.mjs.map +1 -0
  350. package/dist/engine/RunEventSink.d.mts +2 -0
  351. package/dist/engine/RunEventSink.mjs +22 -0
  352. package/dist/engine/RunEventSink.mjs.map +1 -0
  353. package/dist/engine/RunOptions.d.mts +2 -0
  354. package/dist/engine/RunOptions.mjs +122 -0
  355. package/dist/engine/RunOptions.mjs.map +1 -0
  356. package/dist/engine/SubagentHost.d.mts +2 -0
  357. package/dist/engine/SubagentHost.mjs +72 -0
  358. package/dist/engine/SubagentHost.mjs.map +1 -0
  359. package/dist/engine/ThreadHistory.d.mts +2 -0
  360. package/dist/engine/ThreadHistory.mjs +67 -0
  361. package/dist/engine/ThreadHistory.mjs.map +1 -0
  362. package/dist/engine/ToolBroker.d.mts +2 -0
  363. package/dist/engine/ToolBroker.mjs +42 -0
  364. package/dist/engine/ToolBroker.mjs.map +1 -0
  365. package/dist/foreign-diagnostic-DBQ1XHKh.mjs +37 -0
  366. package/dist/foreign-diagnostic-DBQ1XHKh.mjs.map +1 -0
  367. package/dist/index.d.mts +88 -54
  368. package/dist/index.mjs +97 -54
  369. package/dist/output-contract-BC7tjlGw.mjs +84 -0
  370. package/dist/output-contract-BC7tjlGw.mjs.map +1 -0
  371. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  372. package/dist/sandbox/CodeExecutor.d.mts +194 -0
  373. package/dist/sandbox/CodeExecutor.mjs +278 -0
  374. package/dist/sandbox/CodeExecutor.mjs.map +1 -0
  375. package/dist/sandbox/InteractiveBrowser.d.mts +142 -0
  376. package/dist/sandbox/InteractiveBrowser.mjs +165 -0
  377. package/dist/sandbox/InteractiveBrowser.mjs.map +1 -0
  378. package/dist/sandbox/PageCapture.d.mts +2 -0
  379. package/dist/sandbox/PageCapture.mjs +450 -0
  380. package/dist/sandbox/PageCapture.mjs.map +1 -0
  381. package/dist/sandbox/PageCrawl.d.mts +88 -0
  382. package/dist/sandbox/PageCrawl.mjs +124 -0
  383. package/dist/sandbox/PageCrawl.mjs.map +1 -0
  384. package/dist/sandbox/PageScreenshot.d.mts +2 -0
  385. package/dist/sandbox/PageScreenshot.mjs +53 -0
  386. package/dist/sandbox/PageScreenshot.mjs.map +1 -0
  387. package/dist/sandbox/ProtectedBrowser.d.mts +252 -0
  388. package/dist/sandbox/ProtectedBrowser.mjs +270 -0
  389. package/dist/sandbox/ProtectedBrowser.mjs.map +1 -0
  390. package/dist/sandbox/Sandbox.d.mts +2 -0
  391. package/dist/sandbox/Sandbox.mjs +208 -0
  392. package/dist/sandbox/Sandbox.mjs.map +1 -0
  393. package/dist/utf8-BYfhEkcj.mjs +11 -0
  394. package/dist/utf8-BYfhEkcj.mjs.map +1 -0
  395. package/dist/utf8-DchGZRBd.mjs +23 -0
  396. package/dist/utf8-DchGZRBd.mjs.map +1 -0
  397. package/package.json +1 -1
  398. package/src/Ephemeral.ts +17 -0
  399. package/src/ToolExposure.ts +2 -2
  400. package/src/capabilities/Approval.ts +352 -0
  401. package/src/capabilities/Budget.ts +536 -0
  402. package/src/capabilities/CodeMode.ts +1090 -0
  403. package/src/capabilities/Commands.ts +86 -0
  404. package/src/capabilities/ContextTools.ts +184 -0
  405. package/src/capabilities/Mcp.ts +427 -0
  406. package/src/capabilities/McpClient.ts +967 -0
  407. package/src/capabilities/MemoryNotes.ts +174 -0
  408. package/src/capabilities/Messaging.ts +261 -0
  409. package/src/capabilities/ModelContext.ts +354 -0
  410. package/src/capabilities/Redaction.ts +157 -0
  411. package/src/capabilities/Remembering.ts +550 -0
  412. package/src/capabilities/RunHooks.ts +280 -0
  413. package/src/capabilities/SemanticMemory.ts +447 -0
  414. package/src/capabilities/Subagent.ts +2277 -0
  415. package/src/capabilities/SubagentReservations.ts +850 -0
  416. package/src/capabilities/ToolDiscovery.ts +339 -0
  417. package/src/capabilities/WebCapture.ts +722 -0
  418. package/src/capabilities/WebSearch.ts +184 -0
  419. package/src/capabilities/internal/subagent-background.ts +1106 -0
  420. package/src/capabilities/internal/subagent-contract.ts +142 -0
  421. package/src/capabilities/internal/subagent-policy.ts +235 -0
  422. package/src/capabilities/internal/subagent-reporting.ts +261 -0
  423. package/src/capabilities/internal/utf8.ts +10 -0
  424. package/src/core/Agent.ts +575 -0
  425. package/src/core/AgentError.ts +152 -0
  426. package/src/core/AgentPolicy.ts +153 -0
  427. package/src/core/AgentUpdates.ts +100 -0
  428. package/src/core/IdGenerator.ts +39 -0
  429. package/src/core/Identifiers.ts +48 -0
  430. package/src/core/Memory.ts +290 -0
  431. package/src/core/MemoryNamespace.ts +196 -0
  432. package/src/core/MemoryReference.ts +121 -0
  433. package/src/core/MemoryRevalidation.ts +185 -0
  434. package/src/core/MemoryStore.ts +368 -0
  435. package/src/core/Messaging.ts +90 -0
  436. package/src/core/Receipt.ts +42 -0
  437. package/src/core/RememberingStore.ts +300 -0
  438. package/src/core/RunEvent.ts +366 -0
  439. package/src/core/RunPolicyUsage.ts +17 -0
  440. package/src/core/SemanticMemoryIndex.ts +250 -0
  441. package/src/core/SemanticMemoryRevalidation.ts +254 -0
  442. package/src/core/SubagentContract.ts +196 -0
  443. package/src/core/Thread.ts +371 -0
  444. package/src/core/ToolExposure.ts +74 -0
  445. package/src/core/ToolResult.ts +170 -0
  446. package/src/core/Usage.ts +529 -0
  447. package/src/core/Worker.ts +173 -0
  448. package/src/core/internal/agent-updates.ts +32 -0
  449. package/src/core/internal/utf8.ts +23 -0
  450. package/src/durable/ActivityStore.ts +160 -0
  451. package/src/durable/Admin.ts +496 -0
  452. package/src/durable/AgentRegistration.ts +13 -0
  453. package/src/durable/Certification.ts +210 -0
  454. package/src/durable/CommittedActivity.ts +296 -0
  455. package/src/durable/Digest.ts +93 -0
  456. package/src/durable/DurableAgentRuntime.ts +10328 -0
  457. package/src/durable/DurableFailpoint.ts +103 -0
  458. package/src/durable/DurableFailpointTestControl.ts +39 -0
  459. package/src/durable/EventSource.ts +172 -0
  460. package/src/durable/GitHubWorkflowSource.ts +453 -0
  461. package/src/durable/MessageDelivery.ts +708 -0
  462. package/src/durable/MessageDeliveryStoreConformance.ts +363 -0
  463. package/src/durable/OperationAuthorizer.ts +85 -0
  464. package/src/durable/PersistentHistory.ts +260 -0
  465. package/src/durable/PreparedInputAdmission.ts +44 -0
  466. package/src/durable/Records.ts +1010 -0
  467. package/src/durable/Recovery.ts +1018 -0
  468. package/src/durable/RunJournal.ts +1479 -0
  469. package/src/durable/Schedule.ts +504 -0
  470. package/src/durable/ScheduleStoreConformance.ts +638 -0
  471. package/src/durable/ScheduleTransition.ts +265 -0
  472. package/src/durable/Scheduling.ts +1077 -0
  473. package/src/durable/SqlMemoryStore.ts +774 -0
  474. package/src/durable/SqlMessageDeliveryStore.ts +302 -0
  475. package/src/durable/SqlStorageV2Upgrade.ts +500 -0
  476. package/src/durable/SqlSubscriptionStore.ts +1440 -0
  477. package/src/durable/SubmissionLedger.ts +1201 -0
  478. package/src/durable/SubmissionLedgerConformance.ts +4579 -0
  479. package/src/durable/SubmissionStatus.ts +14 -0
  480. package/src/durable/Subscription.ts +544 -0
  481. package/src/durable/SubscriptionInput.ts +144 -0
  482. package/src/durable/SubscriptionStoreConformance.ts +945 -0
  483. package/src/durable/SubscriptionTools.ts +327 -0
  484. package/src/durable/SubscriptionTransition.ts +302 -0
  485. package/src/durable/Subscriptions.ts +1210 -0
  486. package/src/durable/ThreadContextHistory.ts +227 -0
  487. package/src/durable/ThreadContextHistoryProjection.ts +216 -0
  488. package/src/durable/ThreadInvariants.ts +442 -0
  489. package/src/durable/ThreadProjection.ts +269 -0
  490. package/src/durable/ThreadProjectionMaintenance.ts +67 -0
  491. package/src/durable/ThreadStore.ts +242 -0
  492. package/src/durable/ThreadStoreConformance.ts +710 -0
  493. package/src/durable/ToolReconciler.ts +105 -0
  494. package/src/durable/WakeScheduler.ts +134 -0
  495. package/src/durable/WorkerHost.ts +171 -0
  496. package/src/durable/internal/agent-registration.ts +525 -0
  497. package/src/durable/internal/agent-updates.ts +302 -0
  498. package/src/durable/internal/foreign-diagnostic.ts +47 -0
  499. package/src/durable/internal/journal-checkpoint.ts +104 -0
  500. package/src/durable/internal/journal-metadata.ts +107 -0
  501. package/src/durable/internal/messaging-host.ts +608 -0
  502. package/src/durable/internal/schedule-time.ts +303 -0
  503. package/src/durable/internal/storage-v2-layout.ts +163 -0
  504. package/src/durable/internal/storage-v2.ts +73 -0
  505. package/src/durable/internal/worker-host.ts +2467 -0
  506. package/src/durable/internal/worker-runtime.ts +9 -0
  507. package/src/engine/AgentRuntime.ts +37 -0
  508. package/src/engine/Compaction.ts +11 -0
  509. package/src/engine/ContextCompactor.ts +277 -0
  510. package/src/engine/ContextHistory.ts +73 -0
  511. package/src/engine/ContextWindow.ts +72 -0
  512. package/src/engine/DurableStep.ts +132 -0
  513. package/src/engine/MessagingHost.ts +110 -0
  514. package/src/engine/Output.ts +2 -0
  515. package/src/engine/RunEventSink.ts +132 -0
  516. package/src/engine/RunOptions.ts +1077 -0
  517. package/src/engine/SubagentHost.ts +181 -0
  518. package/src/engine/ThreadHistory.ts +120 -0
  519. package/src/engine/ToolBroker.ts +157 -0
  520. package/src/engine/ToolExposure.ts +48 -0
  521. package/src/engine/internal/agent-runtime.ts +10117 -0
  522. package/src/engine/internal/bounded-value.ts +315 -0
  523. package/src/engine/internal/compaction.ts +678 -0
  524. package/src/engine/internal/error-diagnostic.ts +39 -0
  525. package/src/engine/internal/output-contract.ts +173 -0
  526. package/src/engine/internal/primitive-delta.ts +80 -0
  527. package/src/engine/internal/provider-result-staging.ts +211 -0
  528. package/src/engine/internal/tool-derivative.ts +106 -0
  529. package/src/engine/internal/tool-exposure.ts +224 -0
  530. package/src/engine/internal/tool-telemetry.ts +484 -0
  531. package/src/index.ts +96 -53
  532. package/src/sandbox/CodeExecutor.ts +352 -0
  533. package/src/sandbox/InteractiveBrowser.ts +257 -0
  534. package/src/sandbox/PageCapture.ts +692 -0
  535. package/src/sandbox/PageCrawl.ts +148 -0
  536. package/src/sandbox/PageScreenshot.ts +81 -0
  537. package/src/sandbox/ProtectedBrowser.ts +413 -0
  538. package/src/sandbox/Sandbox.ts +241 -0
  539. package/dist/Agent.d.mts +0 -5
  540. package/dist/Agent.mjs +0 -10
  541. package/dist/Agent.mjs.map +0 -1
  542. package/dist/AgentError.d.mts +0 -5
  543. package/dist/AgentError.mjs +0 -10
  544. package/dist/AgentError.mjs.map +0 -1
  545. package/dist/AgentPolicy.d.mts +0 -5
  546. package/dist/AgentPolicy.mjs +0 -10
  547. package/dist/AgentPolicy.mjs.map +0 -1
  548. package/dist/AgentRuntime.d.mts +0 -5
  549. package/dist/AgentRuntime.mjs +0 -10
  550. package/dist/AgentRuntime.mjs.map +0 -1
  551. package/dist/AgentUpdates.d.mts +0 -5
  552. package/dist/AgentUpdates.mjs +0 -10
  553. package/dist/AgentUpdates.mjs.map +0 -1
  554. package/dist/Approval.d.mts +0 -5
  555. package/dist/Approval.mjs +0 -10
  556. package/dist/Approval.mjs.map +0 -1
  557. package/dist/Budget.d.mts +0 -5
  558. package/dist/Budget.mjs +0 -10
  559. package/dist/Budget.mjs.map +0 -1
  560. package/dist/CodeMode.d.mts +0 -5
  561. package/dist/CodeMode.mjs +0 -10
  562. package/dist/CodeMode.mjs.map +0 -1
  563. package/dist/Commands.d.mts +0 -5
  564. package/dist/Commands.mjs +0 -10
  565. package/dist/Commands.mjs.map +0 -1
  566. package/dist/Compaction.d.mts +0 -5
  567. package/dist/Compaction.mjs +0 -10
  568. package/dist/Compaction.mjs.map +0 -1
  569. package/dist/ContextCompactor.d.mts +0 -5
  570. package/dist/ContextCompactor.mjs +0 -10
  571. package/dist/ContextCompactor.mjs.map +0 -1
  572. package/dist/ContextHistory.d.mts +0 -5
  573. package/dist/ContextHistory.mjs +0 -10
  574. package/dist/ContextHistory.mjs.map +0 -1
  575. package/dist/ContextTools.d.mts +0 -5
  576. package/dist/ContextTools.mjs +0 -10
  577. package/dist/ContextTools.mjs.map +0 -1
  578. package/dist/ContextWindow.d.mts +0 -5
  579. package/dist/ContextWindow.mjs +0 -10
  580. package/dist/ContextWindow.mjs.map +0 -1
  581. package/dist/DurableStep.d.mts +0 -5
  582. package/dist/DurableStep.mjs +0 -10
  583. package/dist/DurableStep.mjs.map +0 -1
  584. package/dist/EphemeralThreads.d.mts +0 -5
  585. package/dist/EphemeralThreads.mjs +0 -10
  586. package/dist/EphemeralThreads.mjs.map +0 -1
  587. package/dist/IdGenerator.d.mts +0 -5
  588. package/dist/IdGenerator.mjs +0 -10
  589. package/dist/IdGenerator.mjs.map +0 -1
  590. package/dist/Identifiers.d.mts +0 -5
  591. package/dist/Identifiers.mjs +0 -10
  592. package/dist/Identifiers.mjs.map +0 -1
  593. package/dist/Mcp.d.mts +0 -5
  594. package/dist/Mcp.mjs +0 -10
  595. package/dist/Mcp.mjs.map +0 -1
  596. package/dist/McpClient.d.mts +0 -5
  597. package/dist/McpClient.mjs +0 -10
  598. package/dist/McpClient.mjs.map +0 -1
  599. package/dist/Memory.d.mts +0 -5
  600. package/dist/Memory.mjs +0 -10
  601. package/dist/Memory.mjs.map +0 -1
  602. package/dist/MemoryNamespace.d.mts +0 -5
  603. package/dist/MemoryNamespace.mjs +0 -10
  604. package/dist/MemoryNamespace.mjs.map +0 -1
  605. package/dist/MemoryNotes.d.mts +0 -5
  606. package/dist/MemoryNotes.mjs +0 -10
  607. package/dist/MemoryNotes.mjs.map +0 -1
  608. package/dist/MemoryReference.d.mts +0 -5
  609. package/dist/MemoryReference.mjs +0 -10
  610. package/dist/MemoryReference.mjs.map +0 -1
  611. package/dist/MemoryRevalidation.d.mts +0 -5
  612. package/dist/MemoryRevalidation.mjs +0 -10
  613. package/dist/MemoryRevalidation.mjs.map +0 -1
  614. package/dist/MemoryStore.d.mts +0 -5
  615. package/dist/MemoryStore.mjs +0 -10
  616. package/dist/MemoryStore.mjs.map +0 -1
  617. package/dist/Messaging.d.mts +0 -5
  618. package/dist/Messaging.mjs +0 -10
  619. package/dist/Messaging.mjs.map +0 -1
  620. package/dist/MessagingHost.d.mts +0 -5
  621. package/dist/MessagingHost.mjs +0 -10
  622. package/dist/MessagingHost.mjs.map +0 -1
  623. package/dist/ModelContext.d.mts +0 -5
  624. package/dist/ModelContext.mjs +0 -10
  625. package/dist/ModelContext.mjs.map +0 -1
  626. package/dist/Receipt.d.mts +0 -5
  627. package/dist/Receipt.mjs +0 -10
  628. package/dist/Receipt.mjs.map +0 -1
  629. package/dist/Redaction.d.mts +0 -5
  630. package/dist/Redaction.mjs +0 -10
  631. package/dist/Redaction.mjs.map +0 -1
  632. package/dist/Remembering.d.mts +0 -5
  633. package/dist/Remembering.mjs +0 -10
  634. package/dist/Remembering.mjs.map +0 -1
  635. package/dist/RememberingStore.d.mts +0 -5
  636. package/dist/RememberingStore.mjs +0 -10
  637. package/dist/RememberingStore.mjs.map +0 -1
  638. package/dist/RunEvent.d.mts +0 -5
  639. package/dist/RunEvent.mjs +0 -10
  640. package/dist/RunEvent.mjs.map +0 -1
  641. package/dist/RunEventSink.d.mts +0 -5
  642. package/dist/RunEventSink.mjs +0 -10
  643. package/dist/RunEventSink.mjs.map +0 -1
  644. package/dist/RunHooks.d.mts +0 -5
  645. package/dist/RunHooks.mjs +0 -10
  646. package/dist/RunHooks.mjs.map +0 -1
  647. package/dist/RunOptions.d.mts +0 -5
  648. package/dist/RunOptions.mjs +0 -10
  649. package/dist/RunOptions.mjs.map +0 -1
  650. package/dist/RunPolicyUsage.d.mts +0 -5
  651. package/dist/RunPolicyUsage.mjs +0 -10
  652. package/dist/RunPolicyUsage.mjs.map +0 -1
  653. package/dist/SemanticMemory.d.mts +0 -5
  654. package/dist/SemanticMemory.mjs +0 -10
  655. package/dist/SemanticMemory.mjs.map +0 -1
  656. package/dist/SemanticMemoryIndex.d.mts +0 -5
  657. package/dist/SemanticMemoryIndex.mjs +0 -10
  658. package/dist/SemanticMemoryIndex.mjs.map +0 -1
  659. package/dist/SemanticMemoryRevalidation.d.mts +0 -5
  660. package/dist/SemanticMemoryRevalidation.mjs +0 -10
  661. package/dist/SemanticMemoryRevalidation.mjs.map +0 -1
  662. package/dist/Subagent.d.mts +0 -5
  663. package/dist/Subagent.mjs +0 -10
  664. package/dist/Subagent.mjs.map +0 -1
  665. package/dist/SubagentContract.d.mts +0 -5
  666. package/dist/SubagentContract.mjs +0 -10
  667. package/dist/SubagentContract.mjs.map +0 -1
  668. package/dist/SubagentHost.d.mts +0 -5
  669. package/dist/SubagentHost.mjs +0 -10
  670. package/dist/SubagentHost.mjs.map +0 -1
  671. package/dist/SubagentReservations.d.mts +0 -5
  672. package/dist/SubagentReservations.mjs +0 -10
  673. package/dist/SubagentReservations.mjs.map +0 -1
  674. package/dist/ThreadHistory.d.mts +0 -5
  675. package/dist/ThreadHistory.mjs +0 -10
  676. package/dist/ThreadHistory.mjs.map +0 -1
  677. package/dist/ToolBroker.d.mts +0 -5
  678. package/dist/ToolBroker.mjs +0 -10
  679. package/dist/ToolBroker.mjs.map +0 -1
  680. package/dist/ToolDiscovery.d.mts +0 -5
  681. package/dist/ToolDiscovery.mjs +0 -10
  682. package/dist/ToolDiscovery.mjs.map +0 -1
  683. package/dist/ToolResult.d.mts +0 -5
  684. package/dist/ToolResult.mjs +0 -10
  685. package/dist/ToolResult.mjs.map +0 -1
  686. package/dist/Usage.d.mts +0 -5
  687. package/dist/Usage.mjs +0 -10
  688. package/dist/Usage.mjs.map +0 -1
  689. package/dist/WebCapture.d.mts +0 -5
  690. package/dist/WebCapture.mjs +0 -10
  691. package/dist/WebCapture.mjs.map +0 -1
  692. package/dist/WebSearch.d.mts +0 -5
  693. package/dist/WebSearch.mjs +0 -10
  694. package/dist/WebSearch.mjs.map +0 -1
  695. package/dist/Worker.d.mts +0 -5
  696. package/dist/Worker.mjs +0 -10
  697. package/dist/Worker.mjs.map +0 -1
  698. package/dist/rolldown-runtime-BBjsoOtd.mjs +0 -27
  699. package/src/Agent.ts +0 -1
  700. package/src/AgentError.ts +0 -1
  701. package/src/AgentPolicy.ts +0 -1
  702. package/src/AgentRuntime.ts +0 -1
  703. package/src/AgentUpdates.ts +0 -1
  704. package/src/Approval.ts +0 -1
  705. package/src/Budget.ts +0 -1
  706. package/src/CodeMode.ts +0 -1
  707. package/src/Commands.ts +0 -1
  708. package/src/Compaction.ts +0 -1
  709. package/src/ContextCompactor.ts +0 -1
  710. package/src/ContextHistory.ts +0 -1
  711. package/src/ContextTools.ts +0 -1
  712. package/src/ContextWindow.ts +0 -1
  713. package/src/DurableStep.ts +0 -1
  714. package/src/EphemeralThreads.ts +0 -1
  715. package/src/IdGenerator.ts +0 -1
  716. package/src/Identifiers.ts +0 -1
  717. package/src/Mcp.ts +0 -1
  718. package/src/McpClient.ts +0 -1
  719. package/src/Memory.ts +0 -1
  720. package/src/MemoryNamespace.ts +0 -1
  721. package/src/MemoryNotes.ts +0 -1
  722. package/src/MemoryReference.ts +0 -1
  723. package/src/MemoryRevalidation.ts +0 -1
  724. package/src/MemoryStore.ts +0 -1
  725. package/src/Messaging.ts +0 -1
  726. package/src/MessagingHost.ts +0 -1
  727. package/src/ModelContext.ts +0 -1
  728. package/src/Receipt.ts +0 -1
  729. package/src/Redaction.ts +0 -1
  730. package/src/Remembering.ts +0 -1
  731. package/src/RememberingStore.ts +0 -1
  732. package/src/RunEvent.ts +0 -1
  733. package/src/RunEventSink.ts +0 -1
  734. package/src/RunHooks.ts +0 -1
  735. package/src/RunOptions.ts +0 -1
  736. package/src/RunPolicyUsage.ts +0 -1
  737. package/src/SemanticMemory.ts +0 -1
  738. package/src/SemanticMemoryIndex.ts +0 -1
  739. package/src/SemanticMemoryRevalidation.ts +0 -1
  740. package/src/Subagent.ts +0 -1
  741. package/src/SubagentContract.ts +0 -1
  742. package/src/SubagentHost.ts +0 -1
  743. package/src/SubagentReservations.ts +0 -1
  744. package/src/ThreadHistory.ts +0 -1
  745. package/src/ToolBroker.ts +0 -1
  746. package/src/ToolDiscovery.ts +0 -1
  747. package/src/ToolResult.ts +0 -1
  748. package/src/Usage.ts +0 -1
  749. package/src/WebCapture.ts +0 -1
  750. package/src/WebSearch.ts +0 -1
  751. package/src/Worker.ts +0 -1
@@ -0,0 +1,185 @@
1
+ import { Effect, Schema } from "effect";
2
+
3
+ import { utf8ByteLength } from "./internal/utf8.ts";
4
+ import type * as MemoryNamespace from "./MemoryNamespace.ts";
5
+ import {
6
+ MemoryLookup,
7
+ MemoryPassage,
8
+ MemoryRecallError,
9
+ MemoryRecallLimits,
10
+ } from "./MemoryReference.ts";
11
+ import {
12
+ MemoryDocument,
13
+ MemoryKey,
14
+ MemoryReader,
15
+ MemoryScope,
16
+ MemoryStorageError,
17
+ } from "./MemoryStore.ts";
18
+
19
+ const RevalidationLimits = Schema.Struct({
20
+ maxInputBytes: MemoryRecallLimits.fields.maxInputBytes,
21
+ maxSourceBytes: MemoryRecallLimits.fields.maxInputBytes,
22
+ });
23
+
24
+ /** Bind these values in host code. Neither is a model-selectable retrieval parameter. */
25
+ class MemoryAccessWire extends Schema.Class<MemoryAccessWire>(
26
+ "@effect-agent/capabilities/MemoryAccess",
27
+ )({
28
+ namespace: MemoryKey.Wire.fields.namespace,
29
+ scope: MemoryScope,
30
+ }) {}
31
+
32
+ export type MemoryAccess<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> = Omit<
33
+ MemoryAccessWire,
34
+ "namespace"
35
+ > & { readonly namespace: Namespace };
36
+
37
+ export const MemoryAccess = {
38
+ Wire: MemoryAccessWire,
39
+ make: <Namespace extends MemoryNamespace.Any>(
40
+ fields: MemoryAccess<Namespace>,
41
+ ): MemoryAccess<Namespace> =>
42
+ Object.assign(Schema.decodeUnknownSync(MemoryAccessWire)(fields), {
43
+ namespace: fields.namespace,
44
+ }),
45
+ };
46
+
47
+ /**
48
+ * Resolve derivative candidates against the current authoritative source and host-bound access.
49
+ * The reader needs no write capability. A same-revision excerpt is kept only if its exact text
50
+ * occurs in the current source; all attribution and metadata come from that source. Otherwise
51
+ * the whole current document replaces it. Aggregate output JSON is bounded before retention,
52
+ * including duplicates, by maxInputBytes, defaulting to 16 MiB with a 64 MiB maximum.
53
+ * maxSourceBytes optionally bounds aggregate encoded authoritative documents, once per source.
54
+ * One authoritative document is decoded at a time; reader-side allocations precede these bounds.
55
+ *
56
+ * There is no cache. One invocation reads each distinct source once. Checks begun after a
57
+ * successful withdrawal or access revocation exclude that source; an in-flight snapshot can
58
+ * finish, including its same-Turn overflow retry. Original history and prior outputs remain.
59
+ */
60
+ export const revalidateMemoryLookup = Effect.fn("revalidateMemoryLookup")(function* (
61
+ lookup: MemoryLookup,
62
+ access: MemoryAccess,
63
+ limits: Pick<MemoryRecallLimits, "maxInputBytes"> & { readonly maxSourceBytes?: number } = {},
64
+ ) {
65
+ const decodedLimits = yield* Schema.decodeEffect(RevalidationLimits)(limits).pipe(
66
+ Effect.mapError(() =>
67
+ MemoryRecallError.make({ reason: "invalid-input", message: "Invalid revalidation limits" }),
68
+ ),
69
+ );
70
+
71
+ const decodedAccess = yield* Schema.decodeEffect(MemoryAccess.Wire)(access).pipe(
72
+ Effect.mapError(() =>
73
+ MemoryRecallError.make({ reason: "invalid-input", message: "Invalid host memory access" }),
74
+ ),
75
+ );
76
+
77
+ const decoded = yield* Schema.decodeEffect(MemoryLookup)(lookup).pipe(
78
+ Effect.mapError(() =>
79
+ MemoryRecallError.make({ reason: "invalid-input", message: "Malformed memory candidates" }),
80
+ ),
81
+ );
82
+
83
+ if (decoded._tag !== "Found") return decoded;
84
+ const reader = yield* MemoryReader;
85
+
86
+ const groups = new Map<
87
+ string,
88
+ Array<{ readonly candidate: MemoryPassage; readonly index: number }>
89
+ >();
90
+
91
+ for (const [index, candidate] of decoded.passages.entries()) {
92
+ const group = groups.get(candidate.source.id);
93
+
94
+ if (group === undefined) groups.set(candidate.source.id, [{ candidate, index }]);
95
+ else group.push({ candidate, index });
96
+ }
97
+ const passages: Array<{ readonly passage: MemoryPassage; readonly index: number }> = [];
98
+ const maxInputBytes = decodedLimits.maxInputBytes ?? 16_777_216;
99
+ let inputBytes = 0;
100
+ let sourceBytes = 0;
101
+
102
+ for (const [sourceId, group] of groups) {
103
+ yield* Effect.yieldNow;
104
+ const key = MemoryKey.make({ namespace: decodedAccess.namespace, id: sourceId });
105
+
106
+ const document = yield* reader
107
+ .get(key)
108
+ .pipe(
109
+ Effect.flatMap((value) =>
110
+ Schema.decodeEffect(Schema.NullOr(MemoryDocument.Wire))(value).pipe(
111
+ Effect.mapError(() =>
112
+ MemoryStorageError.make({ operation: "validate source view", reason: "corrupt" }),
113
+ ),
114
+ ),
115
+ ),
116
+ );
117
+
118
+ if (
119
+ document !== null &&
120
+ (document.key.namespace.address !== key.namespace.address ||
121
+ document.key.id !== key.id ||
122
+ document.source.id !== key.id)
123
+ ) {
124
+ return yield* MemoryStorageError.make({
125
+ operation: "validate source identity",
126
+ reason: "corrupt",
127
+ });
128
+ }
129
+ if (
130
+ document === null ||
131
+ document._tag === "WithdrawnMemoryDocument" ||
132
+ !document.scopes.includes(decodedAccess.scope)
133
+ )
134
+ continue;
135
+ if (decodedLimits.maxSourceBytes !== undefined) {
136
+ sourceBytes += utf8ByteLength(JSON.stringify(document));
137
+ if (sourceBytes > decodedLimits.maxSourceBytes)
138
+ return yield* MemoryRecallError.make({
139
+ reason: "budget",
140
+ sourceId,
141
+ message: "Authoritative memory source byte budget exceeded",
142
+ });
143
+ }
144
+ for (const { candidate, index } of group) {
145
+ const sameExcerpt =
146
+ document.source.revision === candidate.source.revision &&
147
+ document.content.text.includes(candidate.content.text);
148
+
149
+ const passage = MemoryPassage.make({
150
+ version: 1,
151
+ authority: decodedAccess.namespace.address,
152
+ source: document.source,
153
+ passageId: sameExcerpt ? candidate.passageId : "document",
154
+ content: {
155
+ ...document.content,
156
+ text: sameExcerpt ? candidate.content.text : document.content.text,
157
+ },
158
+ });
159
+
160
+ const encoded = JSON.stringify(passage);
161
+ const remaining = maxInputBytes - inputBytes;
162
+
163
+ const encodedBytes = encoded.length <= remaining ? utf8ByteLength(encoded) : undefined;
164
+
165
+ if (encodedBytes === undefined || encodedBytes > remaining) {
166
+ return yield* MemoryRecallError.make({
167
+ reason: "budget",
168
+ sourceId,
169
+ message: "Revalidated memory input encoding budget exceeded",
170
+ });
171
+ }
172
+ inputBytes += encodedBytes;
173
+ passages.push({ passage, index });
174
+ }
175
+ }
176
+
177
+ return passages.length === 0
178
+ ? { _tag: "NoMatch" as const }
179
+ : {
180
+ _tag: "Found" as const,
181
+ passages: passages
182
+ .sort((left, right) => left.index - right.index)
183
+ .map(({ passage }) => passage),
184
+ };
185
+ });
@@ -0,0 +1,368 @@
1
+ import { Context, Effect, Layer, Schema } from "effect";
2
+
3
+ import * as MemoryNamespace from "./MemoryNamespace.ts";
4
+ import { MemoryContent, MemorySourceReference } from "./MemoryReference.ts";
5
+
6
+ const Identity = Schema.NonEmptyString.check(Schema.isMaxLength(1_024));
7
+ const Timestamp = Schema.Finite.check(Schema.isGreaterThanOrEqualTo(0));
8
+
9
+ /** Host-defined recall visibility label. A scope identifies access policy; it does not grant it. */
10
+ export const MemoryScope = Identity.pipe(Schema.brand("@effect-agent/core/MemoryScope"));
11
+ export type MemoryScope = typeof MemoryScope.Type;
12
+
13
+ /** A host-selected namespace prevents accidental cross-tenant document lookup. */
14
+ class MemoryKeyWire extends Schema.Class<MemoryKeyWire>("@effect-agent/core/MemoryKey")({
15
+ namespace: MemoryNamespace.Any,
16
+ id: MemorySourceReference.fields.id,
17
+ }) {}
18
+
19
+ export type MemoryKey<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> = Omit<
20
+ MemoryKeyWire,
21
+ "namespace"
22
+ > & { readonly namespace: Namespace };
23
+
24
+ export const MemoryKey = {
25
+ Wire: MemoryKeyWire,
26
+ make: <Namespace extends MemoryNamespace.Any>(
27
+ fields: MemoryKey<Namespace>,
28
+ ): MemoryKey<Namespace> =>
29
+ Object.assign(Schema.decodeUnknownSync(MemoryKeyWire)(fields), { namespace: fields.namespace }),
30
+ };
31
+
32
+ const KnownSource = Schema.Struct({
33
+ ...MemorySourceReference.fields,
34
+ revision: Identity,
35
+ });
36
+
37
+ const AccessScopes = Schema.Array(MemoryScope).check(
38
+ Schema.isMaxLength(128),
39
+ Schema.makeFilter((scopes) => new Set(scopes).size === scopes.length, {
40
+ expected: "unique access scopes",
41
+ }),
42
+ );
43
+
44
+ const DocumentFields = {
45
+ version: Schema.Literal(1),
46
+ key: MemoryKey.Wire,
47
+ source: KnownSource,
48
+ generation: Schema.Int.check(Schema.isBetween({ minimum: 1, maximum: Number.MAX_SAFE_INTEGER })),
49
+ predecessor: Schema.NullOr(MemorySourceReference),
50
+ modifiedAt: Timestamp,
51
+ };
52
+
53
+ class ActiveMemoryDocumentWire extends Schema.TaggedClass<ActiveMemoryDocumentWire>()(
54
+ "ActiveMemoryDocument",
55
+ {
56
+ ...DocumentFields,
57
+ content: MemoryContent,
58
+ /** Explicit application-defined scope names. Empty grants no recall access. */
59
+ scopes: AccessScopes,
60
+ },
61
+ ) {}
62
+
63
+ /** Terminal tombstone. Reusing its ID cannot restore the source through delayed work. */
64
+ class WithdrawnMemoryDocumentWire extends Schema.TaggedClass<WithdrawnMemoryDocumentWire>()(
65
+ "WithdrawnMemoryDocument",
66
+ {
67
+ ...DocumentFields,
68
+ reason: Schema.String.check(Schema.isMaxLength(4_096)),
69
+ },
70
+ ) {}
71
+
72
+ export type ActiveMemoryDocument<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> =
73
+ Omit<ActiveMemoryDocumentWire, "key"> & { readonly key: MemoryKey<Namespace> };
74
+
75
+ export const ActiveMemoryDocument = {
76
+ Wire: ActiveMemoryDocumentWire,
77
+ make: <Namespace extends MemoryNamespace.Any>(
78
+ fields: Omit<ActiveMemoryDocument<Namespace>, "_tag"> & {
79
+ readonly _tag?: "ActiveMemoryDocument";
80
+ },
81
+ ): ActiveMemoryDocument<Namespace> =>
82
+ Object.assign(
83
+ Schema.decodeUnknownSync(ActiveMemoryDocumentWire)({
84
+ _tag: "ActiveMemoryDocument",
85
+ ...fields,
86
+ }),
87
+ { key: MemoryKey.make(fields.key) },
88
+ ),
89
+ };
90
+
91
+ export type WithdrawnMemoryDocument<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> =
92
+ Omit<WithdrawnMemoryDocumentWire, "key"> & { readonly key: MemoryKey<Namespace> };
93
+
94
+ export const WithdrawnMemoryDocument = {
95
+ Wire: WithdrawnMemoryDocumentWire,
96
+ make: <Namespace extends MemoryNamespace.Any>(
97
+ fields: Omit<WithdrawnMemoryDocument<Namespace>, "_tag"> & {
98
+ readonly _tag?: "WithdrawnMemoryDocument";
99
+ },
100
+ ): WithdrawnMemoryDocument<Namespace> =>
101
+ Object.assign(
102
+ Schema.decodeUnknownSync(WithdrawnMemoryDocumentWire)({
103
+ _tag: "WithdrawnMemoryDocument",
104
+ ...fields,
105
+ }),
106
+ { key: MemoryKey.make(fields.key) },
107
+ ),
108
+ };
109
+
110
+ export type MemoryDocument<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> =
111
+ | ActiveMemoryDocument<Namespace>
112
+ | WithdrawnMemoryDocument<Namespace>;
113
+
114
+ export const MemoryDocument = {
115
+ Wire: Schema.Union([ActiveMemoryDocument.Wire, WithdrawnMemoryDocument.Wire]),
116
+ restore: Effect.fn("MemoryDocument.restore")(function* <Namespace extends MemoryNamespace.Any>(
117
+ namespace: Namespace,
118
+ input: unknown,
119
+ ): Effect.fn.Return<MemoryDocument<Namespace>, MemoryStorageError> {
120
+ const document = yield* Schema.decodeUnknownEffect(MemoryDocument.Wire)(input).pipe(
121
+ Effect.mapError(() =>
122
+ MemoryStorageError.make({ operation: "restore memory document", reason: "corrupt" }),
123
+ ),
124
+ );
125
+
126
+ if (!MemoryNamespace.equals(namespace, document.key.namespace))
127
+ return yield* MemoryStorageError.make({
128
+ operation: "restore memory namespace",
129
+ reason: "corrupt",
130
+ });
131
+ const key = MemoryKey.make({ ...document.key, namespace });
132
+
133
+ return document._tag === "ActiveMemoryDocument"
134
+ ? ActiveMemoryDocument.make({ ...document, key })
135
+ : WithdrawnMemoryDocument.make({ ...document, key });
136
+ }),
137
+ };
138
+
139
+ const WriteFields = {
140
+ key: MemoryKey.Wire,
141
+ /** The same operation ID must always carry exactly the same Schema-encoded command. */
142
+ operationId: Identity,
143
+ };
144
+
145
+ const MemoryWriteWire = Schema.Union([
146
+ Schema.TaggedStruct("Put", {
147
+ ...WriteFields,
148
+ expectedRevision: Schema.NullOr(Identity),
149
+ locator: MemorySourceReference.fields.locator,
150
+ content: MemoryContent,
151
+ scopes: AccessScopes,
152
+ }),
153
+ Schema.TaggedStruct("Withdraw", {
154
+ ...WriteFields,
155
+ expectedRevision: Identity,
156
+ reason: WithdrawnMemoryDocument.Wire.fields.reason,
157
+ }),
158
+ ]);
159
+
160
+ export type MemoryWrite<Namespace extends MemoryNamespace.Any = MemoryNamespace.Any> = (
161
+ | Omit<(typeof MemoryWriteWire.members)[0]["Type"], "key">
162
+ | Omit<(typeof MemoryWriteWire.members)[1]["Type"], "key">
163
+ ) & { readonly key: MemoryKey<Namespace> };
164
+
165
+ export const MemoryWrite = {
166
+ Wire: MemoryWriteWire,
167
+ make: <Namespace extends MemoryNamespace.Any>(
168
+ fields: MemoryWrite<Namespace>,
169
+ ): MemoryWrite<Namespace> =>
170
+ Object.assign(Schema.decodeUnknownSync(MemoryWriteWire)(fields), {
171
+ key: MemoryKey.make(fields.key),
172
+ }),
173
+ };
174
+
175
+ export class MemoryConflict extends Schema.TaggedError<MemoryConflict>()("MemoryConflict", {
176
+ key: MemoryKey.Wire,
177
+ expectedRevision: Schema.NullOr(Identity),
178
+ actualRevision: Schema.NullOr(Identity),
179
+ }) {}
180
+
181
+ export class MemoryWithdrawn extends Schema.TaggedError<MemoryWithdrawn>()("MemoryWithdrawn", {
182
+ key: MemoryKey.Wire,
183
+ revision: Identity,
184
+ }) {}
185
+
186
+ export class MemoryOperationConflict extends Schema.TaggedError<MemoryOperationConflict>()(
187
+ "MemoryOperationConflict",
188
+ {
189
+ key: MemoryKey.Wire,
190
+ operationId: Identity,
191
+ },
192
+ ) {}
193
+
194
+ export class MemoryStorageError extends Schema.TaggedError<MemoryStorageError>()(
195
+ "MemoryStorageError",
196
+ {
197
+ operation: Schema.NonEmptyString,
198
+ reason: Schema.Literals(["invalid-input", "unavailable", "corrupt", "incompatible"]),
199
+ },
200
+ ) {}
201
+
202
+ export const MemoryMutationPoint = Schema.Literals([
203
+ "memory:initialize:before",
204
+ "memory:initialize:before-accounting",
205
+ "memory:initialize:after-accounting",
206
+ "memory:initialize:after",
207
+ "memory:change:before",
208
+ "memory:change:after-state",
209
+ "memory:change:after-receipt",
210
+ "memory:change:after",
211
+ ]);
212
+
213
+ export type MemoryMutationPoint = typeof MemoryMutationPoint.Type;
214
+
215
+ export class MemoryMutationFailure extends Schema.TaggedError<MemoryMutationFailure>()(
216
+ "MemoryMutationFailure",
217
+ {
218
+ point: MemoryMutationPoint,
219
+ },
220
+ ) {}
221
+
222
+ /** Explicit fault-injection seam; production adapters install the no-op Layer. */
223
+ export class MemoryMutationFailpoint extends Context.Service<
224
+ MemoryMutationFailpoint,
225
+ {
226
+ readonly hit: (point: MemoryMutationPoint) => Effect.Effect<void, MemoryMutationFailure>;
227
+ }
228
+ >()("@effect-agent/core/MemoryMutationFailpoint") {
229
+ static readonly layer = Layer.succeed(this, { hit: () => Effect.void });
230
+ }
231
+
232
+ export type MemoryWriteError =
233
+ | MemoryStorageError
234
+ | MemoryConflict
235
+ | MemoryWithdrawn
236
+ | MemoryOperationConflict
237
+ | MemoryMutationFailure;
238
+
239
+ /**
240
+ * Read capability independent of editing. A get begun after a committed write must observe
241
+ * that write or a later revision. An adapter unable to provide that view must fail typed.
242
+ * Host code binds namespace and access scope; cached candidates do not implement this port.
243
+ */
244
+ export class MemoryReader extends Context.Service<
245
+ MemoryReader,
246
+ {
247
+ readonly get: <Namespace extends MemoryNamespace.Any>(
248
+ key: MemoryKey<Namespace>,
249
+ ) => Effect.Effect<MemoryDocument<Namespace> | null, MemoryStorageError>;
250
+ }
251
+ >()("@effect-agent/core/MemoryReader") {
252
+ static fromAdapter(adapter: {
253
+ readonly get: (key: MemoryKey) => Effect.Effect<MemoryDocument | null, MemoryStorageError>;
254
+ }): MemoryReader["Service"] {
255
+ return {
256
+ get: Effect.fn("MemoryReader.get")(function* <Namespace extends MemoryNamespace.Any>(
257
+ key: MemoryKey<Namespace>,
258
+ ) {
259
+ const document = yield* adapter.get(key);
260
+
261
+ return document === null ? null : yield* MemoryDocument.restore(key.namespace, document);
262
+ }),
263
+ };
264
+ }
265
+ }
266
+
267
+ /**
268
+ * Optional conditional writer. Implement only where atomic expected-revision checks and
269
+ * durable idempotency receipts can be guaranteed. Apply authorization before calling it.
270
+ * Reconcile an existing operation receipt before evaluating tombstones or expected revisions:
271
+ * identical commands return the original result; changed commands fail MemoryOperationConflict.
272
+ * Original results include content, even for a historical Put replayed after withdrawal;
273
+ * replay does not change the current head. Revalidate a source before using recalled content.
274
+ * A failed acknowledgement can hide a committed change: retain and retry the exact command.
275
+ * Successful withdrawal excludes checks begun afterward; already captured views may finish.
276
+ * Receipts and original Thread history are separate retention concerns.
277
+ */
278
+ export class MemoryWriter extends Context.Service<
279
+ MemoryWriter,
280
+ {
281
+ readonly change: <Namespace extends MemoryNamespace.Any>(
282
+ write: MemoryWrite<Namespace>,
283
+ ) => Effect.Effect<MemoryDocument<Namespace>, MemoryWriteError>;
284
+ }
285
+ >()("@effect-agent/core/MemoryWriter") {
286
+ static fromAdapter(adapter: {
287
+ readonly change: (write: MemoryWrite) => Effect.Effect<MemoryDocument, MemoryWriteError>;
288
+ }): MemoryWriter["Service"] {
289
+ return {
290
+ change: Effect.fn("MemoryWriter.change")(function* <Namespace extends MemoryNamespace.Any>(
291
+ write: MemoryWrite<Namespace>,
292
+ ) {
293
+ const document = yield* adapter.change(write);
294
+
295
+ return yield* MemoryDocument.restore(write.key.namespace, document);
296
+ }),
297
+ };
298
+ }
299
+ }
300
+
301
+ /**
302
+ * Transition mechanics for an authoritative document store. Revisions identify this readable
303
+ * source, not the original activity from which a consumer extracted it. The adapter reconciles
304
+ * receipts first and owns atomicity and the clock. Original evidence belongs in provenance.
305
+ */
306
+ export const applyMemoryWrite = Effect.fn("applyMemoryWrite")(function* <
307
+ Namespace extends MemoryNamespace.Any,
308
+ >(
309
+ current: MemoryDocument<NoInfer<Namespace>> | null,
310
+ write: MemoryWrite<Namespace>,
311
+ modifiedAt: number,
312
+ ) {
313
+ if (
314
+ current !== null &&
315
+ (!MemoryNamespace.equals(current.key.namespace, write.key.namespace) ||
316
+ current.key.id !== write.key.id ||
317
+ current.source.id !== write.key.id)
318
+ ) {
319
+ return yield* MemoryStorageError.make({
320
+ operation: "memory transition identity",
321
+ reason: "corrupt",
322
+ });
323
+ }
324
+ if (current?._tag === "WithdrawnMemoryDocument") {
325
+ return yield* MemoryWithdrawn.make({ key: write.key, revision: current.source.revision });
326
+ }
327
+ const actualRevision = current?.source.revision ?? null;
328
+
329
+ if (actualRevision !== write.expectedRevision) {
330
+ return yield* MemoryConflict.make({
331
+ key: write.key,
332
+ expectedRevision: write.expectedRevision,
333
+ actualRevision,
334
+ });
335
+ }
336
+ const generation = (current?.generation ?? 0) + 1;
337
+
338
+ const fields = {
339
+ version: 1 as const,
340
+ key: write.key,
341
+ source: {
342
+ id: write.key.id,
343
+ locator: write._tag === "Put" ? write.locator : (current?.source.locator ?? ""),
344
+ revision: String(generation),
345
+ },
346
+ generation,
347
+ predecessor: current?.source ?? null,
348
+ modifiedAt,
349
+ };
350
+
351
+ const next =
352
+ write._tag === "Put"
353
+ ? {
354
+ _tag: "ActiveMemoryDocument" as const,
355
+ ...fields,
356
+ content: write.content,
357
+ scopes: write.scopes,
358
+ }
359
+ : { _tag: "WithdrawnMemoryDocument" as const, ...fields, reason: write.reason };
360
+
361
+ const document = yield* Schema.decodeUnknownEffect(MemoryDocument.Wire)(next).pipe(
362
+ Effect.mapError(() =>
363
+ MemoryStorageError.make({ operation: "memory transition", reason: "invalid-input" }),
364
+ ),
365
+ );
366
+
367
+ return yield* MemoryDocument.restore(write.key.namespace, document);
368
+ });
@@ -0,0 +1,90 @@
1
+ import { Schema } from "effect";
2
+
3
+ import { AgentId, SettlementId, ThreadId } from "./Identifiers.ts";
4
+ import { IdempotencyKey, Receipt } from "./Receipt.ts";
5
+ import { FrameworkMessage } from "./Worker.ts";
6
+
7
+ /** Application-chosen fixed route name; it never authorizes a destination by itself. */
8
+ export const PeerName = Schema.NonEmptyString.check(
9
+ Schema.isMaxLength(64),
10
+ Schema.isPattern(/^[a-zA-Z0-9_-]+$/u),
11
+ );
12
+
13
+ export type PeerName = typeof PeerName.Type;
14
+
15
+ /** A retained outbound delivery identity, not a destination Receipt or access grant. */
16
+ export const MessageRef = Schema.Struct({ ownerThreadId: ThreadId, messageId: IdempotencyKey });
17
+ export type MessageRef = typeof MessageRef.Type;
18
+
19
+ export const MessageAddress = Schema.Struct({ threadId: ThreadId, agentId: AgentId });
20
+ export type MessageAddress = typeof MessageAddress.Type;
21
+
22
+ /** Host-authenticated provenance stored separately from destination-owned application input. */
23
+ export const MessageAdmission = Schema.Struct({
24
+ schemaVersion: Schema.Literal(1),
25
+ message: MessageRef,
26
+ peerName: PeerName,
27
+ sender: MessageAddress,
28
+ returnAddress: MessageAddress,
29
+ inReplyTo: Schema.optionalKey(MessageRef),
30
+ }).check(
31
+ Schema.makeFilter(
32
+ (value) =>
33
+ value.message.ownerThreadId === value.sender.threadId &&
34
+ value.sender.threadId === value.returnAddress.threadId &&
35
+ value.sender.agentId === value.returnAddress.agentId,
36
+ ),
37
+ );
38
+
39
+ export type MessageAdmission = typeof MessageAdmission.Type;
40
+
41
+ /** Bounded public projection of delivery state; the frozen envelope remains host-private. */
42
+ export const MessageStatus = Schema.Struct({
43
+ message: MessageRef,
44
+ status: Schema.Literals(["pending", "accepted", "processed", "refused", "parked"]),
45
+ receipt: Schema.NullOr(Receipt),
46
+ settlement: Schema.NullOr(
47
+ Schema.Struct({
48
+ settlementId: SettlementId,
49
+ outcome: Schema.Literals(["completed", "failed", "aborted"]),
50
+ }),
51
+ ),
52
+ reason: Schema.NullOr(Schema.String.check(Schema.isMaxLength(256))),
53
+ });
54
+
55
+ export type MessageStatus = typeof MessageStatus.Type;
56
+
57
+ export const InboxEntry = Schema.Struct({
58
+ sequence: Schema.Natural.check(Schema.isGreaterThan(0)),
59
+ admission: MessageAdmission,
60
+ });
61
+
62
+ export type InboxEntry = typeof InboxEntry.Type;
63
+
64
+ export const InboxPage = Schema.Struct({
65
+ items: Schema.Array(InboxEntry).check(Schema.isMaxLength(100)),
66
+ next: Schema.NullOr(Schema.Natural),
67
+ });
68
+
69
+ export type InboxPage = typeof InboxPage.Type;
70
+
71
+ export class MessagingError extends Schema.TaggedError<MessagingError>()("MessagingError", {
72
+ operation: Schema.Literals(["context", "send", "reply", "inbox", "inspect", "retry"]),
73
+ reason: Schema.Literals([
74
+ "denied",
75
+ "unavailable",
76
+ "route-unavailable",
77
+ "binding-mismatch",
78
+ "invalid-input",
79
+ "invalid-reference",
80
+ "conflict",
81
+ "capacity",
82
+ "not-found",
83
+ "storage",
84
+ "corrupt",
85
+ ]),
86
+ }) {}
87
+
88
+ /** Canonical input provenance: peer input or a framework-owned completion message. */
89
+ export const InputMessage = Schema.Union([MessageAdmission, FrameworkMessage]);
90
+ export type InputMessage = typeof InputMessage.Type;
@@ -0,0 +1,42 @@
1
+ import { Schema } from "effect";
2
+
3
+ import { ReceiptId, SubmissionId, ThreadId } from "./Identifiers.ts";
4
+
5
+ // Keep the established brand and Schema identities when sharing these values inward.
6
+ /** Caller-supplied deduplication key, scoped to one Thread and authenticated principal. */
7
+ export const IdempotencyKey = Schema.NonEmptyString.check(Schema.isMaxLength(256)).pipe(
8
+ Schema.brand("@effect-agent/thread/IdempotencyKey"),
9
+ );
10
+
11
+ export type IdempotencyKey = typeof IdempotencyKey.Type;
12
+
13
+ /** Stable host-authenticated admission principal; the established durable brand is preserved. */
14
+ export const Principal = Schema.NonEmptyString.check(Schema.isMaxLength(256)).pipe(
15
+ Schema.brand("@effect-agent/thread/Principal"),
16
+ );
17
+
18
+ export type Principal = typeof Principal.Type;
19
+
20
+ /** Thread-local FIFO position allocated once at admission. */
21
+ export const QueueSequence = Schema.Natural.pipe(
22
+ Schema.brand("@effect-agent/thread/QueueSequence"),
23
+ );
24
+
25
+ export type QueueSequence = typeof QueueSequence.Type;
26
+
27
+ /**
28
+ * One accepted input whose admission, Thread materialization and readiness are committed.
29
+ * A Receipt identifies an observation target; possession grants no authorization.
30
+ */
31
+ export class Receipt extends Schema.Class<Receipt>("@effect-agent/thread/Receipt")({
32
+ receiptId: ReceiptId,
33
+ submissionId: SubmissionId,
34
+ threadId: ThreadId,
35
+ queueSequence: QueueSequence,
36
+ }) {}
37
+
38
+ /** The input joined this host Submission; cancelling it must never silently cancel the host. */
39
+ export class JoinedToHost extends Schema.TaggedError<JoinedToHost>()("JoinedToHost", {
40
+ submissionId: SubmissionId,
41
+ hostSubmissionId: SubmissionId,
42
+ }) {}