@yielded/agent 0.1.0-beta.175 → 0.1.0-beta.177

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 (191) hide show
  1. package/dist/{Admin-Qa3I1oA5.d.mts → Admin-Bpg24yCK.d.mts} +19 -13
  2. package/dist/{Agent-BiRbr73L.mjs → Agent-B3J0B4l6.mjs} +6 -3
  3. package/dist/Agent-B3J0B4l6.mjs.map +1 -0
  4. package/dist/{AgentRuntime-DaDKMasp.mjs → AgentRuntime-DrQfy4cL.mjs} +7 -6
  5. package/dist/AgentRuntime-DrQfy4cL.mjs.map +1 -0
  6. package/dist/{AgentRuntime-CHDyRbSf.d.mts → AgentRuntime-Dx5u_FJD.d.mts} +6 -6
  7. package/dist/{Digest-C3EODOee.mjs → Digest-ft4ku9pj.mjs} +2 -2
  8. package/dist/{Digest-C3EODOee.mjs.map → Digest-ft4ku9pj.mjs.map} +1 -1
  9. package/dist/{DurableAgentRuntime-CPlw5_7e.mjs → DurableAgentRuntime-CGW93k81.mjs} +176 -63
  10. package/dist/DurableAgentRuntime-CGW93k81.mjs.map +1 -0
  11. package/dist/{DurableStep-DXGn7KQ4.d.mts → DurableStep-CAJnlgfL.d.mts} +5 -4
  12. package/dist/{EventSource-BTu68yDW.d.mts → EventSource-A6TB7t-f.d.mts} +2 -2
  13. package/dist/{MessageDelivery-DjAZJ4Fd.d.mts → MessageDelivery-BkWrcQUd.d.mts} +4 -4
  14. package/dist/{Messaging-SVu6rWV8.d.mts → Messaging-DpEZMTVE.d.mts} +2 -2
  15. package/dist/{MessagingHost-CZCyrnvJ.mjs → MessagingHost-BILcuj0V.mjs} +2 -2
  16. package/dist/{MessagingHost-CZCyrnvJ.mjs.map → MessagingHost-BILcuj0V.mjs.map} +1 -1
  17. package/dist/{MessagingHost-C6SOAcoG.d.mts → MessagingHost-BKxDskYj.d.mts} +2 -2
  18. package/dist/{PreparedInputAdmission-wgY4JMZY.d.mts → PreparedInputAdmission-DKIfqRZT.d.mts} +3 -3
  19. package/dist/{Records-DzL4Kbtw.mjs → Records-CZRedCE7.mjs} +3 -3
  20. package/dist/{Records-DzL4Kbtw.mjs.map → Records-CZRedCE7.mjs.map} +1 -1
  21. package/dist/{RunContinuation-3jB5pULC.d.mts → RunContinuation-Ce2pR8VD.d.mts} +4 -4
  22. package/dist/{RunContinuation-BiyKJK32.mjs → RunContinuation-D42RFqjS.mjs} +5 -5
  23. package/dist/RunContinuation-D42RFqjS.mjs.map +1 -0
  24. package/dist/{RunJournal-CPMKcfd0.mjs → RunJournal-oJLo-pjS.mjs} +7 -7
  25. package/dist/{RunJournal-CPMKcfd0.mjs.map → RunJournal-oJLo-pjS.mjs.map} +1 -1
  26. package/dist/{RunOptions-Be77lKVZ.d.mts → RunOptions-BANtohGk.d.mts} +3 -3
  27. package/dist/{RunStorage-CzutHJBE.mjs → RunStorage-BRGP3Tcu.mjs} +43 -33
  28. package/dist/RunStorage-BRGP3Tcu.mjs.map +1 -0
  29. package/dist/{Scheduling-07_dsGED.mjs → Scheduling-BebkRVc2.mjs} +3 -3
  30. package/dist/{Scheduling-07_dsGED.mjs.map → Scheduling-BebkRVc2.mjs.map} +1 -1
  31. package/dist/{Subagent-xhN_aD1r.d.mts → Subagent-5ulnV6An.d.mts} +9 -9
  32. package/dist/{Subagent-CexndZSp.mjs → Subagent-C7F7c8Op.mjs} +3 -3
  33. package/dist/{Subagent-CexndZSp.mjs.map → Subagent-C7F7c8Op.mjs.map} +1 -1
  34. package/dist/{SubagentHost-D1xBgn9g.d.mts → SubagentHost-CikdGpmk.d.mts} +2 -2
  35. package/dist/{Subscription-DmIHlOJK.d.mts → Subscription-D5sOrmlI.d.mts} +2 -2
  36. package/dist/{SubscriptionInput-DgcQhvbe.d.mts → SubscriptionInput-CxSXZUiC.d.mts} +2 -2
  37. package/dist/{ThreadImport-DP-vOk2F.d.mts → ThreadImport-C6IiPJMW.d.mts} +42 -42
  38. package/dist/{ThreadImport-CjlG57vH.mjs → ThreadImport-DUcPj5jC.mjs} +9 -9
  39. package/dist/{ThreadImport-CjlG57vH.mjs.map → ThreadImport-DUcPj5jC.mjs.map} +1 -1
  40. package/dist/{ThreadStore-EuUilthA.mjs → ThreadStore-Cn6FDWX9.mjs} +42 -21
  41. package/dist/ThreadStore-Cn6FDWX9.mjs.map +1 -0
  42. package/dist/{ThreadTransfer-DB_zsrtJ.mjs → ThreadTransfer-BWnAHIge.mjs} +4 -4
  43. package/dist/{ThreadTransfer-DB_zsrtJ.mjs.map → ThreadTransfer-BWnAHIge.mjs.map} +1 -1
  44. package/dist/{Worker-CHRaIsWu.d.mts → Worker-CLYgfqhF.d.mts} +7 -5
  45. package/dist/{Worker-DZjdMjZn.mjs → Worker-CtuUwYOK.mjs} +4 -2
  46. package/dist/Worker-CtuUwYOK.mjs.map +1 -0
  47. package/dist/{WorkerAdmission-eBeXt_mu.mjs → WorkerAdmission-cfiK9aRi.mjs} +6 -6
  48. package/dist/{WorkerAdmission-eBeXt_mu.mjs.map → WorkerAdmission-cfiK9aRi.mjs.map} +1 -1
  49. package/dist/{agent-registration-a6QYaG3h.mjs → agent-registration-Dt57NAP6.mjs} +5 -5
  50. package/dist/{agent-registration-a6QYaG3h.mjs.map → agent-registration-Dt57NAP6.mjs.map} +1 -1
  51. package/dist/capabilities/CodeMode.mjs +1 -1
  52. package/dist/capabilities/Commands.d.mts +1 -1
  53. package/dist/capabilities/ContextTools.mjs +1 -1
  54. package/dist/capabilities/McpClient.mjs +1 -1
  55. package/dist/capabilities/MemoryNotes.d.mts +1 -1
  56. package/dist/capabilities/MemoryNotes.mjs +2 -1
  57. package/dist/capabilities/MemoryNotes.mjs.map +1 -1
  58. package/dist/capabilities/Messaging.d.mts +1 -1
  59. package/dist/capabilities/Messaging.mjs +2 -2
  60. package/dist/capabilities/RunHooks.d.mts +1 -1
  61. package/dist/capabilities/Subagent.d.mts +2 -2
  62. package/dist/capabilities/Subagent.mjs +2 -2
  63. package/dist/capabilities/ToolDiscovery.mjs +1 -1
  64. package/dist/capabilities/WebCapture.mjs +1 -1
  65. package/dist/capabilities/WebSearch.mjs +1 -1
  66. package/dist/core/Agent.mjs +1 -1
  67. package/dist/core/Worker.d.mts +1 -1
  68. package/dist/core/Worker.mjs +1 -1
  69. package/dist/durable/ActivityStore.mjs +1 -1
  70. package/dist/durable/Admin.d.mts +1 -1
  71. package/dist/durable/Admin.mjs +1 -1
  72. package/dist/durable/AgentRegistration.d.mts +1 -1
  73. package/dist/durable/AgentRegistration.mjs +1 -1
  74. package/dist/durable/Certification.d.mts +1 -1
  75. package/dist/durable/CommittedActivity.d.mts +1 -1
  76. package/dist/durable/CommittedActivity.mjs +3 -3
  77. package/dist/durable/Digest.mjs +1 -1
  78. package/dist/durable/DurableAgentRuntime.d.mts +1 -1
  79. package/dist/durable/DurableAgentRuntime.mjs +2 -2
  80. package/dist/durable/EventSource.d.mts +1 -1
  81. package/dist/durable/EventSource.mjs +1 -1
  82. package/dist/durable/GitHubWorkflowSource.d.mts +3 -3
  83. package/dist/durable/LifecyclePublication.d.mts +1 -1
  84. package/dist/durable/LifecyclePublication.mjs +3 -3
  85. package/dist/durable/MessageDelivery.d.mts +1 -1
  86. package/dist/durable/MessageDelivery.mjs +3 -3
  87. package/dist/durable/MessageDeliveryStoreConformance.d.mts +2 -2
  88. package/dist/durable/MessageDeliveryStoreConformance.mjs +3 -3
  89. package/dist/durable/PersistentHistory.d.mts +1 -1
  90. package/dist/durable/PersistentHistory.mjs +4 -4
  91. package/dist/durable/PreparedInputAdmission.d.mts +1 -1
  92. package/dist/durable/RecordFormat.mjs +1 -1
  93. package/dist/durable/Records.mjs +1 -1
  94. package/dist/durable/Recovery.d.mts +1 -1
  95. package/dist/durable/Recovery.mjs +1 -1
  96. package/dist/durable/RunContinuation.d.mts +2 -2
  97. package/dist/durable/RunContinuation.mjs +3 -3
  98. package/dist/durable/RunJournal.d.mts +1 -1
  99. package/dist/durable/RunJournal.mjs +1 -1
  100. package/dist/durable/RunStorage.d.mts +1 -1
  101. package/dist/durable/RunStorage.mjs +1 -1
  102. package/dist/durable/Schedule.mjs +1 -1
  103. package/dist/durable/ScheduleStoreConformance.mjs +1 -1
  104. package/dist/durable/ScheduleTransition.mjs +1 -1
  105. package/dist/durable/Scheduling.d.mts +1 -1
  106. package/dist/durable/Scheduling.mjs +1 -1
  107. package/dist/durable/SettlementPublisher.d.mts +1 -1
  108. package/dist/durable/SettlementPublisher.mjs +3 -3
  109. package/dist/durable/SubmissionLedger.d.mts +1 -1
  110. package/dist/durable/SubmissionLedger.mjs +4 -4
  111. package/dist/durable/SubmissionLedger.mjs.map +1 -1
  112. package/dist/durable/SubmissionLedgerConformance.d.mts +1 -1
  113. package/dist/durable/SubmissionLedgerConformance.mjs +7 -7
  114. package/dist/durable/SubmissionStatus.d.mts +1 -1
  115. package/dist/durable/Subscription.d.mts +1 -1
  116. package/dist/durable/Subscription.mjs +2 -2
  117. package/dist/durable/SubscriptionInput.d.mts +1 -1
  118. package/dist/durable/SubscriptionInput.mjs +2 -2
  119. package/dist/durable/SubscriptionStoreConformance.d.mts +1 -1
  120. package/dist/durable/SubscriptionStoreConformance.mjs +1 -1
  121. package/dist/durable/SubscriptionTools.d.mts +3 -3
  122. package/dist/durable/SubscriptionTools.mjs +2 -1
  123. package/dist/durable/SubscriptionTools.mjs.map +1 -1
  124. package/dist/durable/SubscriptionTransition.d.mts +1 -1
  125. package/dist/durable/SubscriptionTransition.mjs +1 -1
  126. package/dist/durable/Subscriptions.d.mts +5 -5
  127. package/dist/durable/Subscriptions.mjs +2 -2
  128. package/dist/durable/ThreadArchiveRange.d.mts +1 -1
  129. package/dist/durable/ThreadArchiveRange.mjs +1 -1
  130. package/dist/durable/ThreadContextHistory.d.mts +1 -1
  131. package/dist/durable/ThreadContextHistory.mjs +2 -2
  132. package/dist/durable/ThreadContextHistoryProjection.mjs +1 -1
  133. package/dist/durable/ThreadImport.d.mts +1 -1
  134. package/dist/durable/ThreadImport.mjs +1 -1
  135. package/dist/durable/ThreadInvariants.d.mts +3 -3
  136. package/dist/durable/ThreadInvariants.mjs +4 -4
  137. package/dist/durable/ThreadProjection.mjs +1 -1
  138. package/dist/durable/ThreadProjectionMaintenance.d.mts +1 -1
  139. package/dist/durable/ThreadReader.d.mts +1 -1
  140. package/dist/durable/ThreadReader.mjs +1 -1
  141. package/dist/durable/ThreadStore.d.mts +1 -1
  142. package/dist/durable/ThreadStore.mjs +2 -2
  143. package/dist/durable/ThreadStoreConformance.d.mts +1 -1
  144. package/dist/durable/ThreadStoreConformance.mjs +4 -4
  145. package/dist/durable/ThreadTransfer.d.mts +1 -1
  146. package/dist/durable/ThreadTransfer.mjs +1 -1
  147. package/dist/durable/ThreadWork.d.mts +1 -1
  148. package/dist/durable/ThreadWork.mjs +5 -5
  149. package/dist/durable/ToolReconciler.mjs +1 -1
  150. package/dist/durable/WorkerAdmission.d.mts +68 -68
  151. package/dist/durable/WorkerAdmission.mjs +1 -1
  152. package/dist/durable/WorkerHost.d.mts +2 -2
  153. package/dist/durable/WorkerHost.mjs +1 -1
  154. package/dist/engine/AgentRuntime.d.mts +1 -1
  155. package/dist/engine/AgentRuntime.mjs +1 -1
  156. package/dist/engine/DurableStep.d.mts +2 -2
  157. package/dist/engine/DurableStep.mjs +1 -11
  158. package/dist/engine/DurableStep.mjs.map +1 -1
  159. package/dist/engine/MessagingHost.d.mts +1 -1
  160. package/dist/engine/MessagingHost.mjs +1 -1
  161. package/dist/engine/RunOptions.d.mts +1 -1
  162. package/dist/engine/SubagentHost.d.mts +1 -1
  163. package/dist/engine/SubagentHost.mjs +1 -1
  164. package/dist/index.d.mts +16 -16
  165. package/dist/index.mjs +15 -15
  166. package/dist/{run-context-reader-DVhJZ1Qe.d.mts → run-context-reader-BtBPX_nC.d.mts} +2 -2
  167. package/dist/tool-execution-Ba7tO7Pt.mjs +17 -0
  168. package/dist/tool-execution-Ba7tO7Pt.mjs.map +1 -0
  169. package/package.json +1 -1
  170. package/src/core/Worker.ts +3 -1
  171. package/src/core/internal/agent-updates.ts +9 -1
  172. package/src/core/internal/tool-execution.ts +33 -0
  173. package/src/durable/DurableAgentRuntime.ts +243 -63
  174. package/src/durable/RunContinuation.ts +2 -2
  175. package/src/durable/RunJournal.ts +9 -5
  176. package/src/durable/RunStorage.ts +83 -61
  177. package/src/durable/SubmissionLedger.ts +8 -0
  178. package/src/durable/ThreadStore.ts +39 -19
  179. package/src/durable/internal/agent-updates.ts +59 -3
  180. package/src/durable/internal/initial-context.ts +17 -2
  181. package/src/durable/internal/prompt-history-cache.ts +13 -8
  182. package/src/durable/internal/worker-host.ts +3 -1
  183. package/src/engine/DurableStep.ts +5 -31
  184. package/src/engine/internal/agent-runtime.ts +2 -1
  185. package/dist/Agent-BiRbr73L.mjs.map +0 -1
  186. package/dist/AgentRuntime-DaDKMasp.mjs.map +0 -1
  187. package/dist/DurableAgentRuntime-CPlw5_7e.mjs.map +0 -1
  188. package/dist/RunContinuation-BiyKJK32.mjs.map +0 -1
  189. package/dist/RunStorage-CzutHJBE.mjs.map +0 -1
  190. package/dist/ThreadStore-EuUilthA.mjs.map +0 -1
  191. package/dist/Worker-DZjdMjZn.mjs.map +0 -1
package/dist/index.d.mts CHANGED
@@ -24,11 +24,11 @@ import { r as AgentPolicy_d_exports } from "./AgentPolicy-B4lbCU2T.mjs";
24
24
  import { t as Agent_d_exports } from "./Agent-B39jRnFv.mjs";
25
25
  import { c as MemoryReference_d_exports } from "./MemoryReference-B8Q3UJoJ.mjs";
26
26
  import { n as RunPolicyUsage_d_exports } from "./RunPolicyUsage-QmYVw9z8.mjs";
27
- import { x as Worker_d_exports } from "./Worker-CHRaIsWu.mjs";
27
+ import { x as Worker_d_exports } from "./Worker-CLYgfqhF.mjs";
28
28
  import { s as ContextWindow_d_exports } from "./ContextWindow-Cvv8N9Xy.mjs";
29
29
  import { s as ContextCompactor_d_exports } from "./ContextCompactor-Bz91grmO.mjs";
30
- import { i as DurableStep_d_exports } from "./DurableStep-DXGn7KQ4.mjs";
31
- import { F as RunOptions_d_exports } from "./RunOptions-Be77lKVZ.mjs";
30
+ import { i as DurableStep_d_exports } from "./DurableStep-CAJnlgfL.mjs";
31
+ import { F as RunOptions_d_exports } from "./RunOptions-BANtohGk.mjs";
32
32
  import { t as Commands_d_exports } from "./capabilities/Commands.mjs";
33
33
  import { t as ContextHistory_d_exports } from "./engine/ContextHistory.mjs";
34
34
  import { t as ContextTools_d_exports } from "./capabilities/ContextTools.mjs";
@@ -37,8 +37,8 @@ import { t as McpClient_d_exports } from "./capabilities/McpClient.mjs";
37
37
  import { i as MemoryNamespace_d_exports } from "./MemoryNamespace-BbRW5p71.mjs";
38
38
  import { t as MemoryStore_d_exports } from "./core/MemoryStore.mjs";
39
39
  import { t as MemoryNotes_d_exports } from "./capabilities/MemoryNotes.mjs";
40
- import { n as MessagingHost_d_exports } from "./MessagingHost-C6SOAcoG.mjs";
41
- import { t as Messaging_d_exports } from "./Messaging-SVu6rWV8.mjs";
40
+ import { n as MessagingHost_d_exports } from "./MessagingHost-BKxDskYj.mjs";
41
+ import { t as Messaging_d_exports } from "./Messaging-DpEZMTVE.mjs";
42
42
  import { t as ModelContext_d_exports } from "./capabilities/ModelContext.mjs";
43
43
  import { t as RememberingStore_d_exports } from "./core/RememberingStore.mjs";
44
44
  import { t as Remembering_d_exports } from "./capabilities/Remembering.mjs";
@@ -47,10 +47,10 @@ import { t as MemoryRevalidation_d_exports } from "./core/MemoryRevalidation.mjs
47
47
  import { t as SemanticMemoryIndex_d_exports } from "./core/SemanticMemoryIndex.mjs";
48
48
  import { t as SemanticMemoryRevalidation_d_exports } from "./core/SemanticMemoryRevalidation.mjs";
49
49
  import { t as SemanticMemory_d_exports } from "./capabilities/SemanticMemory.mjs";
50
- import { s as SubagentHost_d_exports } from "./SubagentHost-D1xBgn9g.mjs";
51
- import { t as AgentRuntime_d_exports } from "./AgentRuntime-CHDyRbSf.mjs";
50
+ import { s as SubagentHost_d_exports } from "./SubagentHost-CikdGpmk.mjs";
51
+ import { t as AgentRuntime_d_exports } from "./AgentRuntime-Dx5u_FJD.mjs";
52
52
  import { i as RunEventSink_d_exports } from "./RunEventSink-shh6Qf9E.mjs";
53
- import { v as Subagent_d_exports } from "./Subagent-xhN_aD1r.mjs";
53
+ import { v as Subagent_d_exports } from "./Subagent-5ulnV6An.mjs";
54
54
  import { t as ToolDiscovery_d_exports } from "./capabilities/ToolDiscovery.mjs";
55
55
  import { D as PageCapture_d_exports } from "./PageCapture-Df8Xwskw.mjs";
56
56
  import { t as WebCapture_d_exports } from "./capabilities/WebCapture.mjs";
@@ -61,7 +61,7 @@ import { t as ProvisionalText_d_exports } from "./core/ProvisionalText.mjs";
61
61
  import { nt as Records_d_exports } from "./Records-BTnGRdcf.mjs";
62
62
  import { t as ActivityStore_d_exports } from "./durable/ActivityStore.mjs";
63
63
  import { n as Digest_d_exports } from "./Digest-DjUgS5PG.mjs";
64
- import { Ar as SubmissionStatus_d_exports, Do as RunJournal_d_exports, Es as AgentRegistration_d_exports, Ta as ThreadWork_d_exports, Yn as DurableAgentRuntime_d_exports, fo as LifecyclePublication_d_exports, no as ThreadArchiveRange_d_exports, pn as SubmissionLedger_d_exports, q as Recovery_d_exports, qi as ThreadStore_d_exports, t as Admin_d_exports } from "./Admin-Qa3I1oA5.mjs";
64
+ import { Ar as SubmissionStatus_d_exports, Do as RunJournal_d_exports, Es as AgentRegistration_d_exports, Ta as ThreadWork_d_exports, Yn as DurableAgentRuntime_d_exports, fo as LifecyclePublication_d_exports, no as ThreadArchiveRange_d_exports, pn as SubmissionLedger_d_exports, q as Recovery_d_exports, qi as ThreadStore_d_exports, t as Admin_d_exports } from "./Admin-Bpg24yCK.mjs";
65
65
  import { t as DurableFailpoint_d_exports } from "./DurableFailpoint-BugHZKvJ.mjs";
66
66
  import { a as OperationAuthorizer_d_exports } from "./OperationAuthorizer-TzcQtpX5.mjs";
67
67
  import { s as RecordFormat_d_exports } from "./RecordFormat-BNiLpe43.mjs";
@@ -69,21 +69,21 @@ import { l as ToolReconciler_d_exports } from "./ToolReconciler-SrOHkvF8.mjs";
69
69
  import { n as WakeScheduler_d_exports } from "./WakeScheduler-DJIMMf77.mjs";
70
70
  import { t as CommittedActivity_d_exports } from "./durable/CommittedActivity.mjs";
71
71
  import { R as Schedule_d_exports } from "./Schedule-CDgTz0vj.mjs";
72
- import { k as Subscription_d_exports } from "./Subscription-DmIHlOJK.mjs";
73
- import { n as EventSource_d_exports } from "./EventSource-BTu68yDW.mjs";
74
- import { n as PreparedInputAdmission_d_exports } from "./PreparedInputAdmission-wgY4JMZY.mjs";
75
- import { r as SubscriptionInput_d_exports } from "./SubscriptionInput-DgcQhvbe.mjs";
72
+ import { k as Subscription_d_exports } from "./Subscription-D5sOrmlI.mjs";
73
+ import { n as EventSource_d_exports } from "./EventSource-A6TB7t-f.mjs";
74
+ import { n as PreparedInputAdmission_d_exports } from "./PreparedInputAdmission-DKIfqRZT.mjs";
75
+ import { r as SubscriptionInput_d_exports } from "./SubscriptionInput-CxSXZUiC.mjs";
76
76
  import { t as Subscriptions_d_exports } from "./durable/Subscriptions.mjs";
77
- import { g as MessageDelivery_d_exports } from "./MessageDelivery-DjAZJ4Fd.mjs";
77
+ import { g as MessageDelivery_d_exports } from "./MessageDelivery-BkWrcQUd.mjs";
78
78
  import { t as PersistentHistory_d_exports } from "./durable/PersistentHistory.mjs";
79
- import { i as RunContinuation_d_exports } from "./RunContinuation-3jB5pULC.mjs";
79
+ import { i as RunContinuation_d_exports } from "./RunContinuation-Ce2pR8VD.mjs";
80
80
  import { t as ScheduleTransition_d_exports } from "./durable/ScheduleTransition.mjs";
81
81
  import { t as Scheduling_d_exports } from "./durable/Scheduling.mjs";
82
82
  import { t as SubscriptionTools_d_exports } from "./durable/SubscriptionTools.mjs";
83
83
  import { t as SubscriptionTransition_d_exports } from "./durable/SubscriptionTransition.mjs";
84
84
  import { t as ThreadContextHistory_d_exports } from "./durable/ThreadContextHistory.mjs";
85
85
  import { t as ThreadContextHistoryProjection_d_exports } from "./durable/ThreadContextHistoryProjection.mjs";
86
- import { l as ThreadImport_d_exports } from "./ThreadImport-DP-vOk2F.mjs";
86
+ import { l as ThreadImport_d_exports } from "./ThreadImport-C6IiPJMW.mjs";
87
87
  import { t as ThreadInvariants_d_exports } from "./durable/ThreadInvariants.mjs";
88
88
  import { t as ThreadProjection_d_exports } from "./durable/ThreadProjection.mjs";
89
89
  import { t as ThreadProjectionMaintenance_d_exports } from "./durable/ThreadProjectionMaintenance.mjs";
package/dist/index.mjs CHANGED
@@ -3,19 +3,19 @@ import { t as ToolResult_exports } from "./core/ToolResult.mjs";
3
3
  import { t as AgentPolicy_exports } from "./core/AgentPolicy.mjs";
4
4
  import { t as Receipt_exports } from "./core/Receipt.mjs";
5
5
  import { t as AgentUpdates_exports } from "./core/AgentUpdates.mjs";
6
- import { t as Agent_exports } from "./Agent-BiRbr73L.mjs";
6
+ import { t as Agent_exports } from "./Agent-B3J0B4l6.mjs";
7
7
  import { a as FailureDiagnostic_exports } from "./FailureDiagnostic-D9oW23Cn.mjs";
8
8
  import { t as AgentError_exports } from "./core/AgentError.mjs";
9
9
  import { t as IdGenerator_exports } from "./core/IdGenerator.mjs";
10
10
  import { t as SubagentContract_exports } from "./core/SubagentContract.mjs";
11
11
  import { t as Usage_exports } from "./core/Usage.mjs";
12
12
  import { t as RunEvent_exports } from "./core/RunEvent.mjs";
13
- import { x as Worker_exports } from "./Worker-DZjdMjZn.mjs";
14
- import { n as MessagingHost_exports } from "./MessagingHost-CZCyrnvJ.mjs";
13
+ import { x as Worker_exports } from "./Worker-CtuUwYOK.mjs";
14
+ import { n as MessagingHost_exports } from "./MessagingHost-BILcuj0V.mjs";
15
15
  import { t as SubagentHost_exports } from "./engine/SubagentHost.mjs";
16
16
  import { t as Thread_exports } from "./core/Thread.mjs";
17
17
  import { t as ThreadHistory_exports } from "./engine/ThreadHistory.mjs";
18
- import { t as AgentRuntime_exports } from "./AgentRuntime-DaDKMasp.mjs";
18
+ import { t as AgentRuntime_exports } from "./AgentRuntime-DrQfy4cL.mjs";
19
19
  import { t as ProvisionalText_exports } from "./core/ProvisionalText.mjs";
20
20
  import { t as ContextWindow_exports } from "./engine/ContextWindow.mjs";
21
21
  import { t as DurableStep_exports } from "./engine/DurableStep.mjs";
@@ -58,21 +58,21 @@ import { t as RunHooks_exports } from "./capabilities/RunHooks.mjs";
58
58
  import { t as SemanticMemoryIndex_exports } from "./core/SemanticMemoryIndex.mjs";
59
59
  import { t as SemanticMemoryRevalidation_exports } from "./core/SemanticMemoryRevalidation.mjs";
60
60
  import { t as SemanticMemory_exports } from "./capabilities/SemanticMemory.mjs";
61
- import { r as Subagent_exports } from "./Subagent-CexndZSp.mjs";
61
+ import { r as Subagent_exports } from "./Subagent-C7F7c8Op.mjs";
62
62
  import { t as ToolDiscovery_exports } from "./capabilities/ToolDiscovery.mjs";
63
63
  import { t as ToolExposure_exports } from "./ToolExposure.mjs";
64
64
  import { t as WebCapture_exports } from "./capabilities/WebCapture.mjs";
65
65
  import { t as WebSearch_exports } from "./capabilities/WebSearch.mjs";
66
- import { $ as Records_exports } from "./Records-DzL4Kbtw.mjs";
66
+ import { $ as Records_exports } from "./Records-CZRedCE7.mjs";
67
67
  import { t as ActivityStore_exports } from "./durable/ActivityStore.mjs";
68
- import { n as Digest_exports } from "./Digest-C3EODOee.mjs";
68
+ import { n as Digest_exports } from "./Digest-ft4ku9pj.mjs";
69
69
  import { t as SubmissionLedger_exports } from "./durable/SubmissionLedger.mjs";
70
70
  import { t as Recovery_exports } from "./durable/Recovery.mjs";
71
71
  import { t as Admin_exports } from "./durable/Admin.mjs";
72
72
  import { t as AgentRegistration_exports } from "./durable/AgentRegistration.mjs";
73
73
  import { t as RecordFormat_exports } from "./durable/RecordFormat.mjs";
74
- import { n as RunJournal_exports } from "./RunJournal-CPMKcfd0.mjs";
75
- import { Z as ThreadStore_exports } from "./ThreadStore-EuUilthA.mjs";
74
+ import { n as RunJournal_exports } from "./RunJournal-oJLo-pjS.mjs";
75
+ import { Z as ThreadStore_exports } from "./ThreadStore-Cn6FDWX9.mjs";
76
76
  import { t as Schedule_exports } from "./durable/Schedule.mjs";
77
77
  import { t as PreparedInputAdmission_exports } from "./durable/PreparedInputAdmission.mjs";
78
78
  import { t as Subscription_exports } from "./durable/Subscription.mjs";
@@ -80,11 +80,11 @@ import { t as MessageDelivery_exports } from "./durable/MessageDelivery.mjs";
80
80
  import { t as ThreadArchiveRange_exports } from "./durable/ThreadArchiveRange.mjs";
81
81
  import { t as CommittedActivity_exports } from "./durable/CommittedActivity.mjs";
82
82
  import { t as DurableFailpoint_exports } from "./durable/DurableFailpoint.mjs";
83
- import { i as RunContinuation_exports } from "./RunContinuation-BiyKJK32.mjs";
83
+ import { i as RunContinuation_exports } from "./RunContinuation-D42RFqjS.mjs";
84
84
  import { t as ThreadWork_exports } from "./durable/ThreadWork.mjs";
85
85
  import { t as WakeScheduler_exports } from "./durable/WakeScheduler.mjs";
86
- import { r as DurableAgentRuntime_exports } from "./DurableAgentRuntime-CPlw5_7e.mjs";
87
- import { i as WorkerAdmission_exports } from "./WorkerAdmission-eBeXt_mu.mjs";
86
+ import { r as DurableAgentRuntime_exports } from "./DurableAgentRuntime-CGW93k81.mjs";
87
+ import { i as WorkerAdmission_exports } from "./WorkerAdmission-cfiK9aRi.mjs";
88
88
  import { t as WorkerHost_exports } from "./durable/WorkerHost.mjs";
89
89
  import { t as OperationAuthorizer_exports } from "./durable/OperationAuthorizer.mjs";
90
90
  import { t as SubmissionStatus_exports } from "./durable/SubmissionStatus.mjs";
@@ -92,13 +92,13 @@ import { t as ToolReconciler_exports } from "./durable/ToolReconciler.mjs";
92
92
  import { t as EventSource_exports } from "./durable/EventSource.mjs";
93
93
  import { t as PersistentHistory_exports } from "./durable/PersistentHistory.mjs";
94
94
  import { t as ScheduleTransition_exports } from "./durable/ScheduleTransition.mjs";
95
- import { i as Scheduling_exports } from "./Scheduling-07_dsGED.mjs";
95
+ import { i as Scheduling_exports } from "./Scheduling-BebkRVc2.mjs";
96
96
  import { t as SubscriptionInput_exports } from "./durable/SubscriptionInput.mjs";
97
97
  import { t as Subscriptions_exports } from "./durable/Subscriptions.mjs";
98
98
  import { t as SubscriptionTools_exports } from "./durable/SubscriptionTools.mjs";
99
99
  import { t as SubscriptionTransition_exports } from "./durable/SubscriptionTransition.mjs";
100
- import { o as ThreadImport_exports } from "./ThreadImport-CjlG57vH.mjs";
101
- import { n as ThreadTransfer_exports } from "./ThreadTransfer-DB_zsrtJ.mjs";
100
+ import { o as ThreadImport_exports } from "./ThreadImport-DUcPj5jC.mjs";
101
+ import { n as ThreadTransfer_exports } from "./ThreadTransfer-BWnAHIge.mjs";
102
102
  import { t as ThreadInvariants_exports } from "./durable/ThreadInvariants.mjs";
103
103
  import { t as ThreadProjection_exports } from "./durable/ThreadProjection.mjs";
104
104
  import { t as ThreadProjectionMaintenance_exports } from "./durable/ThreadProjectionMaintenance.mjs";
@@ -1,6 +1,6 @@
1
1
  import { u as ThreadId } from "./Identifiers-CN2s30fF.mjs";
2
2
  import { d as CanonicalRecordEnvelope, et as RecordId } from "./Records-BTnGRdcf.mjs";
3
- import { Fi as ThreadPromptRead, Gi as ThreadStoreError, Mi as ThreadNotMaterialized, Ri as ThreadReader, ws as JournalRecordEnvelope } from "./Admin-Qa3I1oA5.mjs";
3
+ import { Fi as ThreadPromptRead, Gi as ThreadStoreError, Mi as ThreadNotMaterialized, Ri as ThreadReader, ws as JournalRecordEnvelope } from "./Admin-Bpg24yCK.mjs";
4
4
  import { Context, Effect, Layer, Stream } from "effect";
5
5
  //#region src/durable/internal/run-context-reader.d.ts
6
6
  declare const RunContextReader_base: Context.ServiceClass<RunContextReader, "@effect-agent/thread/RunContextReader", {
@@ -14,4 +14,4 @@ declare class RunContextReader extends RunContextReader_base {
14
14
  }
15
15
  //#endregion
16
16
  export { RunContextReader as t };
17
- //# sourceMappingURL=run-context-reader-DVhJZ1Qe.d.mts.map
17
+ //# sourceMappingURL=run-context-reader-BtBPX_nC.d.mts.map
@@ -0,0 +1,17 @@
1
+ import * as Context from "effect/Context";
2
+ //#region src/core/internal/tool-execution.ts
3
+ /**
4
+ * Effect AI Tool annotation key declaring a Tool's execution class, applied
5
+ * with `Tool.annotate(ToolExecutionClass, "...")`.
6
+ *
7
+ * Unannotated Tools default to `"uncertain"`: security and durability
8
+ * decisions are fail-closed, so the framework never infers a safer class
9
+ * from a Tool's shape.
10
+ */
11
+ const ToolExecutionClass = Context.Reference("@effect-agent/engine/ToolExecutionClass", { defaultValue: () => "uncertain" });
12
+ /** Read a Tool's declared execution class, falling back to the fail-closed `"uncertain"` default. */
13
+ const getToolExecutionClass = (tool) => Context.get(tool.annotations, ToolExecutionClass);
14
+ //#endregion
15
+ export { getToolExecutionClass as n, ToolExecutionClass as t };
16
+
17
+ //# sourceMappingURL=tool-execution-Ba7tO7Pt.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-execution-Ba7tO7Pt.mjs","names":[],"sources":["../src/core/internal/tool-execution.ts"],"sourcesContent":["import type { Tool } from \"effect/ai\";\nimport * as Context from \"effect/Context\";\n\n/**\n * Declared external execution class of one Tool, used by the durable runtime\n * to decide which Tool Calls need the prepared/settled uncertainty protocol:\n *\n * - `\"readonly\"`: the handler performs no external mutation. A crash between\n * start and settlement is a free re-run; no prepared record is written.\n * - `\"idempotent\"`: the handler declares an external idempotency contract\n * (it owns key derivation). Prepared/settled records are written and\n * recovery may re-execute without reconciliation proof.\n * - `\"uncertain\"`: no external contract is declared. Prepared/settled records\n * are written and recovery must reconcile or record an Unknown Outcome.\n */\nexport type ToolExecutionClassValue = \"readonly\" | \"idempotent\" | \"uncertain\";\n\n/**\n * Effect AI Tool annotation key declaring a Tool's execution class, applied\n * with `Tool.annotate(ToolExecutionClass, \"...\")`.\n *\n * Unannotated Tools default to `\"uncertain\"`: security and durability\n * decisions are fail-closed, so the framework never infers a safer class\n * from a Tool's shape.\n */\nexport const ToolExecutionClass = Context.Reference<ToolExecutionClassValue>(\n \"@effect-agent/engine/ToolExecutionClass\",\n { defaultValue: () => \"uncertain\" },\n);\n\n/** Read a Tool's declared execution class, falling back to the fail-closed `\"uncertain\"` default. */\nexport const getToolExecutionClass = (tool: Tool.Any): ToolExecutionClassValue =>\n Context.get(tool.annotations, ToolExecutionClass);\n"],"mappings":";;;;;;;;;;AAyBA,MAAa,qBAAqB,QAAQ,UACxC,2CACA,EAAE,oBAAoB,YAAY,CACpC;;AAGA,MAAa,yBAAyB,SACpC,QAAQ,IAAI,KAAK,aAAa,kBAAkB"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@yielded/agent","version":"0.1.0-beta.175","devDependencies":{"@effect/platform-node":"4.0.3","@effect/vitest":"4.0.3","effect":"4.0.3","typescript":"7.0.2","vite":"npm:@voidzero-dev/vite-plus-core@1.1.0","vite-plus":"1.1.0","vitest":"5.0.3"},"peerDependencies":{"effect":"^4.0.3"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./activity-store":{"types":"./dist/durable/ActivityStore.d.mts","default":"./dist/durable/ActivityStore.mjs"},"./admin":{"types":"./dist/durable/Admin.d.mts","default":"./dist/durable/Admin.mjs"},"./agent":{"types":"./dist/core/Agent.d.mts","default":"./dist/core/Agent.mjs"},"./agent-error":{"types":"./dist/core/AgentError.d.mts","default":"./dist/core/AgentError.mjs"},"./agent-policy":{"types":"./dist/core/AgentPolicy.d.mts","default":"./dist/core/AgentPolicy.mjs"},"./agent-registration":{"types":"./dist/durable/AgentRegistration.d.mts","default":"./dist/durable/AgentRegistration.mjs"},"./agent-runtime":{"types":"./dist/engine/AgentRuntime.d.mts","default":"./dist/engine/AgentRuntime.mjs"},"./agent-updates":{"types":"./dist/core/AgentUpdates.d.mts","default":"./dist/core/AgentUpdates.mjs"},"./approval":{"types":"./dist/capabilities/Approval.d.mts","default":"./dist/capabilities/Approval.mjs"},"./browser-use":{"types":"./dist/capabilities/BrowserUse.d.mts","default":"./dist/capabilities/BrowserUse.mjs"},"./budget":{"types":"./dist/capabilities/Budget.d.mts","default":"./dist/capabilities/Budget.mjs"},"./code-executor":{"types":"./dist/sandbox/CodeExecutor.d.mts","default":"./dist/sandbox/CodeExecutor.mjs"},"./code-mode":{"types":"./dist/capabilities/CodeMode.d.mts","default":"./dist/capabilities/CodeMode.mjs"},"./commands":{"types":"./dist/capabilities/Commands.d.mts","default":"./dist/capabilities/Commands.mjs"},"./committed-activity":{"types":"./dist/durable/CommittedActivity.d.mts","default":"./dist/durable/CommittedActivity.mjs"},"./compaction":{"types":"./dist/engine/Compaction.d.mts","default":"./dist/engine/Compaction.mjs"},"./context-compactor":{"types":"./dist/engine/ContextCompactor.d.mts","default":"./dist/engine/ContextCompactor.mjs"},"./context-history":{"types":"./dist/engine/ContextHistory.d.mts","default":"./dist/engine/ContextHistory.mjs"},"./context-tools":{"types":"./dist/capabilities/ContextTools.d.mts","default":"./dist/capabilities/ContextTools.mjs"},"./context-window":{"types":"./dist/engine/ContextWindow.d.mts","default":"./dist/engine/ContextWindow.mjs"},"./digest":{"types":"./dist/durable/Digest.d.mts","default":"./dist/durable/Digest.mjs"},"./durable-agent-runtime":{"types":"./dist/durable/DurableAgentRuntime.d.mts","default":"./dist/durable/DurableAgentRuntime.mjs"},"./durable-failpoint":{"types":"./dist/durable/DurableFailpoint.d.mts","default":"./dist/durable/DurableFailpoint.mjs"},"./durable-step":{"types":"./dist/engine/DurableStep.d.mts","default":"./dist/engine/DurableStep.mjs"},"./event-source":{"types":"./dist/durable/EventSource.d.mts","default":"./dist/durable/EventSource.mjs"},"./failure-diagnostic":{"types":"./dist/core/FailureDiagnostic.d.mts","default":"./dist/core/FailureDiagnostic.mjs"},"./git-hub-workflow-source":{"types":"./dist/durable/GitHubWorkflowSource.d.mts","default":"./dist/durable/GitHubWorkflowSource.mjs"},"./id-generator":{"types":"./dist/core/IdGenerator.d.mts","default":"./dist/core/IdGenerator.mjs"},"./identifiers":{"types":"./dist/core/Identifiers.d.mts","default":"./dist/core/Identifiers.mjs"},"./in-memory":{"types":"./dist/InMemory.d.mts","default":"./dist/InMemory.mjs"},"./interactive-browser":{"types":"./dist/sandbox/InteractiveBrowser.d.mts","default":"./dist/sandbox/InteractiveBrowser.mjs"},"./mcp":{"types":"./dist/capabilities/Mcp.d.mts","default":"./dist/capabilities/Mcp.mjs"},"./mcp-client":{"types":"./dist/capabilities/McpClient.d.mts","default":"./dist/capabilities/McpClient.mjs"},"./memory":{"types":"./dist/core/Memory.d.mts","default":"./dist/core/Memory.mjs"},"./memory-namespace":{"types":"./dist/core/MemoryNamespace.d.mts","default":"./dist/core/MemoryNamespace.mjs"},"./memory-notes":{"types":"./dist/capabilities/MemoryNotes.d.mts","default":"./dist/capabilities/MemoryNotes.mjs"},"./memory-reference":{"types":"./dist/core/MemoryReference.d.mts","default":"./dist/core/MemoryReference.mjs"},"./memory-revalidation":{"types":"./dist/core/MemoryRevalidation.d.mts","default":"./dist/core/MemoryRevalidation.mjs"},"./memory-store":{"types":"./dist/core/MemoryStore.d.mts","default":"./dist/core/MemoryStore.mjs"},"./message-delivery":{"types":"./dist/durable/MessageDelivery.d.mts","default":"./dist/durable/MessageDelivery.mjs"},"./messaging":{"types":"./dist/capabilities/Messaging.d.mts","default":"./dist/capabilities/Messaging.mjs"},"./messaging-host":{"types":"./dist/engine/MessagingHost.d.mts","default":"./dist/engine/MessagingHost.mjs"},"./model-context":{"types":"./dist/capabilities/ModelContext.d.mts","default":"./dist/capabilities/ModelContext.mjs"},"./operation-authorizer":{"types":"./dist/durable/OperationAuthorizer.d.mts","default":"./dist/durable/OperationAuthorizer.mjs"},"./output":{"types":"./dist/engine/Output.d.mts","default":"./dist/engine/Output.mjs"},"./page-capture":{"types":"./dist/sandbox/PageCapture.d.mts","default":"./dist/sandbox/PageCapture.mjs"},"./page-crawl":{"types":"./dist/sandbox/PageCrawl.d.mts","default":"./dist/sandbox/PageCrawl.mjs"},"./page-screenshot":{"types":"./dist/sandbox/PageScreenshot.d.mts","default":"./dist/sandbox/PageScreenshot.mjs"},"./persistent-history":{"types":"./dist/durable/PersistentHistory.d.mts","default":"./dist/durable/PersistentHistory.mjs"},"./prepared-input-admission":{"types":"./dist/durable/PreparedInputAdmission.d.mts","default":"./dist/durable/PreparedInputAdmission.mjs"},"./provisional-text":{"types":"./dist/core/ProvisionalText.d.mts","default":"./dist/core/ProvisionalText.mjs"},"./receipt":{"types":"./dist/core/Receipt.d.mts","default":"./dist/core/Receipt.mjs"},"./records":{"types":"./dist/durable/Records.d.mts","default":"./dist/durable/Records.mjs"},"./recovery":{"types":"./dist/durable/Recovery.d.mts","default":"./dist/durable/Recovery.mjs"},"./redaction":{"types":"./dist/capabilities/Redaction.d.mts","default":"./dist/capabilities/Redaction.mjs"},"./remembering":{"types":"./dist/capabilities/Remembering.d.mts","default":"./dist/capabilities/Remembering.mjs"},"./remembering-store":{"types":"./dist/core/RememberingStore.d.mts","default":"./dist/core/RememberingStore.mjs"},"./run-event":{"types":"./dist/core/RunEvent.d.mts","default":"./dist/core/RunEvent.mjs"},"./run-event-sink":{"types":"./dist/engine/RunEventSink.d.mts","default":"./dist/engine/RunEventSink.mjs"},"./run-hooks":{"types":"./dist/capabilities/RunHooks.d.mts","default":"./dist/capabilities/RunHooks.mjs"},"./run-journal":{"types":"./dist/durable/RunJournal.d.mts","default":"./dist/durable/RunJournal.mjs"},"./run-continuation":{"types":"./dist/durable/RunContinuation.d.mts","default":"./dist/durable/RunContinuation.mjs"},"./thread-work":{"types":"./dist/durable/ThreadWork.d.mts","default":"./dist/durable/ThreadWork.mjs"},"./run-options":{"types":"./dist/engine/RunOptions.d.mts","default":"./dist/engine/RunOptions.mjs"},"./run-policy-usage":{"types":"./dist/core/RunPolicyUsage.d.mts","default":"./dist/core/RunPolicyUsage.mjs"},"./run-storage":{"types":"./dist/durable/RunStorage.d.mts","default":"./dist/durable/RunStorage.mjs"},"./sandbox":{"types":"./dist/sandbox/Sandbox.d.mts","default":"./dist/sandbox/Sandbox.mjs"},"./schedule":{"types":"./dist/durable/Schedule.d.mts","default":"./dist/durable/Schedule.mjs"},"./schedule-transition":{"types":"./dist/durable/ScheduleTransition.d.mts","default":"./dist/durable/ScheduleTransition.mjs"},"./scheduling":{"types":"./dist/durable/Scheduling.d.mts","default":"./dist/durable/Scheduling.mjs"},"./semantic-memory":{"types":"./dist/capabilities/SemanticMemory.d.mts","default":"./dist/capabilities/SemanticMemory.mjs"},"./semantic-memory-index":{"types":"./dist/core/SemanticMemoryIndex.d.mts","default":"./dist/core/SemanticMemoryIndex.mjs"},"./semantic-memory-revalidation":{"types":"./dist/core/SemanticMemoryRevalidation.d.mts","default":"./dist/core/SemanticMemoryRevalidation.mjs"},"./settlement-publisher":{"types":"./dist/durable/SettlementPublisher.d.mts","default":"./dist/durable/SettlementPublisher.mjs"},"./sql-memory-store":{"types":"./dist/durable/SqlMemoryStore.d.mts","default":"./dist/durable/SqlMemoryStore.mjs"},"./subagent":{"types":"./dist/capabilities/Subagent.d.mts","default":"./dist/capabilities/Subagent.mjs"},"./subagent-contract":{"types":"./dist/core/SubagentContract.d.mts","default":"./dist/core/SubagentContract.mjs"},"./subagent-host":{"types":"./dist/engine/SubagentHost.d.mts","default":"./dist/engine/SubagentHost.mjs"},"./subagent-reservations":{"types":"./dist/capabilities/SubagentReservations.d.mts","default":"./dist/capabilities/SubagentReservations.mjs"},"./submission-ledger":{"types":"./dist/durable/SubmissionLedger.d.mts","default":"./dist/durable/SubmissionLedger.mjs"},"./submission-status":{"types":"./dist/durable/SubmissionStatus.d.mts","default":"./dist/durable/SubmissionStatus.mjs"},"./subscription":{"types":"./dist/durable/Subscription.d.mts","default":"./dist/durable/Subscription.mjs"},"./subscription-input":{"types":"./dist/durable/SubscriptionInput.d.mts","default":"./dist/durable/SubscriptionInput.mjs"},"./subscription-tools":{"types":"./dist/durable/SubscriptionTools.d.mts","default":"./dist/durable/SubscriptionTools.mjs"},"./subscription-transition":{"types":"./dist/durable/SubscriptionTransition.d.mts","default":"./dist/durable/SubscriptionTransition.mjs"},"./subscriptions":{"types":"./dist/durable/Subscriptions.d.mts","default":"./dist/durable/Subscriptions.mjs"},"./testing/certification":{"types":"./dist/durable/Certification.d.mts","default":"./dist/durable/Certification.mjs"},"./testing/durable-failpoint-test-control":{"types":"./dist/durable/DurableFailpointTestControl.d.mts","default":"./dist/durable/DurableFailpointTestControl.mjs"},"./testing/message-delivery-store-conformance":{"types":"./dist/durable/MessageDeliveryStoreConformance.d.mts","default":"./dist/durable/MessageDeliveryStoreConformance.mjs"},"./testing/schedule-store-conformance":{"types":"./dist/durable/ScheduleStoreConformance.d.mts","default":"./dist/durable/ScheduleStoreConformance.mjs"},"./testing/submission-ledger-conformance":{"types":"./dist/durable/SubmissionLedgerConformance.d.mts","default":"./dist/durable/SubmissionLedgerConformance.mjs"},"./testing/subscription-store-conformance":{"types":"./dist/durable/SubscriptionStoreConformance.d.mts","default":"./dist/durable/SubscriptionStoreConformance.mjs"},"./testing/thread-store-conformance":{"types":"./dist/durable/ThreadStoreConformance.d.mts","default":"./dist/durable/ThreadStoreConformance.mjs"},"./thread":{"types":"./dist/core/Thread.d.mts","default":"./dist/core/Thread.mjs"},"./thread-context-history":{"types":"./dist/durable/ThreadContextHistory.d.mts","default":"./dist/durable/ThreadContextHistory.mjs"},"./thread-context-history-projection":{"types":"./dist/durable/ThreadContextHistoryProjection.d.mts","default":"./dist/durable/ThreadContextHistoryProjection.mjs"},"./thread-history":{"types":"./dist/engine/ThreadHistory.d.mts","default":"./dist/engine/ThreadHistory.mjs"},"./thread-invariants":{"types":"./dist/durable/ThreadInvariants.d.mts","default":"./dist/durable/ThreadInvariants.mjs"},"./thread-projection":{"types":"./dist/durable/ThreadProjection.d.mts","default":"./dist/durable/ThreadProjection.mjs"},"./thread-projection-maintenance":{"types":"./dist/durable/ThreadProjectionMaintenance.d.mts","default":"./dist/durable/ThreadProjectionMaintenance.mjs"},"./thread-reader":{"types":"./dist/durable/ThreadReader.d.mts","default":"./dist/durable/ThreadReader.mjs"},"./thread-store":{"types":"./dist/durable/ThreadStore.d.mts","default":"./dist/durable/ThreadStore.mjs"},"./tool-broker":{"types":"./dist/engine/ToolBroker.d.mts","default":"./dist/engine/ToolBroker.mjs"},"./tool-discovery":{"types":"./dist/capabilities/ToolDiscovery.d.mts","default":"./dist/capabilities/ToolDiscovery.mjs"},"./tool-exposure":{"types":"./dist/ToolExposure.d.mts","default":"./dist/ToolExposure.mjs"},"./tool-reconciler":{"types":"./dist/durable/ToolReconciler.d.mts","default":"./dist/durable/ToolReconciler.mjs"},"./tool-result":{"types":"./dist/core/ToolResult.d.mts","default":"./dist/core/ToolResult.mjs"},"./usage":{"types":"./dist/core/Usage.d.mts","default":"./dist/core/Usage.mjs"},"./wake-scheduler":{"types":"./dist/durable/WakeScheduler.d.mts","default":"./dist/durable/WakeScheduler.mjs"},"./web-capture":{"types":"./dist/capabilities/WebCapture.d.mts","default":"./dist/capabilities/WebCapture.mjs"},"./web-search":{"types":"./dist/capabilities/WebSearch.d.mts","default":"./dist/capabilities/WebSearch.mjs"},"./worker":{"types":"./dist/core/Worker.d.mts","default":"./dist/core/Worker.mjs"},"./worker-admission":{"types":"./dist/durable/WorkerAdmission.d.mts","default":"./dist/durable/WorkerAdmission.mjs"},"./worker-host":{"types":"./dist/durable/WorkerHost.d.mts","default":"./dist/durable/WorkerHost.mjs"},"./lifecycle-publication":{"types":"./dist/durable/LifecyclePublication.d.mts","default":"./dist/durable/LifecyclePublication.mjs"},"./record-format":{"types":"./dist/durable/RecordFormat.d.mts","default":"./dist/durable/RecordFormat.mjs"},"./thread-import":{"types":"./dist/durable/ThreadImport.d.mts","default":"./dist/durable/ThreadImport.mjs"},"./thread-archive-range":{"types":"./dist/durable/ThreadArchiveRange.d.mts","default":"./dist/durable/ThreadArchiveRange.mjs"},"./thread-transfer":{"types":"./dist/durable/ThreadTransfer.d.mts","default":"./dist/durable/ThreadTransfer.mjs"}},"description":"Effect-native agents, execution, subagents, and sandbox contracts in one tree-shakeable package.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/yielded-dev/agent.git","directory":"packages/effect-agent"},"files":["dist","src"],"type":"module","sideEffects":[],"publishConfig":{"access":"public"},"scripts":{"build":"vp pack","check":"tsc --noEmit -p tsconfig.json","test":"vp test --passWithNoTests"}}
1
+ {"name":"@yielded/agent","version":"0.1.0-beta.177","devDependencies":{"@effect/platform-node":"4.0.4","@effect/vitest":"4.0.4","effect":"4.0.4","typescript":"7.0.2","vite":"npm:@voidzero-dev/vite-plus-core@1.1.0","vite-plus":"1.1.0","vitest":"5.0.3"},"peerDependencies":{"effect":"^4.0.3"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./activity-store":{"types":"./dist/durable/ActivityStore.d.mts","default":"./dist/durable/ActivityStore.mjs"},"./admin":{"types":"./dist/durable/Admin.d.mts","default":"./dist/durable/Admin.mjs"},"./agent":{"types":"./dist/core/Agent.d.mts","default":"./dist/core/Agent.mjs"},"./agent-error":{"types":"./dist/core/AgentError.d.mts","default":"./dist/core/AgentError.mjs"},"./agent-policy":{"types":"./dist/core/AgentPolicy.d.mts","default":"./dist/core/AgentPolicy.mjs"},"./agent-registration":{"types":"./dist/durable/AgentRegistration.d.mts","default":"./dist/durable/AgentRegistration.mjs"},"./agent-runtime":{"types":"./dist/engine/AgentRuntime.d.mts","default":"./dist/engine/AgentRuntime.mjs"},"./agent-updates":{"types":"./dist/core/AgentUpdates.d.mts","default":"./dist/core/AgentUpdates.mjs"},"./approval":{"types":"./dist/capabilities/Approval.d.mts","default":"./dist/capabilities/Approval.mjs"},"./browser-use":{"types":"./dist/capabilities/BrowserUse.d.mts","default":"./dist/capabilities/BrowserUse.mjs"},"./budget":{"types":"./dist/capabilities/Budget.d.mts","default":"./dist/capabilities/Budget.mjs"},"./code-executor":{"types":"./dist/sandbox/CodeExecutor.d.mts","default":"./dist/sandbox/CodeExecutor.mjs"},"./code-mode":{"types":"./dist/capabilities/CodeMode.d.mts","default":"./dist/capabilities/CodeMode.mjs"},"./commands":{"types":"./dist/capabilities/Commands.d.mts","default":"./dist/capabilities/Commands.mjs"},"./committed-activity":{"types":"./dist/durable/CommittedActivity.d.mts","default":"./dist/durable/CommittedActivity.mjs"},"./compaction":{"types":"./dist/engine/Compaction.d.mts","default":"./dist/engine/Compaction.mjs"},"./context-compactor":{"types":"./dist/engine/ContextCompactor.d.mts","default":"./dist/engine/ContextCompactor.mjs"},"./context-history":{"types":"./dist/engine/ContextHistory.d.mts","default":"./dist/engine/ContextHistory.mjs"},"./context-tools":{"types":"./dist/capabilities/ContextTools.d.mts","default":"./dist/capabilities/ContextTools.mjs"},"./context-window":{"types":"./dist/engine/ContextWindow.d.mts","default":"./dist/engine/ContextWindow.mjs"},"./digest":{"types":"./dist/durable/Digest.d.mts","default":"./dist/durable/Digest.mjs"},"./durable-agent-runtime":{"types":"./dist/durable/DurableAgentRuntime.d.mts","default":"./dist/durable/DurableAgentRuntime.mjs"},"./durable-failpoint":{"types":"./dist/durable/DurableFailpoint.d.mts","default":"./dist/durable/DurableFailpoint.mjs"},"./durable-step":{"types":"./dist/engine/DurableStep.d.mts","default":"./dist/engine/DurableStep.mjs"},"./event-source":{"types":"./dist/durable/EventSource.d.mts","default":"./dist/durable/EventSource.mjs"},"./failure-diagnostic":{"types":"./dist/core/FailureDiagnostic.d.mts","default":"./dist/core/FailureDiagnostic.mjs"},"./git-hub-workflow-source":{"types":"./dist/durable/GitHubWorkflowSource.d.mts","default":"./dist/durable/GitHubWorkflowSource.mjs"},"./id-generator":{"types":"./dist/core/IdGenerator.d.mts","default":"./dist/core/IdGenerator.mjs"},"./identifiers":{"types":"./dist/core/Identifiers.d.mts","default":"./dist/core/Identifiers.mjs"},"./in-memory":{"types":"./dist/InMemory.d.mts","default":"./dist/InMemory.mjs"},"./interactive-browser":{"types":"./dist/sandbox/InteractiveBrowser.d.mts","default":"./dist/sandbox/InteractiveBrowser.mjs"},"./mcp":{"types":"./dist/capabilities/Mcp.d.mts","default":"./dist/capabilities/Mcp.mjs"},"./mcp-client":{"types":"./dist/capabilities/McpClient.d.mts","default":"./dist/capabilities/McpClient.mjs"},"./memory":{"types":"./dist/core/Memory.d.mts","default":"./dist/core/Memory.mjs"},"./memory-namespace":{"types":"./dist/core/MemoryNamespace.d.mts","default":"./dist/core/MemoryNamespace.mjs"},"./memory-notes":{"types":"./dist/capabilities/MemoryNotes.d.mts","default":"./dist/capabilities/MemoryNotes.mjs"},"./memory-reference":{"types":"./dist/core/MemoryReference.d.mts","default":"./dist/core/MemoryReference.mjs"},"./memory-revalidation":{"types":"./dist/core/MemoryRevalidation.d.mts","default":"./dist/core/MemoryRevalidation.mjs"},"./memory-store":{"types":"./dist/core/MemoryStore.d.mts","default":"./dist/core/MemoryStore.mjs"},"./message-delivery":{"types":"./dist/durable/MessageDelivery.d.mts","default":"./dist/durable/MessageDelivery.mjs"},"./messaging":{"types":"./dist/capabilities/Messaging.d.mts","default":"./dist/capabilities/Messaging.mjs"},"./messaging-host":{"types":"./dist/engine/MessagingHost.d.mts","default":"./dist/engine/MessagingHost.mjs"},"./model-context":{"types":"./dist/capabilities/ModelContext.d.mts","default":"./dist/capabilities/ModelContext.mjs"},"./operation-authorizer":{"types":"./dist/durable/OperationAuthorizer.d.mts","default":"./dist/durable/OperationAuthorizer.mjs"},"./output":{"types":"./dist/engine/Output.d.mts","default":"./dist/engine/Output.mjs"},"./page-capture":{"types":"./dist/sandbox/PageCapture.d.mts","default":"./dist/sandbox/PageCapture.mjs"},"./page-crawl":{"types":"./dist/sandbox/PageCrawl.d.mts","default":"./dist/sandbox/PageCrawl.mjs"},"./page-screenshot":{"types":"./dist/sandbox/PageScreenshot.d.mts","default":"./dist/sandbox/PageScreenshot.mjs"},"./persistent-history":{"types":"./dist/durable/PersistentHistory.d.mts","default":"./dist/durable/PersistentHistory.mjs"},"./prepared-input-admission":{"types":"./dist/durable/PreparedInputAdmission.d.mts","default":"./dist/durable/PreparedInputAdmission.mjs"},"./provisional-text":{"types":"./dist/core/ProvisionalText.d.mts","default":"./dist/core/ProvisionalText.mjs"},"./receipt":{"types":"./dist/core/Receipt.d.mts","default":"./dist/core/Receipt.mjs"},"./records":{"types":"./dist/durable/Records.d.mts","default":"./dist/durable/Records.mjs"},"./recovery":{"types":"./dist/durable/Recovery.d.mts","default":"./dist/durable/Recovery.mjs"},"./redaction":{"types":"./dist/capabilities/Redaction.d.mts","default":"./dist/capabilities/Redaction.mjs"},"./remembering":{"types":"./dist/capabilities/Remembering.d.mts","default":"./dist/capabilities/Remembering.mjs"},"./remembering-store":{"types":"./dist/core/RememberingStore.d.mts","default":"./dist/core/RememberingStore.mjs"},"./run-event":{"types":"./dist/core/RunEvent.d.mts","default":"./dist/core/RunEvent.mjs"},"./run-event-sink":{"types":"./dist/engine/RunEventSink.d.mts","default":"./dist/engine/RunEventSink.mjs"},"./run-hooks":{"types":"./dist/capabilities/RunHooks.d.mts","default":"./dist/capabilities/RunHooks.mjs"},"./run-journal":{"types":"./dist/durable/RunJournal.d.mts","default":"./dist/durable/RunJournal.mjs"},"./run-continuation":{"types":"./dist/durable/RunContinuation.d.mts","default":"./dist/durable/RunContinuation.mjs"},"./thread-work":{"types":"./dist/durable/ThreadWork.d.mts","default":"./dist/durable/ThreadWork.mjs"},"./run-options":{"types":"./dist/engine/RunOptions.d.mts","default":"./dist/engine/RunOptions.mjs"},"./run-policy-usage":{"types":"./dist/core/RunPolicyUsage.d.mts","default":"./dist/core/RunPolicyUsage.mjs"},"./run-storage":{"types":"./dist/durable/RunStorage.d.mts","default":"./dist/durable/RunStorage.mjs"},"./sandbox":{"types":"./dist/sandbox/Sandbox.d.mts","default":"./dist/sandbox/Sandbox.mjs"},"./schedule":{"types":"./dist/durable/Schedule.d.mts","default":"./dist/durable/Schedule.mjs"},"./schedule-transition":{"types":"./dist/durable/ScheduleTransition.d.mts","default":"./dist/durable/ScheduleTransition.mjs"},"./scheduling":{"types":"./dist/durable/Scheduling.d.mts","default":"./dist/durable/Scheduling.mjs"},"./semantic-memory":{"types":"./dist/capabilities/SemanticMemory.d.mts","default":"./dist/capabilities/SemanticMemory.mjs"},"./semantic-memory-index":{"types":"./dist/core/SemanticMemoryIndex.d.mts","default":"./dist/core/SemanticMemoryIndex.mjs"},"./semantic-memory-revalidation":{"types":"./dist/core/SemanticMemoryRevalidation.d.mts","default":"./dist/core/SemanticMemoryRevalidation.mjs"},"./settlement-publisher":{"types":"./dist/durable/SettlementPublisher.d.mts","default":"./dist/durable/SettlementPublisher.mjs"},"./sql-memory-store":{"types":"./dist/durable/SqlMemoryStore.d.mts","default":"./dist/durable/SqlMemoryStore.mjs"},"./subagent":{"types":"./dist/capabilities/Subagent.d.mts","default":"./dist/capabilities/Subagent.mjs"},"./subagent-contract":{"types":"./dist/core/SubagentContract.d.mts","default":"./dist/core/SubagentContract.mjs"},"./subagent-host":{"types":"./dist/engine/SubagentHost.d.mts","default":"./dist/engine/SubagentHost.mjs"},"./subagent-reservations":{"types":"./dist/capabilities/SubagentReservations.d.mts","default":"./dist/capabilities/SubagentReservations.mjs"},"./submission-ledger":{"types":"./dist/durable/SubmissionLedger.d.mts","default":"./dist/durable/SubmissionLedger.mjs"},"./submission-status":{"types":"./dist/durable/SubmissionStatus.d.mts","default":"./dist/durable/SubmissionStatus.mjs"},"./subscription":{"types":"./dist/durable/Subscription.d.mts","default":"./dist/durable/Subscription.mjs"},"./subscription-input":{"types":"./dist/durable/SubscriptionInput.d.mts","default":"./dist/durable/SubscriptionInput.mjs"},"./subscription-tools":{"types":"./dist/durable/SubscriptionTools.d.mts","default":"./dist/durable/SubscriptionTools.mjs"},"./subscription-transition":{"types":"./dist/durable/SubscriptionTransition.d.mts","default":"./dist/durable/SubscriptionTransition.mjs"},"./subscriptions":{"types":"./dist/durable/Subscriptions.d.mts","default":"./dist/durable/Subscriptions.mjs"},"./testing/certification":{"types":"./dist/durable/Certification.d.mts","default":"./dist/durable/Certification.mjs"},"./testing/durable-failpoint-test-control":{"types":"./dist/durable/DurableFailpointTestControl.d.mts","default":"./dist/durable/DurableFailpointTestControl.mjs"},"./testing/message-delivery-store-conformance":{"types":"./dist/durable/MessageDeliveryStoreConformance.d.mts","default":"./dist/durable/MessageDeliveryStoreConformance.mjs"},"./testing/schedule-store-conformance":{"types":"./dist/durable/ScheduleStoreConformance.d.mts","default":"./dist/durable/ScheduleStoreConformance.mjs"},"./testing/submission-ledger-conformance":{"types":"./dist/durable/SubmissionLedgerConformance.d.mts","default":"./dist/durable/SubmissionLedgerConformance.mjs"},"./testing/subscription-store-conformance":{"types":"./dist/durable/SubscriptionStoreConformance.d.mts","default":"./dist/durable/SubscriptionStoreConformance.mjs"},"./testing/thread-store-conformance":{"types":"./dist/durable/ThreadStoreConformance.d.mts","default":"./dist/durable/ThreadStoreConformance.mjs"},"./thread":{"types":"./dist/core/Thread.d.mts","default":"./dist/core/Thread.mjs"},"./thread-context-history":{"types":"./dist/durable/ThreadContextHistory.d.mts","default":"./dist/durable/ThreadContextHistory.mjs"},"./thread-context-history-projection":{"types":"./dist/durable/ThreadContextHistoryProjection.d.mts","default":"./dist/durable/ThreadContextHistoryProjection.mjs"},"./thread-history":{"types":"./dist/engine/ThreadHistory.d.mts","default":"./dist/engine/ThreadHistory.mjs"},"./thread-invariants":{"types":"./dist/durable/ThreadInvariants.d.mts","default":"./dist/durable/ThreadInvariants.mjs"},"./thread-projection":{"types":"./dist/durable/ThreadProjection.d.mts","default":"./dist/durable/ThreadProjection.mjs"},"./thread-projection-maintenance":{"types":"./dist/durable/ThreadProjectionMaintenance.d.mts","default":"./dist/durable/ThreadProjectionMaintenance.mjs"},"./thread-reader":{"types":"./dist/durable/ThreadReader.d.mts","default":"./dist/durable/ThreadReader.mjs"},"./thread-store":{"types":"./dist/durable/ThreadStore.d.mts","default":"./dist/durable/ThreadStore.mjs"},"./tool-broker":{"types":"./dist/engine/ToolBroker.d.mts","default":"./dist/engine/ToolBroker.mjs"},"./tool-discovery":{"types":"./dist/capabilities/ToolDiscovery.d.mts","default":"./dist/capabilities/ToolDiscovery.mjs"},"./tool-exposure":{"types":"./dist/ToolExposure.d.mts","default":"./dist/ToolExposure.mjs"},"./tool-reconciler":{"types":"./dist/durable/ToolReconciler.d.mts","default":"./dist/durable/ToolReconciler.mjs"},"./tool-result":{"types":"./dist/core/ToolResult.d.mts","default":"./dist/core/ToolResult.mjs"},"./usage":{"types":"./dist/core/Usage.d.mts","default":"./dist/core/Usage.mjs"},"./wake-scheduler":{"types":"./dist/durable/WakeScheduler.d.mts","default":"./dist/durable/WakeScheduler.mjs"},"./web-capture":{"types":"./dist/capabilities/WebCapture.d.mts","default":"./dist/capabilities/WebCapture.mjs"},"./web-search":{"types":"./dist/capabilities/WebSearch.d.mts","default":"./dist/capabilities/WebSearch.mjs"},"./worker":{"types":"./dist/core/Worker.d.mts","default":"./dist/core/Worker.mjs"},"./worker-admission":{"types":"./dist/durable/WorkerAdmission.d.mts","default":"./dist/durable/WorkerAdmission.mjs"},"./worker-host":{"types":"./dist/durable/WorkerHost.d.mts","default":"./dist/durable/WorkerHost.mjs"},"./lifecycle-publication":{"types":"./dist/durable/LifecyclePublication.d.mts","default":"./dist/durable/LifecyclePublication.mjs"},"./record-format":{"types":"./dist/durable/RecordFormat.d.mts","default":"./dist/durable/RecordFormat.mjs"},"./thread-import":{"types":"./dist/durable/ThreadImport.d.mts","default":"./dist/durable/ThreadImport.mjs"},"./thread-archive-range":{"types":"./dist/durable/ThreadArchiveRange.d.mts","default":"./dist/durable/ThreadArchiveRange.mjs"},"./thread-transfer":{"types":"./dist/durable/ThreadTransfer.d.mts","default":"./dist/durable/ThreadTransfer.mjs"}},"description":"Effect-native agents, execution, subagents, and sandbox contracts in one tree-shakeable package.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/yielded-dev/agent.git","directory":"packages/effect-agent"},"files":["dist","src"],"type":"module","sideEffects":[],"publishConfig":{"access":"public"},"scripts":{"build":"vp pack","check":"tsc --noEmit -p tsconfig.json","test":"vp test --passWithNoTests"}}
@@ -101,10 +101,12 @@ export const WorkerRun = Schema.Struct({
101
101
  export const WorkerSummary = Schema.Struct({
102
102
  worker: WorkerRef,
103
103
  latestReceipt: Schema.NullOr(Receipt),
104
- /** stopping/stopped identify an owner-issued worker stop, never an ordinary Receipt abort. */
104
+ /** Unknown work awaits reconciliation and is not progressing. stopping/stopped identify
105
+ * an owner-issued worker stop, never an ordinary Receipt abort. */
105
106
  state: Schema.Literals([
106
107
  "starting",
107
108
  "active",
109
+ "unknown",
108
110
  "idle",
109
111
  "stopping",
110
112
  "stopped",
@@ -3,6 +3,12 @@ import * as Toolkit from "effect/ai/Toolkit";
3
3
  import * as Schema from "effect/Schema";
4
4
 
5
5
  import { Emitter, UpdateError } from "../AgentUpdates.ts";
6
+ import type { RunId } from "../Identifiers.ts";
7
+ import { ToolExecutionClass } from "./tool-execution.ts";
8
+
9
+ /** Stable native acceptance identity, shared by execution and recovery. */
10
+ export const nativeUpdateId = (runId: RunId, toolCallId: string): string =>
11
+ `tool:${runId}:${toolCallId}`;
6
12
 
7
13
  /** Definition-owned native Tool. Runtime supplies its handler under the same identity. */
8
14
  export const updateTool = <S extends Schema.Top>(schema: S) =>
@@ -14,7 +20,9 @@ export const updateTool = <S extends Schema.Top>(schema: S) =>
14
20
  success: Schema.Struct({ emitted: Schema.Literal(true) }),
15
21
  failure: UpdateError,
16
22
  failureMode: "return",
17
- }).addDependency(Emitter);
23
+ })
24
+ .addDependency(Emitter)
25
+ .annotate(ToolExecutionClass, "idempotent");
18
26
 
19
27
  export type UpdateToolkit<
20
28
  T extends Toolkit.Any,
@@ -0,0 +1,33 @@
1
+ import type { Tool } from "effect/ai";
2
+ import * as Context from "effect/Context";
3
+
4
+ /**
5
+ * Declared external execution class of one Tool, used by the durable runtime
6
+ * to decide which Tool Calls need the prepared/settled uncertainty protocol:
7
+ *
8
+ * - `"readonly"`: the handler performs no external mutation. A crash between
9
+ * start and settlement is a free re-run; no prepared record is written.
10
+ * - `"idempotent"`: the handler declares an external idempotency contract
11
+ * (it owns key derivation). Prepared/settled records are written and
12
+ * recovery may re-execute without reconciliation proof.
13
+ * - `"uncertain"`: no external contract is declared. Prepared/settled records
14
+ * are written and recovery must reconcile or record an Unknown Outcome.
15
+ */
16
+ export type ToolExecutionClassValue = "readonly" | "idempotent" | "uncertain";
17
+
18
+ /**
19
+ * Effect AI Tool annotation key declaring a Tool's execution class, applied
20
+ * with `Tool.annotate(ToolExecutionClass, "...")`.
21
+ *
22
+ * Unannotated Tools default to `"uncertain"`: security and durability
23
+ * decisions are fail-closed, so the framework never infers a safer class
24
+ * from a Tool's shape.
25
+ */
26
+ export const ToolExecutionClass = Context.Reference<ToolExecutionClassValue>(
27
+ "@effect-agent/engine/ToolExecutionClass",
28
+ { defaultValue: () => "uncertain" },
29
+ );
30
+
31
+ /** Read a Tool's declared execution class, falling back to the fail-closed `"uncertain"` default. */
32
+ export const getToolExecutionClass = (tool: Tool.Any): ToolExecutionClassValue =>
33
+ Context.get(tool.annotations, ToolExecutionClass);