effect-agent 0.1.0-beta.12 → 0.1.0-beta.121

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 (553) hide show
  1. package/dist/Agent-1DMSO_Fl.mjs +86 -0
  2. package/dist/Agent-1DMSO_Fl.mjs.map +1 -0
  3. package/dist/Agent-D9cXqfF3.d.mts +252 -0
  4. package/dist/AgentError-Bn1ytXRD.d.mts +117 -0
  5. package/dist/AgentPolicy-BqDoSXO6.d.mts +96 -0
  6. package/dist/AgentRuntime-BUxDdLpw.d.mts +346 -0
  7. package/dist/AgentRuntime-Cp1hAb-W.mjs +4739 -0
  8. package/dist/AgentRuntime-Cp1hAb-W.mjs.map +1 -0
  9. package/dist/AgentUpdates-DMJ-_xow.d.mts +53 -0
  10. package/dist/ContextCompactor-WwSIG_Z2.d.mts +161 -0
  11. package/dist/ContextWindow-DRQ5Mbm2.d.mts +58 -0
  12. package/dist/DurableAgentRuntime-B-9w7jDt.mjs +7061 -0
  13. package/dist/DurableAgentRuntime-B-9w7jDt.mjs.map +1 -0
  14. package/dist/DurableFailpoint-Cnr3wx1L.d.mts +41 -0
  15. package/dist/DurableStep-Cry_iol4.d.mts +103 -0
  16. package/dist/EventSource-CnlZ3Kma.d.mts +51 -0
  17. package/dist/FailureDiagnostic-BElLOoED.mjs +274 -0
  18. package/dist/FailureDiagnostic-BElLOoED.mjs.map +1 -0
  19. package/dist/FailureDiagnostic-CaAkzGHL.d.mts +223 -0
  20. package/dist/Identifiers-CN2s30fF.d.mts +40 -0
  21. package/dist/InMemory.d.mts +24 -0
  22. package/dist/InMemory.mjs +24 -0
  23. package/dist/InMemory.mjs.map +1 -0
  24. package/dist/MemoryNamespace-BbRW5p71.d.mts +36 -0
  25. package/dist/MemoryReference-B8Q3UJoJ.d.mts +79 -0
  26. package/dist/Messaging-Dkg87ebg.d.mts +221 -0
  27. package/dist/Messaging-JYYN3oYS.d.mts +1067 -0
  28. package/dist/MessagingHost-CqzpxbGz.d.mts +74 -0
  29. package/dist/MessagingHost-DfsbMPvq.mjs +110 -0
  30. package/dist/MessagingHost-DfsbMPvq.mjs.map +1 -0
  31. package/dist/OperationAuthorizer-TzcQtpX5.d.mts +61 -0
  32. package/dist/Output-V-6YL1_Z.d.mts +25 -0
  33. package/dist/PageCapture-Df8Xwskw.d.mts +583 -0
  34. package/dist/PageScreenshot-BpgZKAxl.d.mts +48 -0
  35. package/dist/PreparedInputAdmission-BQLGldl-.d.mts +42 -0
  36. package/dist/Receipt-BAHyigAF.d.mts +33 -0
  37. package/dist/Records-D88mgvyS.d.mts +4214 -0
  38. package/dist/RunEvent-DIrzkjLr.d.mts +460 -0
  39. package/dist/RunEventSink-D5aVhISG.d.mts +108 -0
  40. package/dist/RunJournal-BXrq0VIK.mjs +931 -0
  41. package/dist/RunJournal-BXrq0VIK.mjs.map +1 -0
  42. package/dist/RunOptions-CSBsSj0X.d.mts +935 -0
  43. package/dist/RunPolicyUsage-ClZxyR46.d.mts +21 -0
  44. package/dist/Sandbox-CEsDWBLq.d.mts +173 -0
  45. package/dist/Schedule-BIOHA6RR.d.mts +847 -0
  46. package/dist/Scheduling-DPb2QyAK.mjs +691 -0
  47. package/dist/Scheduling-DPb2QyAK.mjs.map +1 -0
  48. package/dist/Subagent-CNik9RiA.d.mts +1635 -0
  49. package/dist/Subagent-DCrB7an7.mjs +1498 -0
  50. package/dist/Subagent-DCrB7an7.mjs.map +1 -0
  51. package/dist/SubagentContract-DdT7Cqe6.d.mts +116 -0
  52. package/dist/SubagentHost-4WB8Hj0C.d.mts +164 -0
  53. package/dist/Subscription-CRteOKRf.d.mts +948 -0
  54. package/dist/SubscriptionInput-oNcwTPti.d.mts +41 -0
  55. package/dist/Thread-DOBQ0QUY.d.mts +96 -0
  56. package/dist/ThreadHistory-tS1KwxHR.d.mts +60 -0
  57. package/dist/ToolBroker-DWs4tZra.d.mts +133 -0
  58. package/dist/ToolExposure-9uF_Yo0T.mjs +10 -0
  59. package/dist/ToolExposure-9uF_Yo0T.mjs.map +1 -0
  60. package/dist/ToolExposure-C93U1sPu.mjs +30 -0
  61. package/dist/ToolExposure-C93U1sPu.mjs.map +1 -0
  62. package/dist/ToolExposure-UCN12eCd.d.mts +39 -0
  63. package/dist/ToolExposure-r2eOWk4F.d.mts +46 -0
  64. package/dist/ToolExposure.d.mts +8 -0
  65. package/dist/ToolExposure.mjs +21 -0
  66. package/dist/ToolExposure.mjs.map +1 -0
  67. package/dist/ToolReconciler-BmVRAHKs.d.mts +80 -0
  68. package/dist/ToolResult-BKdqWRff.d.mts +78 -0
  69. package/dist/Usage-Dx0aknfk.d.mts +121 -0
  70. package/dist/WakeScheduler-EjUF-GhC.d.mts +56 -0
  71. package/dist/Worker-CfwzMZEK.mjs +271 -0
  72. package/dist/Worker-CfwzMZEK.mjs.map +1 -0
  73. package/dist/Worker-fwWkBg12.d.mts +472 -0
  74. package/dist/agent-registration-CKNsrpwo.mjs +201 -0
  75. package/dist/agent-registration-CKNsrpwo.mjs.map +1 -0
  76. package/dist/capabilities/Approval.d.mts +114 -0
  77. package/dist/capabilities/Approval.mjs +226 -0
  78. package/dist/capabilities/Approval.mjs.map +1 -0
  79. package/dist/capabilities/Budget.d.mts +112 -0
  80. package/dist/capabilities/Budget.mjs +346 -0
  81. package/dist/capabilities/Budget.mjs.map +1 -0
  82. package/dist/capabilities/CodeMode.d.mts +157 -0
  83. package/dist/capabilities/CodeMode.mjs +522 -0
  84. package/dist/capabilities/CodeMode.mjs.map +1 -0
  85. package/dist/capabilities/Commands.d.mts +55 -0
  86. package/dist/capabilities/Commands.mjs +57 -0
  87. package/dist/capabilities/Commands.mjs.map +1 -0
  88. package/dist/capabilities/ContextTools.d.mts +321 -0
  89. package/dist/capabilities/ContextTools.mjs +126 -0
  90. package/dist/capabilities/ContextTools.mjs.map +1 -0
  91. package/dist/capabilities/Mcp.d.mts +108 -0
  92. package/dist/capabilities/Mcp.mjs +259 -0
  93. package/dist/capabilities/Mcp.mjs.map +1 -0
  94. package/dist/capabilities/McpClient.d.mts +115 -0
  95. package/dist/capabilities/McpClient.mjs +506 -0
  96. package/dist/capabilities/McpClient.mjs.map +1 -0
  97. package/dist/capabilities/MemoryNotes.d.mts +424 -0
  98. package/dist/capabilities/MemoryNotes.mjs +128 -0
  99. package/dist/capabilities/MemoryNotes.mjs.map +1 -0
  100. package/dist/capabilities/Messaging.d.mts +3 -0
  101. package/dist/capabilities/Messaging.mjs +152 -0
  102. package/dist/capabilities/Messaging.mjs.map +1 -0
  103. package/dist/capabilities/ModelContext.d.mts +89 -0
  104. package/dist/capabilities/ModelContext.mjs +168 -0
  105. package/dist/capabilities/ModelContext.mjs.map +1 -0
  106. package/dist/capabilities/Redaction.d.mts +37 -0
  107. package/dist/capabilities/Redaction.mjs +104 -0
  108. package/dist/capabilities/Redaction.mjs.map +1 -0
  109. package/dist/capabilities/Remembering.d.mts +434 -0
  110. package/dist/capabilities/Remembering.mjs +290 -0
  111. package/dist/capabilities/Remembering.mjs.map +1 -0
  112. package/dist/capabilities/RunHooks.d.mts +82 -0
  113. package/dist/capabilities/RunHooks.mjs +144 -0
  114. package/dist/capabilities/RunHooks.mjs.map +1 -0
  115. package/dist/capabilities/SemanticMemory.d.mts +431 -0
  116. package/dist/capabilities/SemanticMemory.mjs +315 -0
  117. package/dist/capabilities/SemanticMemory.mjs.map +1 -0
  118. package/dist/capabilities/Subagent.d.mts +4 -0
  119. package/dist/capabilities/Subagent.mjs +5 -0
  120. package/dist/capabilities/SubagentReservations.d.mts +186 -0
  121. package/dist/capabilities/SubagentReservations.mjs +479 -0
  122. package/dist/capabilities/SubagentReservations.mjs.map +1 -0
  123. package/dist/capabilities/ToolDiscovery.d.mts +124 -0
  124. package/dist/capabilities/ToolDiscovery.mjs +230 -0
  125. package/dist/capabilities/ToolDiscovery.mjs.map +1 -0
  126. package/dist/capabilities/WebCapture.d.mts +163 -0
  127. package/dist/capabilities/WebCapture.mjs +335 -0
  128. package/dist/capabilities/WebCapture.mjs.map +1 -0
  129. package/dist/capabilities/WebSearch.d.mts +71 -0
  130. package/dist/capabilities/WebSearch.mjs +115 -0
  131. package/dist/capabilities/WebSearch.mjs.map +1 -0
  132. package/dist/compaction-C2OTceKw.mjs +505 -0
  133. package/dist/compaction-C2OTceKw.mjs.map +1 -0
  134. package/dist/core/Agent.d.mts +2 -0
  135. package/dist/core/Agent.mjs +2 -0
  136. package/dist/core/AgentError.d.mts +2 -0
  137. package/dist/core/AgentError.mjs +134 -0
  138. package/dist/core/AgentError.mjs.map +1 -0
  139. package/dist/core/AgentPolicy.d.mts +2 -0
  140. package/dist/core/AgentPolicy.mjs +94 -0
  141. package/dist/core/AgentPolicy.mjs.map +1 -0
  142. package/dist/core/AgentUpdates.d.mts +2 -0
  143. package/dist/core/AgentUpdates.mjs +63 -0
  144. package/dist/core/AgentUpdates.mjs.map +1 -0
  145. package/dist/core/FailureDiagnostic.d.mts +2 -0
  146. package/dist/core/FailureDiagnostic.mjs +2 -0
  147. package/dist/core/IdGenerator.d.mts +26 -0
  148. package/dist/core/IdGenerator.mjs +27 -0
  149. package/dist/core/IdGenerator.mjs.map +1 -0
  150. package/dist/core/Identifiers.d.mts +2 -0
  151. package/dist/core/Identifiers.mjs +43 -0
  152. package/dist/core/Identifiers.mjs.map +1 -0
  153. package/dist/core/Memory.d.mts +57 -0
  154. package/dist/core/Memory.mjs +203 -0
  155. package/dist/core/Memory.mjs.map +1 -0
  156. package/dist/core/MemoryNamespace.d.mts +2 -0
  157. package/dist/core/MemoryNamespace.mjs +116 -0
  158. package/dist/core/MemoryNamespace.mjs.map +1 -0
  159. package/dist/core/MemoryReference.d.mts +2 -0
  160. package/dist/core/MemoryReference.mjs +109 -0
  161. package/dist/core/MemoryReference.mjs.map +1 -0
  162. package/dist/core/MemoryRevalidation.d.mts +65 -0
  163. package/dist/core/MemoryRevalidation.mjs +126 -0
  164. package/dist/core/MemoryRevalidation.mjs.map +1 -0
  165. package/dist/core/MemoryStore.d.mts +186 -0
  166. package/dist/core/MemoryStore.mjs +243 -0
  167. package/dist/core/MemoryStore.mjs.map +1 -0
  168. package/dist/core/Receipt.d.mts +2 -0
  169. package/dist/core/Receipt.mjs +36 -0
  170. package/dist/core/Receipt.mjs.map +1 -0
  171. package/dist/core/RememberingStore.d.mts +1562 -0
  172. package/dist/core/RememberingStore.mjs +190 -0
  173. package/dist/core/RememberingStore.mjs.map +1 -0
  174. package/dist/core/RunEvent.d.mts +2 -0
  175. package/dist/core/RunEvent.mjs +337 -0
  176. package/dist/core/RunEvent.mjs.map +1 -0
  177. package/dist/core/RunPolicyUsage.d.mts +2 -0
  178. package/dist/core/RunPolicyUsage.mjs +21 -0
  179. package/dist/core/RunPolicyUsage.mjs.map +1 -0
  180. package/dist/core/SemanticMemoryIndex.d.mts +826 -0
  181. package/dist/core/SemanticMemoryIndex.mjs +185 -0
  182. package/dist/core/SemanticMemoryIndex.mjs.map +1 -0
  183. package/dist/core/SemanticMemoryRevalidation.d.mts +45 -0
  184. package/dist/core/SemanticMemoryRevalidation.mjs +191 -0
  185. package/dist/core/SemanticMemoryRevalidation.mjs.map +1 -0
  186. package/dist/core/SubagentContract.d.mts +2 -0
  187. package/dist/core/SubagentContract.mjs +148 -0
  188. package/dist/core/SubagentContract.mjs.map +1 -0
  189. package/dist/core/Thread.d.mts +2 -0
  190. package/dist/core/Thread.mjs +250 -0
  191. package/dist/core/Thread.mjs.map +1 -0
  192. package/dist/core/ToolResult.d.mts +2 -0
  193. package/dist/core/ToolResult.mjs +156 -0
  194. package/dist/core/ToolResult.mjs.map +1 -0
  195. package/dist/core/Usage.d.mts +2 -0
  196. package/dist/core/Usage.mjs +319 -0
  197. package/dist/core/Usage.mjs.map +1 -0
  198. package/dist/core/Worker.d.mts +3 -0
  199. package/dist/core/Worker.mjs +3 -0
  200. package/dist/durable/ActivityStore.d.mts +116 -0
  201. package/dist/durable/ActivityStore.mjs +131 -0
  202. package/dist/durable/ActivityStore.mjs.map +1 -0
  203. package/dist/durable/Admin.d.mts +2 -0
  204. package/dist/durable/Admin.mjs +330 -0
  205. package/dist/durable/Admin.mjs.map +1 -0
  206. package/dist/durable/AgentRegistration.d.mts +2 -0
  207. package/dist/durable/AgentRegistration.mjs +14 -0
  208. package/dist/durable/AgentRegistration.mjs.map +1 -0
  209. package/dist/durable/Certification.d.mts +110 -0
  210. package/dist/durable/Certification.mjs +159 -0
  211. package/dist/durable/Certification.mjs.map +1 -0
  212. package/dist/durable/CommittedActivity.d.mts +62 -0
  213. package/dist/durable/CommittedActivity.mjs +159 -0
  214. package/dist/durable/CommittedActivity.mjs.map +1 -0
  215. package/dist/durable/Digest.d.mts +2 -0
  216. package/dist/durable/Digest.mjs +50 -0
  217. package/dist/durable/Digest.mjs.map +1 -0
  218. package/dist/durable/DurableAgentRuntime.d.mts +3 -0
  219. package/dist/durable/DurableAgentRuntime.mjs +3 -0
  220. package/dist/durable/DurableFailpoint.d.mts +2 -0
  221. package/dist/durable/DurableFailpoint.mjs +102 -0
  222. package/dist/durable/DurableFailpoint.mjs.map +1 -0
  223. package/dist/durable/DurableFailpointTestControl.d.mts +14 -0
  224. package/dist/durable/DurableFailpointTestControl.mjs +19 -0
  225. package/dist/durable/DurableFailpointTestControl.mjs.map +1 -0
  226. package/dist/durable/EventSource.d.mts +2 -0
  227. package/dist/durable/EventSource.mjs +65 -0
  228. package/dist/durable/EventSource.mjs.map +1 -0
  229. package/dist/durable/GitHubWorkflowSource.d.mts +185 -0
  230. package/dist/durable/GitHubWorkflowSource.mjs +209 -0
  231. package/dist/durable/GitHubWorkflowSource.mjs.map +1 -0
  232. package/dist/durable/MessageDelivery.d.mts +893 -0
  233. package/dist/durable/MessageDelivery.mjs +557 -0
  234. package/dist/durable/MessageDelivery.mjs.map +1 -0
  235. package/dist/durable/MessageDeliveryStoreConformance.d.mts +378 -0
  236. package/dist/durable/MessageDeliveryStoreConformance.mjs +270 -0
  237. package/dist/durable/MessageDeliveryStoreConformance.mjs.map +1 -0
  238. package/dist/durable/OperationAuthorizer.d.mts +2 -0
  239. package/dist/durable/OperationAuthorizer.mjs +70 -0
  240. package/dist/durable/OperationAuthorizer.mjs.map +1 -0
  241. package/dist/durable/PersistentHistory.d.mts +16 -0
  242. package/dist/durable/PersistentHistory.mjs +125 -0
  243. package/dist/durable/PersistentHistory.mjs.map +1 -0
  244. package/dist/durable/PreparedInputAdmission.d.mts +2 -0
  245. package/dist/durable/PreparedInputAdmission.mjs +38 -0
  246. package/dist/durable/PreparedInputAdmission.mjs.map +1 -0
  247. package/dist/durable/Records.d.mts +2 -0
  248. package/dist/durable/Records.mjs +848 -0
  249. package/dist/durable/Records.mjs.map +1 -0
  250. package/dist/durable/Recovery.d.mts +2 -0
  251. package/dist/durable/Recovery.mjs +739 -0
  252. package/dist/durable/Recovery.mjs.map +1 -0
  253. package/dist/durable/RunJournal.d.mts +2 -0
  254. package/dist/durable/RunJournal.mjs +2 -0
  255. package/dist/durable/Schedule.d.mts +2 -0
  256. package/dist/durable/Schedule.mjs +391 -0
  257. package/dist/durable/Schedule.mjs.map +1 -0
  258. package/dist/durable/ScheduleStoreConformance.d.mts +17 -0
  259. package/dist/durable/ScheduleStoreConformance.mjs +420 -0
  260. package/dist/durable/ScheduleStoreConformance.mjs.map +1 -0
  261. package/dist/durable/ScheduleTransition.d.mts +24 -0
  262. package/dist/durable/ScheduleTransition.mjs +180 -0
  263. package/dist/durable/ScheduleTransition.mjs.map +1 -0
  264. package/dist/durable/Scheduling.d.mts +54 -0
  265. package/dist/durable/Scheduling.mjs +2 -0
  266. package/dist/durable/SqlMemoryStore.d.mts +29 -0
  267. package/dist/durable/SqlMemoryStore.mjs +436 -0
  268. package/dist/durable/SqlMemoryStore.mjs.map +1 -0
  269. package/dist/durable/SqlMessageDeliveryStore.d.mts +42 -0
  270. package/dist/durable/SqlMessageDeliveryStore.mjs +179 -0
  271. package/dist/durable/SqlMessageDeliveryStore.mjs.map +1 -0
  272. package/dist/durable/SqlStorageV2Upgrade.d.mts +21 -0
  273. package/dist/durable/SqlStorageV2Upgrade.mjs +459 -0
  274. package/dist/durable/SqlStorageV2Upgrade.mjs.map +1 -0
  275. package/dist/durable/SqlSubscriptionStore.d.mts +62 -0
  276. package/dist/durable/SqlSubscriptionStore.mjs +751 -0
  277. package/dist/durable/SqlSubscriptionStore.mjs.map +1 -0
  278. package/dist/durable/SqlThreadNativeReads.d.mts +53 -0
  279. package/dist/durable/SqlThreadNativeReads.mjs +159 -0
  280. package/dist/durable/SqlThreadNativeReads.mjs.map +1 -0
  281. package/dist/durable/SubmissionLedger.d.mts +3 -0
  282. package/dist/durable/SubmissionLedger.mjs +959 -0
  283. package/dist/durable/SubmissionLedger.mjs.map +1 -0
  284. package/dist/durable/SubmissionLedgerConformance.d.mts +29 -0
  285. package/dist/durable/SubmissionLedgerConformance.mjs +2187 -0
  286. package/dist/durable/SubmissionLedgerConformance.mjs.map +1 -0
  287. package/dist/durable/SubmissionStatus.d.mts +2 -0
  288. package/dist/durable/SubmissionStatus.mjs +18 -0
  289. package/dist/durable/SubmissionStatus.mjs.map +1 -0
  290. package/dist/durable/Subscription.d.mts +2 -0
  291. package/dist/durable/Subscription.mjs +360 -0
  292. package/dist/durable/Subscription.mjs.map +1 -0
  293. package/dist/durable/SubscriptionInput.d.mts +2 -0
  294. package/dist/durable/SubscriptionInput.mjs +52 -0
  295. package/dist/durable/SubscriptionInput.mjs.map +1 -0
  296. package/dist/durable/SubscriptionStoreConformance.d.mts +16 -0
  297. package/dist/durable/SubscriptionStoreConformance.mjs +625 -0
  298. package/dist/durable/SubscriptionStoreConformance.mjs.map +1 -0
  299. package/dist/durable/SubscriptionTools.d.mts +273 -0
  300. package/dist/durable/SubscriptionTools.mjs +190 -0
  301. package/dist/durable/SubscriptionTools.mjs.map +1 -0
  302. package/dist/durable/SubscriptionTransition.d.mts +21 -0
  303. package/dist/durable/SubscriptionTransition.mjs +148 -0
  304. package/dist/durable/SubscriptionTransition.mjs.map +1 -0
  305. package/dist/durable/Subscriptions.d.mts +73 -0
  306. package/dist/durable/Subscriptions.mjs +627 -0
  307. package/dist/durable/Subscriptions.mjs.map +1 -0
  308. package/dist/durable/ThreadContextHistory.d.mts +32 -0
  309. package/dist/durable/ThreadContextHistory.mjs +152 -0
  310. package/dist/durable/ThreadContextHistory.mjs.map +1 -0
  311. package/dist/durable/ThreadContextHistoryProjection.d.mts +60 -0
  312. package/dist/durable/ThreadContextHistoryProjection.mjs +149 -0
  313. package/dist/durable/ThreadContextHistoryProjection.mjs.map +1 -0
  314. package/dist/durable/ThreadInvariants.d.mts +76 -0
  315. package/dist/durable/ThreadInvariants.mjs +246 -0
  316. package/dist/durable/ThreadInvariants.mjs.map +1 -0
  317. package/dist/durable/ThreadProjection.d.mts +78 -0
  318. package/dist/durable/ThreadProjection.mjs +158 -0
  319. package/dist/durable/ThreadProjection.mjs.map +1 -0
  320. package/dist/durable/ThreadProjectionMaintenance.d.mts +49 -0
  321. package/dist/durable/ThreadProjectionMaintenance.mjs +33 -0
  322. package/dist/durable/ThreadProjectionMaintenance.mjs.map +1 -0
  323. package/dist/durable/ThreadStore.d.mts +2 -0
  324. package/dist/durable/ThreadStore.mjs +355 -0
  325. package/dist/durable/ThreadStore.mjs.map +1 -0
  326. package/dist/durable/ThreadStoreConformance.d.mts +28 -0
  327. package/dist/durable/ThreadStoreConformance.mjs +503 -0
  328. package/dist/durable/ThreadStoreConformance.mjs.map +1 -0
  329. package/dist/durable/ToolReconciler.d.mts +2 -0
  330. package/dist/durable/ToolReconciler.mjs +85 -0
  331. package/dist/durable/ToolReconciler.mjs.map +1 -0
  332. package/dist/durable/WakeScheduler.d.mts +2 -0
  333. package/dist/durable/WakeScheduler.mjs +85 -0
  334. package/dist/durable/WakeScheduler.mjs.map +1 -0
  335. package/dist/durable/WorkerHost.d.mts +129 -0
  336. package/dist/durable/WorkerHost.mjs +77 -0
  337. package/dist/durable/WorkerHost.mjs.map +1 -0
  338. package/dist/engine/AgentRuntime.d.mts +2 -0
  339. package/dist/engine/AgentRuntime.mjs +2 -0
  340. package/dist/engine/Compaction.d.mts +7 -0
  341. package/dist/engine/Compaction.mjs +16 -0
  342. package/dist/engine/Compaction.mjs.map +1 -0
  343. package/dist/engine/ContextCompactor.d.mts +2 -0
  344. package/dist/engine/ContextCompactor.mjs +119 -0
  345. package/dist/engine/ContextCompactor.mjs.map +1 -0
  346. package/dist/engine/ContextHistory.d.mts +65 -0
  347. package/dist/engine/ContextHistory.mjs +76 -0
  348. package/dist/engine/ContextHistory.mjs.map +1 -0
  349. package/dist/engine/ContextWindow.d.mts +2 -0
  350. package/dist/engine/ContextWindow.mjs +59 -0
  351. package/dist/engine/ContextWindow.mjs.map +1 -0
  352. package/dist/engine/DurableStep.d.mts +2 -0
  353. package/dist/engine/DurableStep.mjs +62 -0
  354. package/dist/engine/DurableStep.mjs.map +1 -0
  355. package/dist/engine/MessagingHost.d.mts +2 -0
  356. package/dist/engine/MessagingHost.mjs +2 -0
  357. package/dist/engine/Output.d.mts +2 -0
  358. package/dist/engine/Output.mjs +8 -0
  359. package/dist/engine/Output.mjs.map +1 -0
  360. package/dist/engine/RunEventSink.d.mts +2 -0
  361. package/dist/engine/RunEventSink.mjs +22 -0
  362. package/dist/engine/RunEventSink.mjs.map +1 -0
  363. package/dist/engine/RunOptions.d.mts +2 -0
  364. package/dist/engine/RunOptions.mjs +124 -0
  365. package/dist/engine/RunOptions.mjs.map +1 -0
  366. package/dist/engine/SubagentHost.d.mts +2 -0
  367. package/dist/engine/SubagentHost.mjs +76 -0
  368. package/dist/engine/SubagentHost.mjs.map +1 -0
  369. package/dist/engine/ThreadHistory.d.mts +2 -0
  370. package/dist/engine/ThreadHistory.mjs +67 -0
  371. package/dist/engine/ThreadHistory.mjs.map +1 -0
  372. package/dist/engine/ToolBroker.d.mts +2 -0
  373. package/dist/engine/ToolBroker.mjs +42 -0
  374. package/dist/engine/ToolBroker.mjs.map +1 -0
  375. package/dist/foreign-diagnostic-DBQ1XHKh.mjs +37 -0
  376. package/dist/foreign-diagnostic-DBQ1XHKh.mjs.map +1 -0
  377. package/dist/index.d.mts +91 -6
  378. package/dist/index.mjs +100 -6
  379. package/dist/output-contract-BC7tjlGw.mjs +84 -0
  380. package/dist/output-contract-BC7tjlGw.mjs.map +1 -0
  381. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  382. package/dist/sandbox/CodeExecutor.d.mts +194 -0
  383. package/dist/sandbox/CodeExecutor.mjs +278 -0
  384. package/dist/sandbox/CodeExecutor.mjs.map +1 -0
  385. package/dist/sandbox/InteractiveBrowser.d.mts +257 -0
  386. package/dist/sandbox/InteractiveBrowser.mjs +236 -0
  387. package/dist/sandbox/InteractiveBrowser.mjs.map +1 -0
  388. package/dist/sandbox/PageCapture.d.mts +2 -0
  389. package/dist/sandbox/PageCapture.mjs +450 -0
  390. package/dist/sandbox/PageCapture.mjs.map +1 -0
  391. package/dist/sandbox/PageCrawl.d.mts +88 -0
  392. package/dist/sandbox/PageCrawl.mjs +124 -0
  393. package/dist/sandbox/PageCrawl.mjs.map +1 -0
  394. package/dist/sandbox/PageScreenshot.d.mts +2 -0
  395. package/dist/sandbox/PageScreenshot.mjs +53 -0
  396. package/dist/sandbox/PageScreenshot.mjs.map +1 -0
  397. package/dist/sandbox/ProtectedBrowser.d.mts +283 -0
  398. package/dist/sandbox/ProtectedBrowser.mjs +298 -0
  399. package/dist/sandbox/ProtectedBrowser.mjs.map +1 -0
  400. package/dist/sandbox/Sandbox.d.mts +2 -0
  401. package/dist/sandbox/Sandbox.mjs +208 -0
  402. package/dist/sandbox/Sandbox.mjs.map +1 -0
  403. package/dist/utf8-BYfhEkcj.mjs +11 -0
  404. package/dist/utf8-BYfhEkcj.mjs.map +1 -0
  405. package/dist/utf8-DchGZRBd.mjs +23 -0
  406. package/dist/utf8-DchGZRBd.mjs.map +1 -0
  407. package/package.json +1 -40
  408. package/src/InMemory.ts +19 -0
  409. package/src/ToolExposure.ts +2 -0
  410. package/src/capabilities/Approval.ts +352 -0
  411. package/src/capabilities/Budget.ts +536 -0
  412. package/src/capabilities/CodeMode.ts +1090 -0
  413. package/src/capabilities/Commands.ts +86 -0
  414. package/src/capabilities/ContextTools.ts +184 -0
  415. package/src/capabilities/Mcp.ts +426 -0
  416. package/src/capabilities/McpClient.ts +967 -0
  417. package/src/capabilities/MemoryNotes.ts +174 -0
  418. package/src/capabilities/Messaging.ts +261 -0
  419. package/src/capabilities/ModelContext.ts +354 -0
  420. package/src/capabilities/Redaction.ts +157 -0
  421. package/src/capabilities/Remembering.ts +550 -0
  422. package/src/capabilities/RunHooks.ts +280 -0
  423. package/src/capabilities/SemanticMemory.ts +447 -0
  424. package/src/capabilities/Subagent.ts +2489 -0
  425. package/src/capabilities/SubagentReservations.ts +850 -0
  426. package/src/capabilities/ToolDiscovery.ts +369 -0
  427. package/src/capabilities/WebCapture.ts +722 -0
  428. package/src/capabilities/WebSearch.ts +190 -0
  429. package/src/capabilities/internal/subagent-background.ts +1273 -0
  430. package/src/capabilities/internal/subagent-contract.ts +146 -0
  431. package/src/capabilities/internal/subagent-policy.ts +235 -0
  432. package/src/capabilities/internal/subagent-reporting.ts +136 -0
  433. package/src/capabilities/internal/utf8.ts +10 -0
  434. package/src/core/Agent.ts +602 -0
  435. package/src/core/AgentError.ts +172 -0
  436. package/src/core/AgentPolicy.ts +153 -0
  437. package/src/core/AgentUpdates.ts +100 -0
  438. package/src/core/FailureDiagnostic.ts +343 -0
  439. package/src/core/IdGenerator.ts +39 -0
  440. package/src/core/Identifiers.ts +48 -0
  441. package/src/core/Memory.ts +290 -0
  442. package/src/core/MemoryNamespace.ts +196 -0
  443. package/src/core/MemoryReference.ts +121 -0
  444. package/src/core/MemoryRevalidation.ts +185 -0
  445. package/src/core/MemoryStore.ts +368 -0
  446. package/src/core/Messaging.ts +72 -0
  447. package/src/core/Receipt.ts +42 -0
  448. package/src/core/RememberingStore.ts +300 -0
  449. package/src/core/RunEvent.ts +366 -0
  450. package/src/core/RunPolicyUsage.ts +17 -0
  451. package/src/core/SemanticMemoryIndex.ts +250 -0
  452. package/src/core/SemanticMemoryRevalidation.ts +254 -0
  453. package/src/core/SubagentContract.ts +196 -0
  454. package/src/core/Thread.ts +371 -0
  455. package/src/core/ToolExposure.ts +74 -0
  456. package/src/core/ToolResult.ts +190 -0
  457. package/src/core/Usage.ts +529 -0
  458. package/src/core/Worker.ts +240 -0
  459. package/src/core/internal/agent-updates.ts +34 -0
  460. package/src/core/internal/message-status.ts +60 -0
  461. package/src/core/internal/strict-schema.ts +14 -0
  462. package/src/core/internal/utf8.ts +23 -0
  463. package/src/durable/ActivityStore.ts +160 -0
  464. package/src/durable/Admin.ts +505 -0
  465. package/src/durable/AgentRegistration.ts +14 -0
  466. package/src/durable/Certification.ts +210 -0
  467. package/src/durable/CommittedActivity.ts +296 -0
  468. package/src/durable/Digest.ts +87 -0
  469. package/src/durable/DurableAgentRuntime.ts +11275 -0
  470. package/src/durable/DurableFailpoint.ts +111 -0
  471. package/src/durable/DurableFailpointTestControl.ts +39 -0
  472. package/src/durable/EventSource.ts +172 -0
  473. package/src/durable/GitHubWorkflowSource.ts +447 -0
  474. package/src/durable/MessageDelivery.ts +832 -0
  475. package/src/durable/MessageDeliveryStoreConformance.ts +410 -0
  476. package/src/durable/OperationAuthorizer.ts +85 -0
  477. package/src/durable/PersistentHistory.ts +260 -0
  478. package/src/durable/PreparedInputAdmission.ts +57 -0
  479. package/src/durable/Records.ts +1075 -0
  480. package/src/durable/Recovery.ts +1018 -0
  481. package/src/durable/RunJournal.ts +1631 -0
  482. package/src/durable/Schedule.ts +513 -0
  483. package/src/durable/ScheduleStoreConformance.ts +638 -0
  484. package/src/durable/ScheduleTransition.ts +265 -0
  485. package/src/durable/Scheduling.ts +1077 -0
  486. package/src/durable/SqlMemoryStore.ts +778 -0
  487. package/src/durable/SqlMessageDeliveryStore.ts +335 -0
  488. package/src/durable/SqlStorageV2Upgrade.ts +500 -0
  489. package/src/durable/SqlSubscriptionStore.ts +1440 -0
  490. package/src/durable/SqlThreadNativeReads.ts +270 -0
  491. package/src/durable/SubmissionLedger.ts +1265 -0
  492. package/src/durable/SubmissionLedgerConformance.ts +4820 -0
  493. package/src/durable/SubmissionStatus.ts +14 -0
  494. package/src/durable/Subscription.ts +544 -0
  495. package/src/durable/SubscriptionInput.ts +144 -0
  496. package/src/durable/SubscriptionStoreConformance.ts +945 -0
  497. package/src/durable/SubscriptionTools.ts +327 -0
  498. package/src/durable/SubscriptionTransition.ts +302 -0
  499. package/src/durable/Subscriptions.ts +1210 -0
  500. package/src/durable/ThreadContextHistory.ts +227 -0
  501. package/src/durable/ThreadContextHistoryProjection.ts +216 -0
  502. package/src/durable/ThreadInvariants.ts +507 -0
  503. package/src/durable/ThreadProjection.ts +269 -0
  504. package/src/durable/ThreadProjectionMaintenance.ts +67 -0
  505. package/src/durable/ThreadStore.ts +573 -0
  506. package/src/durable/ThreadStoreConformance.ts +1156 -0
  507. package/src/durable/ToolReconciler.ts +109 -0
  508. package/src/durable/WakeScheduler.ts +134 -0
  509. package/src/durable/WorkerHost.ts +171 -0
  510. package/src/durable/internal/agent-registration.ts +587 -0
  511. package/src/durable/internal/agent-updates.ts +302 -0
  512. package/src/durable/internal/foreign-diagnostic.ts +47 -0
  513. package/src/durable/internal/journal-checkpoint.ts +104 -0
  514. package/src/durable/internal/journal-metadata.ts +117 -0
  515. package/src/durable/internal/message-status.ts +20 -0
  516. package/src/durable/internal/messaging-host.ts +637 -0
  517. package/src/durable/internal/schedule-time.ts +303 -0
  518. package/src/durable/internal/storage-v2-layout.ts +163 -0
  519. package/src/durable/internal/storage-v2.ts +73 -0
  520. package/src/durable/internal/worker-host.ts +2885 -0
  521. package/src/durable/internal/worker-runtime.ts +9 -0
  522. package/src/engine/AgentRuntime.ts +37 -0
  523. package/src/engine/Compaction.ts +11 -0
  524. package/src/engine/ContextCompactor.ts +277 -0
  525. package/src/engine/ContextHistory.ts +73 -0
  526. package/src/engine/ContextWindow.ts +72 -0
  527. package/src/engine/DurableStep.ts +132 -0
  528. package/src/engine/MessagingHost.ts +110 -0
  529. package/src/engine/Output.ts +2 -0
  530. package/src/engine/RunEventSink.ts +132 -0
  531. package/src/engine/RunOptions.ts +1101 -0
  532. package/src/engine/SubagentHost.ts +230 -0
  533. package/src/engine/ThreadHistory.ts +120 -0
  534. package/src/engine/ToolBroker.ts +157 -0
  535. package/src/engine/ToolExposure.ts +48 -0
  536. package/src/engine/internal/agent-runtime.ts +10500 -0
  537. package/src/engine/internal/bounded-value.ts +315 -0
  538. package/src/engine/internal/compaction.ts +678 -0
  539. package/src/engine/internal/error-diagnostic.ts +39 -0
  540. package/src/engine/internal/output-contract.ts +173 -0
  541. package/src/engine/internal/primitive-delta.ts +80 -0
  542. package/src/engine/internal/provider-result-staging.ts +211 -0
  543. package/src/engine/internal/tool-derivative.ts +106 -0
  544. package/src/engine/internal/tool-exposure.ts +224 -0
  545. package/src/engine/internal/tool-telemetry.ts +484 -0
  546. package/src/index.ts +99 -21
  547. package/src/sandbox/CodeExecutor.ts +352 -0
  548. package/src/sandbox/InteractiveBrowser.ts +339 -0
  549. package/src/sandbox/PageCapture.ts +691 -0
  550. package/src/sandbox/PageCrawl.ts +148 -0
  551. package/src/sandbox/PageScreenshot.ts +81 -0
  552. package/src/sandbox/ProtectedBrowser.ts +452 -0
  553. package/src/sandbox/Sandbox.ts +241 -0
@@ -0,0 +1,848 @@
1
+ import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.mjs";
2
+ import { AgentId, AttemptId, DelegationId, ReceiptId, RunId, SettlementId, SubmissionId, ThreadId, ToolCallId, TurnId } from "../core/Identifiers.mjs";
3
+ import { n as utf8ByteLength } from "../utf8-DchGZRBd.mjs";
4
+ import { ToolParameterRejection } from "../core/ToolResult.mjs";
5
+ import { AgentPolicy } from "../core/AgentPolicy.mjs";
6
+ import { IdempotencyKey, Principal } from "../core/Receipt.mjs";
7
+ import { Update } from "../core/AgentUpdates.mjs";
8
+ import { i as Failure } from "../FailureDiagnostic-BElLOoED.mjs";
9
+ import { PolicyLimit } from "../core/AgentError.mjs";
10
+ import { DelegationDepth, SubagentBudgetReservation, SubagentGrant, SubagentParentLink, ToolExecutionKind } from "../core/SubagentContract.mjs";
11
+ import { o as Selection, s as Snapshot } from "../ToolExposure-C93U1sPu.mjs";
12
+ import { ModelCallUsage, RunTotals, RunUsageSummary } from "../core/Usage.mjs";
13
+ import { ExhaustedLimit } from "../core/RunEvent.mjs";
14
+ import { _ as WorkerStop, a as WorkerBudgetScope, f as WorkerRef, h as WorkerSource } from "../Worker-CfwzMZEK.mjs";
15
+ import { l as InputMessage } from "../MessagingHost-DfsbMPvq.mjs";
16
+ import { ContextHandoff } from "../engine/ContextWindow.mjs";
17
+ import { RunPolicyUsage } from "../core/RunPolicyUsage.mjs";
18
+ import { Prompt } from "effect/unstable/ai";
19
+ import { Option, Schema } from "effect";
20
+ //#region src/durable/Records.ts
21
+ var Records_exports = /* @__PURE__ */ __exportAll({
22
+ AbortRequested: () => AbortRequested,
23
+ AgentUpdateEmitted: () => AgentUpdateEmitted,
24
+ ApprovalDecision: () => ApprovalDecision,
25
+ BatchId: () => BatchId,
26
+ CURRENT_CANONICAL_SCHEMA_VERSION: () => 1,
27
+ CanonicalBatch: () => CanonicalBatch,
28
+ CanonicalRecord: () => CanonicalRecord,
29
+ CanonicalRecordEnvelope: () => CanonicalRecordEnvelope,
30
+ CanonicalRecordPayload: () => CanonicalRecordPayload,
31
+ CanonicalSequence: () => CanonicalSequence,
32
+ CompactionCreated: () => CompactionCreated,
33
+ DefinitionDigestInput: () => DefinitionDigestInput,
34
+ DefinitionDigests: () => DefinitionDigests,
35
+ DeploymentId: () => DeploymentId,
36
+ Digest: () => Digest,
37
+ MAX_PERSISTED_JSON_BYTES: () => MAX_PERSISTED_JSON_BYTES,
38
+ MAX_PERSISTED_JSON_COLLECTION_LENGTH: () => MAX_PERSISTED_JSON_COLLECTION_LENGTH,
39
+ MAX_PERSISTED_JSON_DEPTH: () => 64,
40
+ MAX_PERSISTED_JSON_NODES: () => MAX_PERSISTED_JSON_NODES,
41
+ ModelCompleted: () => ModelCompleted,
42
+ ModelResponseInterrupted: () => ModelResponseInterrupted,
43
+ ModelResponseRecorded: () => ModelResponseRecorded,
44
+ ObservationOffset: () => ObservationOffset,
45
+ PeerMessagePrepared: () => PeerMessagePrepared,
46
+ PersistedJson: () => PersistedJson,
47
+ ProducerEpoch: () => ProducerEpoch,
48
+ ProducerId: () => ProducerId,
49
+ RecordEnvelope: () => RecordEnvelope,
50
+ RecordId: () => RecordId,
51
+ RepairAnnotated: () => RepairAnnotated,
52
+ ReplayContract: () => ReplayContract,
53
+ RunCompleted: () => RunCompleted,
54
+ RunDurationExhausted: () => RunDurationExhausted,
55
+ RunFailed: () => RunFailed,
56
+ RunPolicyUsageReserved: () => RunPolicyUsageReserved,
57
+ RunStartedRecord: () => RunStartedRecord,
58
+ SettlementFailureDiagnostic: () => SettlementFailureDiagnostic,
59
+ SettlementOutcome: () => SettlementOutcome,
60
+ SubagentJoined: () => SubagentJoined,
61
+ SubagentLineageRecorded: () => SubagentLineageRecorded,
62
+ SubagentRequested: () => SubagentRequested,
63
+ SubagentStarted: () => SubagentStarted,
64
+ SubmissionSettled: () => SubmissionSettled,
65
+ SubmissionSettledRecord: () => SubmissionSettledRecord,
66
+ SubtreeBudgetReserved: () => SubtreeBudgetReserved,
67
+ ThreadCreated: () => ThreadCreated,
68
+ ToolApprovalDecided: () => ToolApprovalDecided,
69
+ ToolApprovalRequested: () => ToolApprovalRequested,
70
+ ToolCallPrepared: () => ToolCallPrepared,
71
+ ToolCallResolution: () => ToolCallResolution,
72
+ ToolCallResolved: () => ToolCallResolved,
73
+ ToolCallSettled: () => ToolCallSettled,
74
+ ToolCallUnknown: () => ToolCallUnknown,
75
+ ToolOperation: () => ToolOperation,
76
+ ToolStepSettled: () => ToolStepSettled,
77
+ ToolUnavailable: () => ToolUnavailable,
78
+ UserInputRecorded: () => UserInputRecorded,
79
+ WorkerAdmission: () => WorkerAdmission,
80
+ WorkerInputCompleted: () => WorkerInputCompleted,
81
+ WorkerInputRequested: () => WorkerInputRequested,
82
+ WorkerOrigin: () => WorkerOrigin,
83
+ WorkerOriginRecorded: () => WorkerOriginRecorded,
84
+ WorkerReportPrepared: () => WorkerReportPrepared,
85
+ WorkerReportRefused: () => WorkerReportRefused,
86
+ WorkerReportingIntent: () => WorkerReportingIntent,
87
+ WorkerStopRequested: () => WorkerStopRequested
88
+ });
89
+ const identifier = (name) => Schema.NonEmptyString.pipe(Schema.brand(`@effect-agent/thread/${name}`));
90
+ /** Stable identity of one canonical record. */
91
+ const RecordId = identifier("RecordId");
92
+ /** Stable idempotency identity of one atomic append. */
93
+ const BatchId = identifier("BatchId");
94
+ /** Identity of the deployment that produced a record. */
95
+ const DeploymentId = identifier("DeploymentId");
96
+ /** Identity of a fenced canonical-log producer. */
97
+ const ProducerId = identifier("ProducerId");
98
+ /** SHA-256 digest encoded as lowercase hexadecimal text. */
99
+ const Digest = Schema.String.check(Schema.isPattern(/^[a-f0-9]{64}$/)).pipe(Schema.brand("@effect-agent/thread/Digest"));
100
+ /** Adapter-owned resume cursor. Callers must not parse or synthesize it. */
101
+ const ObservationOffset = identifier("ObservationOffset");
102
+ /** Gap-free position in one Thread's canonical sequence. */
103
+ const CanonicalSequence = Schema.Natural.pipe(Schema.brand("@effect-agent/thread/CanonicalSequence"));
104
+ /** Monotonic fencing epoch for a Thread producer. */
105
+ const ProducerEpoch = Schema.Natural.pipe(Schema.brand("@effect-agent/thread/ProducerEpoch"));
106
+ const BoundedText = Schema.String.check(Schema.isMaxLength(65536));
107
+ const BoundedName = Schema.NonEmptyString.check(Schema.isMaxLength(256));
108
+ /**
109
+ * Private failed-Settlement evidence. The summary remains the safe public projection; diagnostic
110
+ * and context preserve structured causal evidence for authorized operators, never model context.
111
+ * Optional fields allow reading supported Settlements written before causal capture was available.
112
+ */
113
+ const SettlementFailureDiagnostic = Failure.pipe(Schema.annotate({ identifier: "@effect-agent/thread/SettlementFailureDiagnostic" }));
114
+ /** Positive canonical (Run-relative, Attempt-independent) Turn number. */
115
+ const TurnNumber = Schema.Int.check(Schema.isGreaterThan(0));
116
+ const MAX_PERSISTED_JSON_DEPTH = 64;
117
+ const MAX_PERSISTED_JSON_COLLECTION_LENGTH = 4096;
118
+ const MAX_PERSISTED_JSON_NODES = 65536;
119
+ const MAX_PERSISTED_JSON_BYTES = 1048576;
120
+ /**
121
+ * Iteratively preflights an unknown value before Schema's recursive JSON validation. This is the
122
+ * one narrow `Schema.declare` exception in the persistence model: Effect v4's `Unknown.decodeTo`
123
+ * preserves `unknown` as the encoded type, which would leak through every nested record codec.
124
+ * Schema.Json still owns the accepted value shape after this resource preflight succeeds.
125
+ */
126
+ const isJson = Schema.is(Schema.Json);
127
+ const isPersistedJson = (input) => {
128
+ const pending = [{
129
+ _tag: "visit",
130
+ value: input,
131
+ depth: 0
132
+ }];
133
+ const ancestors = /* @__PURE__ */ new WeakSet();
134
+ let nodes = 0;
135
+ let textUnits = 0;
136
+ try {
137
+ while (pending.length > 0) {
138
+ const current = pending.pop();
139
+ if (current === void 0) return false;
140
+ if (current._tag === "leave") {
141
+ ancestors.delete(current.value);
142
+ continue;
143
+ }
144
+ if (current.depth > 64 || ++nodes > 65536) return false;
145
+ const value = current.value;
146
+ if (value === null || typeof value === "boolean") continue;
147
+ if (typeof value === "number") {
148
+ if (!Number.isFinite(value)) return false;
149
+ continue;
150
+ }
151
+ if (typeof value === "string") {
152
+ textUnits += value.length;
153
+ if (textUnits > 1048576) return false;
154
+ continue;
155
+ }
156
+ if (typeof value !== "object" || ancestors.has(value)) return false;
157
+ ancestors.add(value);
158
+ pending.push({
159
+ _tag: "leave",
160
+ value
161
+ });
162
+ const entries = Array.isArray(value) ? Array.from(value, (entry, index) => [index, entry]) : Object.entries(value);
163
+ if (entries.length > 4096) return false;
164
+ for (const [key, entry] of entries) {
165
+ textUnits += typeof key === "string" ? key.length : 0;
166
+ if (textUnits > 1048576) return false;
167
+ pending.push({
168
+ _tag: "visit",
169
+ value: entry,
170
+ depth: current.depth + 1
171
+ });
172
+ }
173
+ }
174
+ if (!isJson(input)) return false;
175
+ const encoded = JSON.stringify(input);
176
+ return encoded !== void 0 && utf8ByteLength(encoded) <= 1048576;
177
+ } catch {
178
+ return false;
179
+ }
180
+ };
181
+ /** Canonical JSON admitted to persisted records and checkpoints under explicit resource limits. */
182
+ const PersistedJson = Schema.declare(isPersistedJson, {
183
+ identifier: "@effect-agent/thread/PersistedJson",
184
+ description: "JSON bounded by canonical persistence depth, collection, node, and byte limits"
185
+ });
186
+ /** Schema-owned replay inputs whose individual definitions are incorporated into digests. */
187
+ var DefinitionDigestInput = class extends Schema.Class("@effect-agent/thread/DefinitionDigestInput")({
188
+ agent: PersistedJson,
189
+ model: PersistedJson,
190
+ tools: PersistedJson
191
+ }) {};
192
+ /** Admission-time operation fingerprints. Agent fingerprints remain immutable evidence only. */
193
+ var ReplayContract = class extends Schema.Class("@effect-agent/thread/ReplayContract")({
194
+ agent: Digest,
195
+ /** Retained for reading earlier admissions; never selects executable code. */
196
+ agentBehavior: Schema.optionalKey(Digest),
197
+ tools: Schema.Record(Schema.String, Digest)
198
+ }) {};
199
+ /** Digests identify admission exactly; only an unfinished operation needs replay compatibility. */
200
+ var DefinitionDigests = class extends Schema.Class("@effect-agent/thread/DefinitionDigests")({
201
+ agent: Digest,
202
+ model: Digest,
203
+ tools: Digest,
204
+ replay: Schema.optionalKey(ReplayContract)
205
+ }) {};
206
+ var ThreadCreated = class extends Schema.TaggedClass("@effect-agent/thread/ThreadCreated")("ThreadCreated", {
207
+ agentId: AgentId,
208
+ definitions: DefinitionDigests
209
+ }) {};
210
+ /**
211
+ * One recorded Thread input. `submissionId` is present only for durably accepted work;
212
+ * retained history has no admission or settlement obligation. `kind` identifies the input seam.
213
+ */
214
+ var UserInputRecorded = class extends Schema.TaggedClass("@effect-agent/thread/UserInputRecorded")("UserInputRecorded", {
215
+ submissionId: Schema.optionalKey(SubmissionId),
216
+ kind: Schema.Literals([
217
+ "user",
218
+ "steering",
219
+ "follow-up"
220
+ ]),
221
+ runId: Schema.optionalKey(RunId),
222
+ input: PersistedJson,
223
+ messageAdmission: Schema.optionalKey(InputMessage)
224
+ }) {};
225
+ /** Immutable Run start and per-Attempt duration allowance, before any agent execution. */
226
+ var RunStartedRecord = class extends Schema.TaggedClass("@effect-agent/thread/RunStartedRecord")("RunStarted", {
227
+ runId: RunId,
228
+ /** Older private histories cannot prove programmatic accounting and must be reset. */
229
+ policyAccountingVersion: Schema.Literal(1),
230
+ maxDurationMillis: Schema.Finite.check(Schema.isGreaterThan(0))
231
+ }) {};
232
+ /** An active Attempt exhausted its execution allowance; downtime alone never writes this. */
233
+ var RunDurationExhausted = class extends Schema.TaggedClass("@effect-agent/thread/RunDurationExhausted")("RunDurationExhausted", { runId: RunId }) {};
234
+ const PersistedPromptMessages = Schema.toEncoded(Prompt.Prompt);
235
+ const isPersistedPromptMessages = Schema.is(PersistedPromptMessages);
236
+ /**
237
+ * Final model output. Immediate history may include the exact encoded Prompt suffix of the
238
+ * successful Run; durable execution instead journals individual ModelResponseRecorded Turns.
239
+ */
240
+ var ModelCompleted = class extends Schema.TaggedClass("@effect-agent/thread/ModelCompleted")("ModelCompleted", Schema.Struct({
241
+ runId: RunId,
242
+ output: PersistedJson,
243
+ messages: Schema.optionalKey(PersistedJson)
244
+ }).check(Schema.makeFilter((record) => record.messages === void 0 || isPersistedPromptMessages(record.messages), { title: "Retained Run messages are Schema-encoded Effect AI Prompt messages" }))) {};
245
+ var ToolCallSettled = class extends Schema.TaggedClass("@effect-agent/thread/ToolCallSettled")("ToolCallSettled", {
246
+ toolSelection: Schema.optionalKey(Selection),
247
+ runId: RunId,
248
+ toolCallId: ToolCallId,
249
+ toolName: BoundedName,
250
+ result: PersistedJson,
251
+ isFailure: Schema.Boolean,
252
+ /** Explicit engine evidence, never inferred from Tool result data. */
253
+ budgetRejected: Schema.optionalKey(Schema.Literal(true))
254
+ }) {};
255
+ /** Compact execution evidence committed with a declaration, before any handler can start. */
256
+ var ToolOperation = class extends Schema.Class("@effect-agent/thread/ToolOperation")({
257
+ toolCallId: ToolCallId,
258
+ toolName: BoundedName,
259
+ executionClass: Schema.Literals([
260
+ "readonly",
261
+ "idempotent",
262
+ "uncertain"
263
+ ]),
264
+ executionKind: ToolExecutionKind,
265
+ replay: Digest
266
+ }) {};
267
+ /** A retired call's runtime result. Unavailable readonly work may already have been observed. */
268
+ var ToolUnavailable = class extends Schema.TaggedClass()("ToolUnavailable", {
269
+ toolName: BoundedName,
270
+ execution: Schema.Literals(["not-executed", "unavailable"]),
271
+ message: BoundedText
272
+ }) {};
273
+ /**
274
+ * One committed model Turn. `messages` carries the Schema-encoded Effect AI Prompt messages this
275
+ * Turn appended (assistant response plus any tool-call declarations), committed atomically at the
276
+ * Turn boundary so a recovering Attempt can rebuild the next Prompt from canonical records alone.
277
+ * `messagesDigest` pins the exact encoded content.
278
+ */
279
+ const ModelResponseRecordedFields = Schema.Struct({
280
+ /** Original operation identity/semantics, independent of later Agent and toolbox changes. */
281
+ toolOperations: Schema.optionalKey(Schema.Array(ToolOperation)),
282
+ /** Explicit pre-execution failures, committed with the original arguments before any approval. */
283
+ toolParameterRejections: Schema.optionalKey(Schema.Array(ToolParameterRejection)),
284
+ toolExposure: Schema.optionalKey(Snapshot),
285
+ runId: RunId,
286
+ turnId: TurnId,
287
+ turn: TurnNumber,
288
+ messages: PersistedJson,
289
+ messagesDigest: Digest,
290
+ /**
291
+ * Number of leading messages that belong only to this Run's evaluated instructions and wake
292
+ * input. They remain canonical. Continuations replace the instruction messages with current
293
+ * instructions while retaining user input; later Runs also retain that original user intent.
294
+ * Records without this field retain their full history.
295
+ */
296
+ runScopedPrefixLength: Schema.optionalKey(Schema.Int.check(Schema.isGreaterThan(0))),
297
+ /**
298
+ * Exact normalized usage for every model call staged into this Turn. A
299
+ * summarizer and the Turn response are distinct entries. Absent on legacy
300
+ * records, whose aggregate totals below retain the old resume behavior.
301
+ */
302
+ modelUsage: Schema.optionalKey(Schema.Array(ModelCallUsage)),
303
+ /** Observed invocations without retained accounting before this Turn committed. */
304
+ unobservedModelCalls: Schema.optionalKey(Schema.Natural),
305
+ /** Aggregate compatibility fields used by older projections. */
306
+ inputTokens: Schema.optionalKey(Schema.Natural),
307
+ outputTokens: Schema.optionalKey(Schema.Natural),
308
+ /** Estimated spend staged with the usage; recovery re-seeds the cost budget (RUN-023). */
309
+ costMicrousd: Schema.optionalKey(Schema.Natural)
310
+ }).check(Schema.makeFilter((response) => response.runScopedPrefixLength === void 0 || isPersistedPromptMessages(response.messages) && response.runScopedPrefixLength < response.messages.content.length && response.messages.content.slice(0, response.runScopedPrefixLength).every((message) => message.role === "system" || message.role === "user"), { title: "Run-scoped Prompt prefix contains only instruction/wake messages and leaves one response" }));
311
+ var ModelResponseRecorded = class extends Schema.TaggedClass("@effect-agent/thread/ModelResponseRecorded")("ModelResponseRecorded", ModelResponseRecordedFields) {};
312
+ /**
313
+ * One approved uncertain/idempotent ordinary Tool Call made durable BEFORE any handler starts
314
+ * (durability §10). `parameters` is the Schema-encoded wire form of the declared call and
315
+ * `parametersDigest` pins it; recovery that sees this record without a matching `ToolCallSettled`
316
+ * (or `ToolCallUnknown` → `ToolCallResolved`) must reconcile or mark unknown, never silently
317
+ * replay (DUR-009). Ordinary `readonly`-class Tools never produce this record. Delegation
318
+ * classification is always prepared, including for a Tool annotated `readonly`.
319
+ */
320
+ var ToolCallPrepared = class extends Schema.TaggedClass("@effect-agent/thread/ToolCallPrepared")("ToolCallPrepared", {
321
+ runId: RunId,
322
+ turnId: TurnId,
323
+ turn: TurnNumber,
324
+ toolCallId: ToolCallId,
325
+ toolName: BoundedName,
326
+ parameters: PersistedJson,
327
+ parametersDigest: Digest,
328
+ /** Absent legacy evidence grants no delegation replay authority. */
329
+ executionKind: Schema.optionalKey(ToolExecutionKind),
330
+ executionClass: Schema.optionalKey(ToolOperation.fields.executionClass),
331
+ replay: Schema.optionalKey(Digest)
332
+ }) {};
333
+ /** Monotonic reservations charged before programmatic execution or grace finalization. */
334
+ var RunPolicyUsageReserved = class extends Schema.TaggedClass()("RunPolicyUsageReserved", {
335
+ runId: RunId,
336
+ programmaticToolCalls: RunPolicyUsage.fields.programmaticToolCalls,
337
+ finalizationUsed: RunPolicyUsage.fields.finalizationUsed
338
+ }) {};
339
+ /**
340
+ * A durable Unknown Outcome: the external effect of one prepared ordinary Tool Call may have
341
+ * happened but was not confirmed canonically (DUR-009/DUR-017). It is neither success nor
342
+ * ordinary failure; automatic continuation stops until an authorized resolution arrives.
343
+ */
344
+ var ToolCallUnknown = class extends Schema.TaggedClass("@effect-agent/thread/ToolCallUnknown")("ToolCallUnknown", {
345
+ runId: RunId,
346
+ turn: TurnNumber,
347
+ toolCallId: ToolCallId,
348
+ toolName: BoundedName,
349
+ reason: BoundedText
350
+ }) {};
351
+ /** How one open/unknown Tool Call was authoritatively closed (DUR-017 resolution audit). */
352
+ const ToolCallResolution = Schema.Literals([
353
+ "completed-with-result",
354
+ "failed-with-error",
355
+ "never-started",
356
+ "safe-retry"
357
+ ]);
358
+ /**
359
+ * The canonical audit record closing one open or unknown Tool Call: reconciler-recovered supplier
360
+ * truth or an authorized `resolveUnknown` command. `author`/`reason` make every resolution an
361
+ * attributable decision (DUR-017); a `completed-with-result` resolution is accompanied by the
362
+ * per-call `ToolCallSettled` record carrying the recovered result.
363
+ */
364
+ var ToolCallResolved = class extends Schema.TaggedClass("@effect-agent/thread/ToolCallResolved")("ToolCallResolved", {
365
+ runId: RunId,
366
+ toolCallId: ToolCallId,
367
+ resolution: ToolCallResolution,
368
+ author: BoundedName,
369
+ reason: BoundedText
370
+ }) {};
371
+ /**
372
+ * One accepted Durable Step result (durability §11): exactly-once-recorded while the Step's
373
+ * external side effect stays honestly at-least-once-executed. Only success is recorded — a failing
374
+ * Step body fails into the handler's error channel and re-executes on re-entry. `output` is the
375
+ * Schema-encoded Step output; `outputDigest` pins it for replay-divergence detection.
376
+ */
377
+ var ToolStepSettled = class extends Schema.TaggedClass("@effect-agent/thread/ToolStepSettled")("ToolStepSettled", {
378
+ runId: RunId,
379
+ toolCallId: ToolCallId,
380
+ stepName: BoundedName,
381
+ output: PersistedJson,
382
+ outputDigest: Digest
383
+ }) {};
384
+ /**
385
+ * A canonical approval request for one declared Tool Call (CAP-006, durability §8): with this
386
+ * record durable, "waiting for explicit approval" is a safe suspension boundary — the resumed
387
+ * Attempt replays the declared batch instead of re-invoking the model.
388
+ */
389
+ var ToolApprovalRequested = class extends Schema.TaggedClass("@effect-agent/thread/ToolApprovalRequested")("ToolApprovalRequested", {
390
+ runId: RunId,
391
+ turnId: TurnId,
392
+ turn: TurnNumber,
393
+ toolCallId: ToolCallId,
394
+ toolName: BoundedName,
395
+ parametersDigest: Digest
396
+ }) {};
397
+ /** The two-valued approval decision family shared by canonical records and ledger intents. */
398
+ const ApprovalDecision = Schema.Literals(["approved", "denied"]);
399
+ /**
400
+ * The canonical decision for one requested approval. Appended by the deciding Attempt (policy
401
+ * auto-decisions) or by the resuming Attempt after a durable `resolveApproval` intent; it is the
402
+ * deterministic decision authority for every later Attempt of the same Run.
403
+ */
404
+ var ToolApprovalDecided = class extends Schema.TaggedClass("@effect-agent/thread/ToolApprovalDecided")("ToolApprovalDecided", {
405
+ runId: RunId,
406
+ turn: TurnNumber,
407
+ toolCallId: ToolCallId,
408
+ decision: ApprovalDecision,
409
+ resolver: BoundedName,
410
+ reason: BoundedText
411
+ }) {};
412
+ /**
413
+ * First-class interruption audit (durability §9): appended by a superseding Attempt before it
414
+ * re-invokes the model for a Turn whose prior owner died without a complete canonical response.
415
+ * Duplicate provider cost is thereby possible AND observable in canonical history.
416
+ */
417
+ var ModelResponseInterrupted = class extends Schema.TaggedClass("@effect-agent/thread/ModelResponseInterrupted")("ModelResponseInterrupted", {
418
+ runId: RunId,
419
+ supersededEpoch: ProducerEpoch,
420
+ attemptId: AttemptId,
421
+ reason: BoundedText
422
+ }) {};
423
+ /**
424
+ * One engine-native compaction committed before the pre-Turn view changes (RUN-026).
425
+ * `coversThrough` is a Thread record sequence: the projection
426
+ * renders records at or below it as a summary (`summarize`), a fresh window (`rollover`), or with
427
+ * cleared tool results (kind `clear-tool-results`), never erasing source
428
+ * history. The record carries no digest by decision: it is appended by the
429
+ * fenced owner into the very log it covers, and re-verifying a digest would
430
+ * re-read the covered range on every wake — the O(history) work compaction
431
+ * exists to remove. Host-supplied ContextCompactor decisions use this same commit path.
432
+ * Summaries exceeding BoundedText are rejected before append, never truncated.
433
+ * `summary` is present exactly for `summarize` records; the projection
434
+ * treats a summarize record without one as invalid and ignores it fail-safe.
435
+ */
436
+ var CompactionCreated = class extends Schema.TaggedClass("@effect-agent/thread/CompactionCreated")("CompactionCreated", {
437
+ runId: RunId,
438
+ turn: TurnNumber,
439
+ kind: Schema.Literals([
440
+ "clear-tool-results",
441
+ "summarize",
442
+ "rollover"
443
+ ]),
444
+ coversThrough: CanonicalSequence,
445
+ summary: Schema.optionalKey(BoundedText),
446
+ handoff: Schema.optionalKey(ContextHandoff)
447
+ }) {};
448
+ var RunFailed = class extends Schema.TaggedClass("@effect-agent/thread/RunFailed")("RunFailed", {
449
+ runId: RunId,
450
+ failure: PersistedJson
451
+ }) {};
452
+ const RunCompletedFields = Schema.Struct({
453
+ runId: RunId,
454
+ output: PersistedJson,
455
+ /** Integrity of validated terminal values, independent of future application codecs. */
456
+ resultDigest: Schema.optionalKey(Digest),
457
+ /** Application disposition captured with an ordinary completion. */
458
+ runDisposition: Schema.optionalKey(PersistedJson),
459
+ /** Honest soft-landing marker, present exactly when `exhausted` is present. */
460
+ finishReason: Schema.optionalKey(Schema.Literal("budget-exhausted")),
461
+ /** Budget dimension paired with `finishReason` on a soft landing. */
462
+ exhausted: Schema.optionalKey(ExhaustedLimit)
463
+ }).check(Schema.makeFilter((completed) => completed.finishReason === void 0 === (completed.exhausted === void 0) && (completed.runDisposition === void 0 || completed.finishReason === void 0), { title: "Run completion metadata matches its terminal family" }));
464
+ var RunCompleted = class extends Schema.TaggedClass("@effect-agent/thread/RunCompleted")("RunCompleted", RunCompletedFields) {};
465
+ var RepairAnnotated = class extends Schema.TaggedClass("@effect-agent/thread/RepairAnnotated")("RepairAnnotated", {
466
+ reason: BoundedText,
467
+ details: PersistedJson
468
+ }) {};
469
+ /** Terminal outcome family for one accepted Submission (DUR-002). */
470
+ const SettlementOutcome = Schema.Literals([
471
+ "completed",
472
+ "failed",
473
+ "aborted"
474
+ ]);
475
+ /**
476
+ * A durable abort command made canonical before the active worker is interrupted (DUR-012).
477
+ * Repeating the same abort command is idempotent; abort never rewrites a prior terminal outcome.
478
+ */
479
+ var AbortRequested = class extends Schema.TaggedClass("@effect-agent/thread/AbortRequested")("AbortRequested", {
480
+ submissionId: SubmissionId,
481
+ author: BoundedName,
482
+ reason: BoundedText
483
+ }) {};
484
+ /**
485
+ * The single canonical settlement record owed to one accepted Submission (DUR-002, DUR-011).
486
+ * Canonical history is the outcome authority: the ledger row is finalized from this record and
487
+ * never the other way around (DUR-015).
488
+ */
489
+ const RawSubmissionSettled = Schema.Struct({
490
+ submissionId: SubmissionId,
491
+ settlementId: SettlementId,
492
+ receiptId: ReceiptId,
493
+ outcome: SettlementOutcome,
494
+ runId: Schema.optionalKey(RunId),
495
+ result: Schema.optionalKey(PersistedJson),
496
+ /**
497
+ * Application-defined, Schema-encoded disposition for an ordinary completed
498
+ * Run. Absent for budget exhaustion and every non-completed or run-less
499
+ * settlement; consumers decode it with the application definition's Schema.
500
+ */
501
+ runDisposition: Schema.optionalKey(PersistedJson),
502
+ /**
503
+ * Present only when a `completed` Run settled through the final-answer
504
+ * exhaustion resolution (RUN-011, RUN-018): the durable log must be able to
505
+ * distinguish honest-exhaustion completion from ordinary completion without
506
+ * the live event stream. Absent for every ordinary settlement, keeping
507
+ * existing histories and goldens byte-stable (additive, schemaVersion 1).
508
+ */
509
+ finishReason: Schema.optionalKey(Schema.Literal("budget-exhausted")),
510
+ /**
511
+ * The dimension that bound a budget-exhausted completion (RUN-011,
512
+ * RUN-025), carried verbatim from the live `RunCompleted` event so
513
+ * consumers never reconstruct it from message text. Valid only alongside
514
+ * `finishReason: "budget-exhausted"`; absent on histories persisted before
515
+ * the dimension became durable (additive, schemaVersion 1).
516
+ */
517
+ exhausted: Schema.optionalKey(ExhaustedLimit),
518
+ /**
519
+ * The typed `AgentPolicyError.limit` of a `failed` hard-rail settlement
520
+ * (RUN-011): which finite policy dimension failed the Run, preserved
521
+ * alongside the bounded `{errorTag, message}` failure projection in
522
+ * `result`. Absent for every non-policy failure and on histories persisted
523
+ * before the limit became durable (additive, schemaVersion 1).
524
+ */
525
+ policyLimit: Schema.optionalKey(PolicyLimit),
526
+ /** Canonical aggregate of all priced model calls made by this Run. */
527
+ usageSummary: Schema.optionalKey(RunUsageSummary),
528
+ /** Calls included in usageSummary but not in any ModelResponseRecorded, retained on failure. */
529
+ uncommittedModelUsage: Schema.optionalKey(Schema.Array(ModelCallUsage))
530
+ });
531
+ const isPolicyFailureProjection = Schema.is(Schema.Struct({ errorTag: Schema.Literal("AgentPolicyError") }));
532
+ const decodeSettlementFailureDiagnostic = Schema.decodeUnknownOption(SettlementFailureDiagnostic, { onExcessProperty: "error" });
533
+ const hasValidSettlementFamily = (settled) => (settled.finishReason === void 0 || settled.outcome === "completed") && settled.finishReason === void 0 === (settled.exhausted === void 0) && (settled.usageSummary === void 0 || settled.runId !== void 0) && (settled.uncommittedModelUsage === void 0 || settled.runId !== void 0 && settled.usageSummary !== void 0) && (settled.runDisposition === void 0 || settled.outcome === "completed" && settled.finishReason === void 0 && settled.runId !== void 0 && settled.result !== void 0) && (settled.outcome !== "failed" || Option.isSome(decodeSettlementFailureDiagnostic(settled.result))) && (settled.outcome !== "aborted" || settled.result === void 0) && (settled.policyLimit === void 0 || settled.outcome === "failed" && isPolicyFailureProjection(settled.result));
534
+ const SubmissionSettledFields = RawSubmissionSettled.check(Schema.makeFilter(hasValidSettlementFamily, { title: "failed settlements require a bounded diagnostic; aborted settlements carry no result; budget metadata must match its settlement family" }));
535
+ var SubmissionSettled = class extends Schema.TaggedClass("@effect-agent/thread/SubmissionSettled")("SubmissionSettled", SubmissionSettledFields) {};
536
+ /**
537
+ * Canonical-boundary view of `SubmissionSettled`: `finishReason` is valid
538
+ * only on a `completed` outcome, `exhausted` only alongside
539
+ * `finishReason: "budget-exhausted"`, every `failed` outcome requires the exact bounded
540
+ * `SettlementFailureDiagnostic`, aborted outcomes carry no result, and `policyLimit` only occurs
541
+ * on a `failed` outcome whose diagnostic carries the `AgentPolicyError` tag. `runDisposition`
542
+ * occurs only on an ordinary completed settlement with a Run —
543
+ * so a malformed persisted combination such as
544
+ * `{ outcome: "failed", finishReason: "budget-exhausted" }` or a
545
+ * `policyLimit` contradicting `result.errorTag` fails closed at decode
546
+ * instead of becoming trusted audit history (STORE-006, RUN-011).
547
+ */
548
+ const SubmissionSettledRecord = SubmissionSettled.pipe(Schema.refine((settled) => hasValidSettlementFamily(settled), { expected: "failed settlements require a bounded diagnostic, aborted settlements carry no result, finishReason only occurs on completed settlements, exhausted only occurs with finishReason budget-exhausted, runDisposition only occurs on an ordinary completed settlement with a Run result, and policyLimit only occurs on a failed AgentPolicyError settlement" }));
549
+ /**
550
+ * PARENT-log record of one durable child establishment request:
551
+ * the exact parent Tool Call, delegation and target identity, the digests that pin the child's
552
+ * Binding/input/grant, the fenced budget reservation, and the INTENDED child identity derived
553
+ * deterministically from the parent Run and Tool Call pair (D4). `childInput` carries the
554
+ * prepared child input in encoded form (D3) so recovery can complete child admission from this
555
+ * record alone — no live delegation handler is required. `childPrincipal`/`childIdempotencyKey`
556
+ * carry the ledger admission scope with the ledger's exact bounds; the layering keeps their
557
+ * branded Schemas in the ledger port.
558
+ */
559
+ var SubagentRequested = class extends Schema.TaggedClass("@effect-agent/thread/SubagentRequested")("SubagentRequested", {
560
+ runId: RunId,
561
+ turnId: TurnId,
562
+ turn: TurnNumber,
563
+ toolCallId: ToolCallId,
564
+ delegationId: DelegationId,
565
+ targetAgentId: AgentId,
566
+ targetDigests: DefinitionDigests,
567
+ childInput: PersistedJson,
568
+ childInputDigest: Digest,
569
+ grantDigest: Digest,
570
+ reservationId: BoundedName,
571
+ reservationDigest: Digest,
572
+ childThreadId: ThreadId,
573
+ childPrincipal: BoundedName,
574
+ childIdempotencyKey: BoundedName,
575
+ /** Effective invocation bound, already clamped to the delegation and child Definition. */
576
+ toolCallAllowance: Schema.optionalKey(Schema.Int.check(Schema.isGreaterThan(0))),
577
+ policy: Schema.optionalKey(Schema.toCodecJson(AgentPolicy)),
578
+ budget: Schema.optionalKey(SubagentBudgetReservation),
579
+ grant: Schema.optionalKey(SubagentGrant),
580
+ depth: Schema.optionalKey(DelegationDepth)
581
+ }) {};
582
+ /**
583
+ * PARENT-log record that the intended child exists as accepted work:
584
+ * the full established child identity. It is appended only after the child Receipt
585
+ * exists — SUB-017 holds by construction because `childReceiptId` is a required field.
586
+ */
587
+ var SubagentStarted = class extends Schema.TaggedClass("@effect-agent/thread/SubagentStarted")("SubagentStarted", {
588
+ runId: RunId,
589
+ toolCallId: ToolCallId,
590
+ childThreadId: ThreadId,
591
+ childSubmissionId: SubmissionId,
592
+ childReceiptId: ReceiptId,
593
+ childRunId: RunId
594
+ }) {};
595
+ /**
596
+ * PARENT-log record of one verified child settlement join:
597
+ * the child's canonical Settlement identity and outcome, the digests pinning the verified child
598
+ * result and the bounded projected parent result, the child usage summary, and the FINAL
599
+ * consumed/released accounting decision for the reservation. It commits in ONE atomic batch with
600
+ * the parent `ToolCallSettled` record (SUB-019); `beginChildBudgetRelease` replays
601
+ * `finalAccounting` from this record, so canonical history authorizes the release (DUR-015).
602
+ */
603
+ var SubagentJoined = class extends Schema.TaggedClass("@effect-agent/thread/SubagentJoined")("SubagentJoined", {
604
+ runId: RunId,
605
+ toolCallId: ToolCallId,
606
+ childSubmissionId: SubmissionId,
607
+ childSettlementId: SettlementId,
608
+ childOutcome: SettlementOutcome,
609
+ childResultDigest: Digest,
610
+ projectedResultDigest: Digest,
611
+ usageSummary: PersistedJson,
612
+ usage: Schema.optionalKey(RunTotals),
613
+ delegatedUsage: Schema.optionalKey(RunTotals),
614
+ reservationId: BoundedName,
615
+ finalAccounting: PersistedJson
616
+ }) {};
617
+ /**
618
+ * CHILD-log immutable lineage: the Parent Link plus the digests that pin
619
+ * the child's definition, input, and authority grant. It is the first record after the child's
620
+ * `ThreadCreated` (its own single-record batch, so the generic `thread-created:{cid}`
621
+ * batch identity is never contradicted) and the join path verifies it fail-closed — a fabricated
622
+ * child or parent identity fails Parent Link verification (SUB-004, D10).
623
+ */
624
+ var SubagentLineageRecorded = class extends Schema.TaggedClass("@effect-agent/thread/SubagentLineageRecorded")("SubagentLineageRecorded", {
625
+ parentLink: SubagentParentLink,
626
+ parentSubmissionId: SubmissionId,
627
+ childDefinitionDigests: DefinitionDigests,
628
+ childInputDigest: Digest,
629
+ grantDigest: Digest,
630
+ /** Copied from the canonical request before readiness; restored for every child Attempt. */
631
+ toolCallAllowance: SubagentRequested.fields.toolCallAllowance,
632
+ policy: SubagentRequested.fields.policy,
633
+ budget: SubagentRequested.fields.budget,
634
+ grant: SubagentRequested.fields.grant
635
+ }) {};
636
+ const WorkerReportingIntent = Schema.Struct({
637
+ /** Absent only in historical custom-report origins; these remain readable as evidence. */
638
+ mode: Schema.optionalKey(Schema.Literal("standard")),
639
+ sourceDigests: DefinitionDigests,
640
+ /** Historical custom destination evidence. New worker origins never write this field. */
641
+ destinationDelegationId: Schema.optionalKey(DelegationId),
642
+ /** Frozen by the sender before acceptance. Standard emission never reads the source runtime. */
643
+ returnAddress: Schema.optionalKey(Schema.Struct({
644
+ input: PersistedJson,
645
+ principal: Principal,
646
+ policy: Schema.toCodecJson(AgentPolicy),
647
+ depth: Schema.Natural,
648
+ grant: Schema.optionalKey(SubagentGrant),
649
+ /** Encoded to bound recursive worker origins at the admission boundary. */
650
+ workerAdmission: Schema.optionalKey(PersistedJson)
651
+ }))
652
+ }).check(Schema.makeFilter((value) => value.mode === "standard" === (value.returnAddress !== void 0)));
653
+ /** Immutable worker Thread origin. Each input has its own digest and parameters separately. */
654
+ const WorkerOrigin = Schema.Struct({
655
+ worker: WorkerRef,
656
+ source: WorkerSource,
657
+ /** Omitted retains source-subtree funding; worker-run renews only for a new native Run. */
658
+ budgetScope: Schema.optionalKey(WorkerBudgetScope),
659
+ /** Frozen at worker creation; older origins remain reusable. */
660
+ lifecycle: Schema.optionalKey(Schema.Literal("assignment")),
661
+ targetDigests: DefinitionDigests,
662
+ policy: Schema.toCodecJson(AgentPolicy),
663
+ budget: SubagentBudgetReservation,
664
+ grant: SubagentGrant,
665
+ depth: DelegationDepth,
666
+ toolCallAllowance: Schema.optionalKey(Schema.Int.check(Schema.isGreaterThan(0))),
667
+ firstMessageId: IdempotencyKey,
668
+ createdAtMillis: Schema.Natural,
669
+ expiresAtMillis: Schema.Natural,
670
+ /** Exact source registration owns projection; absence means reporting was not declared. */
671
+ reporting: Schema.optionalKey(WorkerReportingIntent)
672
+ }).check(Schema.makeFilter((value) => value.expiresAtMillis > value.createdAtMillis));
673
+ /** Frozen per-input metadata; it grants no attached-child or parent-abort semantics. */
674
+ const WorkerAdmission = Schema.Struct({
675
+ origin: WorkerOrigin,
676
+ messageId: IdempotencyKey,
677
+ parameters: PersistedJson,
678
+ createdAtMillis: Schema.Natural,
679
+ /** Host-bound source input whose subtree funds this input; never chosen by a model. */
680
+ sourceSubmissionId: Schema.optionalKey(SubmissionId),
681
+ /** Enables routed receipt lookup when the delivery is owned by a reporting child. */
682
+ deliveryPrincipal: Schema.optionalKey(Principal),
683
+ /** Proven framework updates use a separate bounded input-capacity partition. */
684
+ reportKind: Schema.optionalKey(Schema.Literal("update"))
685
+ });
686
+ /** Owner command retained before the destination inbox is sealed. */
687
+ var WorkerStopRequested = class extends Schema.TaggedClass()("WorkerStopRequested", { command: WorkerStop }) {};
688
+ /** Source-log capacity reservation, retained independently of the source Run's settlement. */
689
+ var WorkerInputRequested = class extends Schema.TaggedClass()("WorkerInputRequested", {
690
+ admission: WorkerAdmission,
691
+ inputDigest: Digest
692
+ }) {};
693
+ /** Child-log origin, reconstructed from a retained delivery before the child becomes ready. */
694
+ var WorkerOriginRecorded = class extends Schema.TaggedClass()("WorkerOriginRecorded", { origin: WorkerOrigin }) {};
695
+ /** Canonical child completion acknowledgement releases only this input's active capacity. */
696
+ var WorkerInputCompleted = class extends Schema.TaggedClass()("WorkerInputCompleted", {
697
+ messageId: IdempotencyKey,
698
+ workerThreadId: ThreadId,
699
+ submissionId: SubmissionId,
700
+ receiptId: ReceiptId,
701
+ settlementId: SettlementId,
702
+ completedAtMillis: Schema.Natural,
703
+ /** New acknowledgements prove that this input's external effects are resolved. */
704
+ effectsResolved: Schema.optionalKey(Schema.Literal(true))
705
+ }) {};
706
+ /**
707
+ * Frozen report decision for one actual Run, shared by every joined Receipt. The envelope is
708
+ * a Schema-encoded PreparedInput, validated before append and decoded again on recovery.
709
+ * Keeping the encoded value here avoids a Records/PreparedInput schema dependency cycle.
710
+ */
711
+ var WorkerReportPrepared = class extends Schema.TaggedClass()("WorkerReportPrepared", {
712
+ runId: RunId,
713
+ messageId: IdempotencyKey,
714
+ envelope: PersistedJson,
715
+ createdAtMillis: Schema.Natural,
716
+ deadlineAtMillis: Schema.Natural,
717
+ predecessor: Schema.optionalKey(IdempotencyKey)
718
+ }) {};
719
+ /** Accepted update and its optional frozen parent delivery are one atomic canonical fact. */
720
+ var AgentUpdateEmitted = class extends Schema.TaggedClass()("AgentUpdateEmitted", {
721
+ update: Update,
722
+ definitions: DefinitionDigests,
723
+ delivery: Schema.optionalKey(Schema.Struct({
724
+ messageId: IdempotencyKey,
725
+ envelope: PersistedJson,
726
+ createdAtMillis: Schema.Natural,
727
+ deadlineAtMillis: Schema.Natural,
728
+ predecessor: Schema.optionalKey(IdempotencyKey)
729
+ }))
730
+ }) {};
731
+ /** Permanent bounded report refusal. Application errors and raw Run dispositions stay private. */
732
+ var WorkerReportRefused = class extends Schema.TaggedClass()("WorkerReportRefused", {
733
+ runId: RunId,
734
+ messageId: IdempotencyKey,
735
+ reason: Schema.Literals([
736
+ "declaration-unavailable",
737
+ "destination",
738
+ "projection",
739
+ "input",
740
+ "preparation",
741
+ "timeout",
742
+ "defect",
743
+ "expired",
744
+ "denied",
745
+ "capacity"
746
+ ])
747
+ }) {};
748
+ /** Frozen source proof of peer provenance, readable through routed canonical storage. */
749
+ var PeerMessagePrepared = class extends Schema.TaggedClass()("PeerMessagePrepared", {
750
+ messageId: IdempotencyKey,
751
+ sourcePrincipal: Principal,
752
+ operation: Schema.Literals(["send", "reply"]),
753
+ deadlineAtMillis: Schema.Int.check(Schema.isGreaterThan(0)),
754
+ encodedEnvelope: PersistedJson
755
+ }) {};
756
+ /**
757
+ * One disjoint subtree slice shared by attached and background children of a source input.
758
+ * The source keeps its own execution ceiling; descendants spend only the remaining allocation.
759
+ * Reservations include future descendant slots and never refund, including after interruption.
760
+ * resultBytes reserves the terminal/projection result, not cumulative Tool output bytes.
761
+ */
762
+ var SubtreeBudgetReserved = class extends Schema.TaggedClass()("SubtreeBudgetReserved", {
763
+ reservationId: BoundedName,
764
+ sourceSubmissionId: Schema.optionalKey(SubmissionId),
765
+ childThreadId: ThreadId,
766
+ lifetime: Schema.Literals(["attached", "background"]),
767
+ depth: DelegationDepth,
768
+ policy: Schema.toCodecJson(AgentPolicy),
769
+ grant: SubagentGrant,
770
+ budget: SubagentBudgetReservation
771
+ }) {};
772
+ /**
773
+ * Current private-development canonical payload family. Phase 5 adds the seven durable-Tool tags
774
+ * (prepared/unknown/resolved/step/approval-request/approval-decision/interrupted) additively; S2
775
+ * adds the four durable-Subagent tags (requested/started/joined/lineage) additively, so the
776
+ * envelope keeps `schemaVersion: 1` (P4 precedent for additive payload tags).
777
+ */
778
+ const CanonicalRecordPayload = Schema.Union([
779
+ ThreadCreated,
780
+ UserInputRecorded,
781
+ RunStartedRecord,
782
+ RunDurationExhausted,
783
+ RunPolicyUsageReserved,
784
+ ModelCompleted,
785
+ ModelResponseRecorded,
786
+ ToolCallPrepared,
787
+ ToolCallSettled,
788
+ ToolCallUnknown,
789
+ ToolCallResolved,
790
+ ToolStepSettled,
791
+ ToolApprovalRequested,
792
+ ToolApprovalDecided,
793
+ ModelResponseInterrupted,
794
+ CompactionCreated,
795
+ RunFailed,
796
+ RunCompleted,
797
+ AbortRequested,
798
+ SubmissionSettledRecord,
799
+ SubagentRequested,
800
+ SubagentStarted,
801
+ SubagentJoined,
802
+ SubagentLineageRecorded,
803
+ WorkerInputRequested,
804
+ WorkerStopRequested,
805
+ WorkerOriginRecorded,
806
+ WorkerInputCompleted,
807
+ WorkerReportPrepared,
808
+ AgentUpdateEmitted,
809
+ WorkerReportRefused,
810
+ PeerMessagePrepared,
811
+ SubtreeBudgetReserved,
812
+ RepairAnnotated
813
+ ]);
814
+ /**
815
+ * Versioned record envelope stored in an atomic batch. Thread ordering is assigned only
816
+ * when the batch is committed.
817
+ */
818
+ var RecordEnvelope = class extends Schema.Class("@effect-agent/thread/RecordEnvelope")({
819
+ recordId: RecordId,
820
+ family: Schema.Literal("thread"),
821
+ schemaVersion: Schema.Literal(1),
822
+ createdAt: Schema.DateTimeUtcFromString,
823
+ deploymentId: DeploymentId,
824
+ payload: CanonicalRecordPayload
825
+ }) {};
826
+ /** Backward-compatible domain name for a canonical record. */
827
+ const CanonicalRecord = RecordEnvelope;
828
+ /** One non-empty, bounded, idempotent atomic append unit. */
829
+ var CanonicalBatch = class extends Schema.Class("@effect-agent/thread/CanonicalBatch")({
830
+ batchId: BatchId,
831
+ producerId: ProducerId,
832
+ records: Schema.NonEmptyArray(RecordEnvelope).check(Schema.isMaxLength(256))
833
+ }) {};
834
+ /**
835
+ * A committed record with its Thread ordering and opaque resumable observation cursor.
836
+ */
837
+ var CanonicalRecordEnvelope = class extends Schema.Class("@effect-agent/thread/CanonicalRecordEnvelope")({
838
+ threadId: ThreadId,
839
+ batchId: BatchId,
840
+ sequence: CanonicalSequence,
841
+ offset: ObservationOffset,
842
+ record: RecordEnvelope
843
+ }) {};
844
+ const CURRENT_CANONICAL_SCHEMA_VERSION = 1;
845
+ //#endregion
846
+ export { AbortRequested, AgentUpdateEmitted, ApprovalDecision, BatchId, CURRENT_CANONICAL_SCHEMA_VERSION, CanonicalBatch, CanonicalRecord, CanonicalRecordEnvelope, CanonicalRecordPayload, CanonicalSequence, CompactionCreated, DefinitionDigestInput, DefinitionDigests, DeploymentId, Digest, MAX_PERSISTED_JSON_BYTES, MAX_PERSISTED_JSON_COLLECTION_LENGTH, MAX_PERSISTED_JSON_DEPTH, MAX_PERSISTED_JSON_NODES, ModelCompleted, ModelResponseInterrupted, ModelResponseRecorded, ObservationOffset, PeerMessagePrepared, PersistedJson, ProducerEpoch, ProducerId, RecordEnvelope, RecordId, RepairAnnotated, ReplayContract, RunCompleted, RunDurationExhausted, RunFailed, RunPolicyUsageReserved, RunStartedRecord, SettlementFailureDiagnostic, SettlementOutcome, SubagentJoined, SubagentLineageRecorded, SubagentRequested, SubagentStarted, SubmissionSettled, SubmissionSettledRecord, SubtreeBudgetReserved, ThreadCreated, ToolApprovalDecided, ToolApprovalRequested, ToolCallPrepared, ToolCallResolution, ToolCallResolved, ToolCallSettled, ToolCallUnknown, ToolOperation, ToolStepSettled, ToolUnavailable, UserInputRecorded, WorkerAdmission, WorkerInputCompleted, WorkerInputRequested, WorkerOrigin, WorkerOriginRecorded, WorkerReportPrepared, WorkerReportRefused, WorkerReportingIntent, WorkerStopRequested, Records_exports as t };
847
+
848
+ //# sourceMappingURL=Records.mjs.map