effect-agent 0.1.0-beta.9 → 0.1.0-beta.91
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.
- package/dist/Agent-CN0EWRsR.d.mts +226 -0
- package/dist/Agent-RklVROrm.mjs +83 -0
- package/dist/Agent-RklVROrm.mjs.map +1 -0
- package/dist/AgentError-CggcAQ7V.d.mts +101 -0
- package/dist/AgentPolicy-CetmQrf3.d.mts +96 -0
- package/dist/AgentRuntime-CHipL2jG.mjs +4598 -0
- package/dist/AgentRuntime-CHipL2jG.mjs.map +1 -0
- package/dist/AgentRuntime-uxR_a4VM.d.mts +346 -0
- package/dist/AgentUpdates-DMJ-_xow.d.mts +53 -0
- package/dist/ContextCompactor-Dxu5zhOL.d.mts +161 -0
- package/dist/ContextWindow-DRQ5Mbm2.d.mts +58 -0
- package/dist/DurableAgentRuntime-D7gDKGjH.mjs +6368 -0
- package/dist/DurableAgentRuntime-D7gDKGjH.mjs.map +1 -0
- package/dist/DurableFailpoint-Oinuuedm.d.mts +41 -0
- package/dist/DurableStep-Cry_iol4.d.mts +103 -0
- package/dist/Ephemeral.d.mts +22 -0
- package/dist/Ephemeral.mjs +22 -0
- package/dist/Ephemeral.mjs.map +1 -0
- package/dist/EventSource-OqS_P9ug.d.mts +51 -0
- package/dist/Identifiers-CN2s30fF.d.mts +40 -0
- package/dist/MemoryNamespace-BbRW5p71.d.mts +36 -0
- package/dist/MemoryReference-B8Q3UJoJ.d.mts +79 -0
- package/dist/Messaging-CkcIdt4I.d.mts +490 -0
- package/dist/MessagingHost-CRk0kXzT.d.mts +246 -0
- package/dist/MessagingHost-CWi_PP3g.mjs +137 -0
- package/dist/MessagingHost-CWi_PP3g.mjs.map +1 -0
- package/dist/OperationAuthorizer-TzcQtpX5.d.mts +61 -0
- package/dist/Output-D6SkedVx.d.mts +25 -0
- package/dist/PageCapture-Df8Xwskw.d.mts +583 -0
- package/dist/PageScreenshot-BpgZKAxl.d.mts +48 -0
- package/dist/PreparedInputAdmission-C4HbjHgl.d.mts +38 -0
- package/dist/Receipt-BAHyigAF.d.mts +33 -0
- package/dist/Records-BAGkekt8.d.mts +3570 -0
- package/dist/RunEvent-DIrzkjLr.d.mts +460 -0
- package/dist/RunEventSink-D5aVhISG.d.mts +108 -0
- package/dist/RunJournal-Cgg1kNvc.mjs +825 -0
- package/dist/RunJournal-Cgg1kNvc.mjs.map +1 -0
- package/dist/RunOptions-g1aigcKI.d.mts +915 -0
- package/dist/RunPolicyUsage-ClZxyR46.d.mts +21 -0
- package/dist/Sandbox-CEsDWBLq.d.mts +173 -0
- package/dist/Schedule-H3SEYX9g.d.mts +842 -0
- package/dist/Scheduling-C9aIP8zT.mjs +691 -0
- package/dist/Scheduling-C9aIP8zT.mjs.map +1 -0
- package/dist/Subagent-DyfzHNdv.d.mts +826 -0
- package/dist/Subagent-U5qXOFE8.mjs +1469 -0
- package/dist/Subagent-U5qXOFE8.mjs.map +1 -0
- package/dist/SubagentContract-DdT7Cqe6.d.mts +116 -0
- package/dist/SubagentHost-CJUBQlcc.d.mts +140 -0
- package/dist/Subscription-BEP8oQO5.d.mts +921 -0
- package/dist/SubscriptionInput-vAAOBrK7.d.mts +41 -0
- package/dist/Thread-DOBQ0QUY.d.mts +96 -0
- package/dist/ThreadHistory-tS1KwxHR.d.mts +60 -0
- package/dist/ToolBroker-DWs4tZra.d.mts +133 -0
- package/dist/ToolExposure-9uF_Yo0T.mjs +10 -0
- package/dist/ToolExposure-9uF_Yo0T.mjs.map +1 -0
- package/dist/ToolExposure-C93U1sPu.mjs +30 -0
- package/dist/ToolExposure-C93U1sPu.mjs.map +1 -0
- package/dist/ToolExposure-UCN12eCd.d.mts +39 -0
- package/dist/ToolExposure-r2eOWk4F.d.mts +46 -0
- package/dist/ToolExposure.d.mts +8 -0
- package/dist/ToolExposure.mjs +21 -0
- package/dist/ToolExposure.mjs.map +1 -0
- package/dist/ToolReconciler-DQVaJfpE.d.mts +76 -0
- package/dist/ToolResult-DmmgoChv.d.mts +61 -0
- package/dist/Usage-Dx0aknfk.d.mts +121 -0
- package/dist/WakeScheduler-EjUF-GhC.d.mts +56 -0
- package/dist/Worker-CaPYykpe.d.mts +228 -0
- package/dist/agent-registration-CWDMOAZA.mjs +172 -0
- package/dist/agent-registration-CWDMOAZA.mjs.map +1 -0
- package/dist/capabilities/Approval.d.mts +114 -0
- package/dist/capabilities/Approval.mjs +226 -0
- package/dist/capabilities/Approval.mjs.map +1 -0
- package/dist/capabilities/Budget.d.mts +112 -0
- package/dist/capabilities/Budget.mjs +346 -0
- package/dist/capabilities/Budget.mjs.map +1 -0
- package/dist/capabilities/CodeMode.d.mts +157 -0
- package/dist/capabilities/CodeMode.mjs +522 -0
- package/dist/capabilities/CodeMode.mjs.map +1 -0
- package/dist/capabilities/Commands.d.mts +55 -0
- package/dist/capabilities/Commands.mjs +57 -0
- package/dist/capabilities/Commands.mjs.map +1 -0
- package/dist/capabilities/ContextTools.d.mts +321 -0
- package/dist/capabilities/ContextTools.mjs +126 -0
- package/dist/capabilities/ContextTools.mjs.map +1 -0
- package/dist/capabilities/Mcp.d.mts +108 -0
- package/dist/capabilities/Mcp.mjs +260 -0
- package/dist/capabilities/Mcp.mjs.map +1 -0
- package/dist/capabilities/McpClient.d.mts +115 -0
- package/dist/capabilities/McpClient.mjs +506 -0
- package/dist/capabilities/McpClient.mjs.map +1 -0
- package/dist/capabilities/MemoryNotes.d.mts +424 -0
- package/dist/capabilities/MemoryNotes.mjs +128 -0
- package/dist/capabilities/MemoryNotes.mjs.map +1 -0
- package/dist/capabilities/Messaging.d.mts +3 -0
- package/dist/capabilities/Messaging.mjs +151 -0
- package/dist/capabilities/Messaging.mjs.map +1 -0
- package/dist/capabilities/ModelContext.d.mts +89 -0
- package/dist/capabilities/ModelContext.mjs +168 -0
- package/dist/capabilities/ModelContext.mjs.map +1 -0
- package/dist/capabilities/Redaction.d.mts +37 -0
- package/dist/capabilities/Redaction.mjs +104 -0
- package/dist/capabilities/Redaction.mjs.map +1 -0
- package/dist/capabilities/Remembering.d.mts +434 -0
- package/dist/capabilities/Remembering.mjs +290 -0
- package/dist/capabilities/Remembering.mjs.map +1 -0
- package/dist/capabilities/RunHooks.d.mts +82 -0
- package/dist/capabilities/RunHooks.mjs +144 -0
- package/dist/capabilities/RunHooks.mjs.map +1 -0
- package/dist/capabilities/SemanticMemory.d.mts +431 -0
- package/dist/capabilities/SemanticMemory.mjs +315 -0
- package/dist/capabilities/SemanticMemory.mjs.map +1 -0
- package/dist/capabilities/Subagent.d.mts +4 -0
- package/dist/capabilities/Subagent.mjs +5 -0
- package/dist/capabilities/SubagentReservations.d.mts +186 -0
- package/dist/capabilities/SubagentReservations.mjs +479 -0
- package/dist/capabilities/SubagentReservations.mjs.map +1 -0
- package/dist/capabilities/ToolDiscovery.d.mts +109 -0
- package/dist/capabilities/ToolDiscovery.mjs +211 -0
- package/dist/capabilities/ToolDiscovery.mjs.map +1 -0
- package/dist/capabilities/WebCapture.d.mts +163 -0
- package/dist/capabilities/WebCapture.mjs +335 -0
- package/dist/capabilities/WebCapture.mjs.map +1 -0
- package/dist/capabilities/WebSearch.d.mts +71 -0
- package/dist/capabilities/WebSearch.mjs +112 -0
- package/dist/capabilities/WebSearch.mjs.map +1 -0
- package/dist/compaction-C2OTceKw.mjs +505 -0
- package/dist/compaction-C2OTceKw.mjs.map +1 -0
- package/dist/core/Agent.d.mts +2 -0
- package/dist/core/Agent.mjs +2 -0
- package/dist/core/AgentError.d.mts +2 -0
- package/dist/core/AgentError.mjs +117 -0
- package/dist/core/AgentError.mjs.map +1 -0
- package/dist/core/AgentPolicy.d.mts +2 -0
- package/dist/core/AgentPolicy.mjs +94 -0
- package/dist/core/AgentPolicy.mjs.map +1 -0
- package/dist/core/AgentUpdates.d.mts +2 -0
- package/dist/core/AgentUpdates.mjs +63 -0
- package/dist/core/AgentUpdates.mjs.map +1 -0
- package/dist/core/IdGenerator.d.mts +26 -0
- package/dist/core/IdGenerator.mjs +27 -0
- package/dist/core/IdGenerator.mjs.map +1 -0
- package/dist/core/Identifiers.d.mts +2 -0
- package/dist/core/Identifiers.mjs +43 -0
- package/dist/core/Identifiers.mjs.map +1 -0
- package/dist/core/Memory.d.mts +57 -0
- package/dist/core/Memory.mjs +203 -0
- package/dist/core/Memory.mjs.map +1 -0
- package/dist/core/MemoryNamespace.d.mts +2 -0
- package/dist/core/MemoryNamespace.mjs +116 -0
- package/dist/core/MemoryNamespace.mjs.map +1 -0
- package/dist/core/MemoryReference.d.mts +2 -0
- package/dist/core/MemoryReference.mjs +109 -0
- package/dist/core/MemoryReference.mjs.map +1 -0
- package/dist/core/MemoryRevalidation.d.mts +65 -0
- package/dist/core/MemoryRevalidation.mjs +126 -0
- package/dist/core/MemoryRevalidation.mjs.map +1 -0
- package/dist/core/MemoryStore.d.mts +186 -0
- package/dist/core/MemoryStore.mjs +243 -0
- package/dist/core/MemoryStore.mjs.map +1 -0
- package/dist/core/Receipt.d.mts +2 -0
- package/dist/core/Receipt.mjs +36 -0
- package/dist/core/Receipt.mjs.map +1 -0
- package/dist/core/RememberingStore.d.mts +1562 -0
- package/dist/core/RememberingStore.mjs +190 -0
- package/dist/core/RememberingStore.mjs.map +1 -0
- package/dist/core/RunEvent.d.mts +2 -0
- package/dist/core/RunEvent.mjs +337 -0
- package/dist/core/RunEvent.mjs.map +1 -0
- package/dist/core/RunPolicyUsage.d.mts +2 -0
- package/dist/core/RunPolicyUsage.mjs +21 -0
- package/dist/core/RunPolicyUsage.mjs.map +1 -0
- package/dist/core/SemanticMemoryIndex.d.mts +826 -0
- package/dist/core/SemanticMemoryIndex.mjs +185 -0
- package/dist/core/SemanticMemoryIndex.mjs.map +1 -0
- package/dist/core/SemanticMemoryRevalidation.d.mts +45 -0
- package/dist/core/SemanticMemoryRevalidation.mjs +191 -0
- package/dist/core/SemanticMemoryRevalidation.mjs.map +1 -0
- package/dist/core/SubagentContract.d.mts +2 -0
- package/dist/core/SubagentContract.mjs +148 -0
- package/dist/core/SubagentContract.mjs.map +1 -0
- package/dist/core/Thread.d.mts +2 -0
- package/dist/core/Thread.mjs +250 -0
- package/dist/core/Thread.mjs.map +1 -0
- package/dist/core/ToolResult.d.mts +2 -0
- package/dist/core/ToolResult.mjs +140 -0
- package/dist/core/ToolResult.mjs.map +1 -0
- package/dist/core/Usage.d.mts +2 -0
- package/dist/core/Usage.mjs +319 -0
- package/dist/core/Usage.mjs.map +1 -0
- package/dist/core/Worker.d.mts +3 -0
- package/dist/core/Worker.mjs +147 -0
- package/dist/core/Worker.mjs.map +1 -0
- package/dist/durable/ActivityStore.d.mts +116 -0
- package/dist/durable/ActivityStore.mjs +131 -0
- package/dist/durable/ActivityStore.mjs.map +1 -0
- package/dist/durable/Admin.d.mts +2 -0
- package/dist/durable/Admin.mjs +328 -0
- package/dist/durable/Admin.mjs.map +1 -0
- package/dist/durable/AgentRegistration.d.mts +2 -0
- package/dist/durable/AgentRegistration.mjs +14 -0
- package/dist/durable/AgentRegistration.mjs.map +1 -0
- package/dist/durable/Certification.d.mts +111 -0
- package/dist/durable/Certification.mjs +159 -0
- package/dist/durable/Certification.mjs.map +1 -0
- package/dist/durable/CommittedActivity.d.mts +62 -0
- package/dist/durable/CommittedActivity.mjs +159 -0
- package/dist/durable/CommittedActivity.mjs.map +1 -0
- package/dist/durable/Digest.d.mts +2 -0
- package/dist/durable/Digest.mjs +50 -0
- package/dist/durable/Digest.mjs.map +1 -0
- package/dist/durable/DurableAgentRuntime.d.mts +3 -0
- package/dist/durable/DurableAgentRuntime.mjs +3 -0
- package/dist/durable/DurableFailpoint.d.mts +2 -0
- package/dist/durable/DurableFailpoint.mjs +94 -0
- package/dist/durable/DurableFailpoint.mjs.map +1 -0
- package/dist/durable/DurableFailpointTestControl.d.mts +15 -0
- package/dist/durable/DurableFailpointTestControl.mjs +19 -0
- package/dist/durable/DurableFailpointTestControl.mjs.map +1 -0
- package/dist/durable/EventSource.d.mts +2 -0
- package/dist/durable/EventSource.mjs +65 -0
- package/dist/durable/EventSource.mjs.map +1 -0
- package/dist/durable/GitHubWorkflowSource.d.mts +144 -0
- package/dist/durable/GitHubWorkflowSource.mjs +209 -0
- package/dist/durable/GitHubWorkflowSource.mjs.map +1 -0
- package/dist/durable/MessageDelivery.d.mts +492 -0
- package/dist/durable/MessageDelivery.mjs +495 -0
- package/dist/durable/MessageDelivery.mjs.map +1 -0
- package/dist/durable/MessageDeliveryStoreConformance.d.mts +358 -0
- package/dist/durable/MessageDeliveryStoreConformance.mjs +243 -0
- package/dist/durable/MessageDeliveryStoreConformance.mjs.map +1 -0
- package/dist/durable/OperationAuthorizer.d.mts +2 -0
- package/dist/durable/OperationAuthorizer.mjs +70 -0
- package/dist/durable/OperationAuthorizer.mjs.map +1 -0
- package/dist/durable/PersistentHistory.d.mts +16 -0
- package/dist/durable/PersistentHistory.mjs +125 -0
- package/dist/durable/PersistentHistory.mjs.map +1 -0
- package/dist/durable/PreparedInputAdmission.d.mts +2 -0
- package/dist/durable/PreparedInputAdmission.mjs +34 -0
- package/dist/durable/PreparedInputAdmission.mjs.map +1 -0
- package/dist/durable/Records.d.mts +2 -0
- package/dist/durable/Records.mjs +795 -0
- package/dist/durable/Records.mjs.map +1 -0
- package/dist/durable/Recovery.d.mts +2 -0
- package/dist/durable/Recovery.mjs +739 -0
- package/dist/durable/Recovery.mjs.map +1 -0
- package/dist/durable/RunJournal.d.mts +2 -0
- package/dist/durable/RunJournal.mjs +2 -0
- package/dist/durable/Schedule.d.mts +2 -0
- package/dist/durable/Schedule.mjs +382 -0
- package/dist/durable/Schedule.mjs.map +1 -0
- package/dist/durable/ScheduleStoreConformance.d.mts +18 -0
- package/dist/durable/ScheduleStoreConformance.mjs +420 -0
- package/dist/durable/ScheduleStoreConformance.mjs.map +1 -0
- package/dist/durable/ScheduleTransition.d.mts +24 -0
- package/dist/durable/ScheduleTransition.mjs +180 -0
- package/dist/durable/ScheduleTransition.mjs.map +1 -0
- package/dist/durable/Scheduling.d.mts +54 -0
- package/dist/durable/Scheduling.mjs +2 -0
- package/dist/durable/SqlMemoryStore.d.mts +30 -0
- package/dist/durable/SqlMemoryStore.mjs +436 -0
- package/dist/durable/SqlMemoryStore.mjs.map +1 -0
- package/dist/durable/SqlMessageDeliveryStore.d.mts +40 -0
- package/dist/durable/SqlMessageDeliveryStore.mjs +167 -0
- package/dist/durable/SqlMessageDeliveryStore.mjs.map +1 -0
- package/dist/durable/SqlStorageV2Upgrade.d.mts +22 -0
- package/dist/durable/SqlStorageV2Upgrade.mjs +459 -0
- package/dist/durable/SqlStorageV2Upgrade.mjs.map +1 -0
- package/dist/durable/SqlSubscriptionStore.d.mts +63 -0
- package/dist/durable/SqlSubscriptionStore.mjs +751 -0
- package/dist/durable/SqlSubscriptionStore.mjs.map +1 -0
- package/dist/durable/SubmissionLedger.d.mts +3 -0
- package/dist/durable/SubmissionLedger.mjs +914 -0
- package/dist/durable/SubmissionLedger.mjs.map +1 -0
- package/dist/durable/SubmissionLedgerConformance.d.mts +30 -0
- package/dist/durable/SubmissionLedgerConformance.mjs +1986 -0
- package/dist/durable/SubmissionLedgerConformance.mjs.map +1 -0
- package/dist/durable/SubmissionStatus.d.mts +2 -0
- package/dist/durable/SubmissionStatus.mjs +18 -0
- package/dist/durable/SubmissionStatus.mjs.map +1 -0
- package/dist/durable/Subscription.d.mts +2 -0
- package/dist/durable/Subscription.mjs +360 -0
- package/dist/durable/Subscription.mjs.map +1 -0
- package/dist/durable/SubscriptionInput.d.mts +2 -0
- package/dist/durable/SubscriptionInput.mjs +52 -0
- package/dist/durable/SubscriptionInput.mjs.map +1 -0
- package/dist/durable/SubscriptionStoreConformance.d.mts +17 -0
- package/dist/durable/SubscriptionStoreConformance.mjs +625 -0
- package/dist/durable/SubscriptionStoreConformance.mjs.map +1 -0
- package/dist/durable/SubscriptionTools.d.mts +273 -0
- package/dist/durable/SubscriptionTools.mjs +190 -0
- package/dist/durable/SubscriptionTools.mjs.map +1 -0
- package/dist/durable/SubscriptionTransition.d.mts +21 -0
- package/dist/durable/SubscriptionTransition.mjs +148 -0
- package/dist/durable/SubscriptionTransition.mjs.map +1 -0
- package/dist/durable/Subscriptions.d.mts +73 -0
- package/dist/durable/Subscriptions.mjs +627 -0
- package/dist/durable/Subscriptions.mjs.map +1 -0
- package/dist/durable/ThreadContextHistory.d.mts +32 -0
- package/dist/durable/ThreadContextHistory.mjs +152 -0
- package/dist/durable/ThreadContextHistory.mjs.map +1 -0
- package/dist/durable/ThreadContextHistoryProjection.d.mts +60 -0
- package/dist/durable/ThreadContextHistoryProjection.mjs +149 -0
- package/dist/durable/ThreadContextHistoryProjection.mjs.map +1 -0
- package/dist/durable/ThreadInvariants.d.mts +74 -0
- package/dist/durable/ThreadInvariants.mjs +200 -0
- package/dist/durable/ThreadInvariants.mjs.map +1 -0
- package/dist/durable/ThreadProjection.d.mts +78 -0
- package/dist/durable/ThreadProjection.mjs +158 -0
- package/dist/durable/ThreadProjection.mjs.map +1 -0
- package/dist/durable/ThreadProjectionMaintenance.d.mts +49 -0
- package/dist/durable/ThreadProjectionMaintenance.mjs +33 -0
- package/dist/durable/ThreadProjectionMaintenance.mjs.map +1 -0
- package/dist/durable/ThreadStore.d.mts +2 -0
- package/dist/durable/ThreadStore.mjs +147 -0
- package/dist/durable/ThreadStore.mjs.map +1 -0
- package/dist/durable/ThreadStoreConformance.d.mts +29 -0
- package/dist/durable/ThreadStoreConformance.mjs +248 -0
- package/dist/durable/ThreadStoreConformance.mjs.map +1 -0
- package/dist/durable/ToolReconciler.d.mts +2 -0
- package/dist/durable/ToolReconciler.mjs +81 -0
- package/dist/durable/ToolReconciler.mjs.map +1 -0
- package/dist/durable/WakeScheduler.d.mts +2 -0
- package/dist/durable/WakeScheduler.mjs +85 -0
- package/dist/durable/WakeScheduler.mjs.map +1 -0
- package/dist/durable/WorkerHost.d.mts +129 -0
- package/dist/durable/WorkerHost.mjs +77 -0
- package/dist/durable/WorkerHost.mjs.map +1 -0
- package/dist/engine/AgentRuntime.d.mts +2 -0
- package/dist/engine/AgentRuntime.mjs +2 -0
- package/dist/engine/Compaction.d.mts +7 -0
- package/dist/engine/Compaction.mjs +16 -0
- package/dist/engine/Compaction.mjs.map +1 -0
- package/dist/engine/ContextCompactor.d.mts +2 -0
- package/dist/engine/ContextCompactor.mjs +119 -0
- package/dist/engine/ContextCompactor.mjs.map +1 -0
- package/dist/engine/ContextHistory.d.mts +65 -0
- package/dist/engine/ContextHistory.mjs +76 -0
- package/dist/engine/ContextHistory.mjs.map +1 -0
- package/dist/engine/ContextWindow.d.mts +2 -0
- package/dist/engine/ContextWindow.mjs +59 -0
- package/dist/engine/ContextWindow.mjs.map +1 -0
- package/dist/engine/DurableStep.d.mts +2 -0
- package/dist/engine/DurableStep.mjs +62 -0
- package/dist/engine/DurableStep.mjs.map +1 -0
- package/dist/engine/MessagingHost.d.mts +2 -0
- package/dist/engine/MessagingHost.mjs +2 -0
- package/dist/engine/Output.d.mts +2 -0
- package/dist/engine/Output.mjs +8 -0
- package/dist/engine/Output.mjs.map +1 -0
- package/dist/engine/RunEventSink.d.mts +2 -0
- package/dist/engine/RunEventSink.mjs +22 -0
- package/dist/engine/RunEventSink.mjs.map +1 -0
- package/dist/engine/RunOptions.d.mts +2 -0
- package/dist/engine/RunOptions.mjs +122 -0
- package/dist/engine/RunOptions.mjs.map +1 -0
- package/dist/engine/SubagentHost.d.mts +2 -0
- package/dist/engine/SubagentHost.mjs +72 -0
- package/dist/engine/SubagentHost.mjs.map +1 -0
- package/dist/engine/ThreadHistory.d.mts +2 -0
- package/dist/engine/ThreadHistory.mjs +67 -0
- package/dist/engine/ThreadHistory.mjs.map +1 -0
- package/dist/engine/ToolBroker.d.mts +2 -0
- package/dist/engine/ToolBroker.mjs +42 -0
- package/dist/engine/ToolBroker.mjs.map +1 -0
- package/dist/foreign-diagnostic-DBQ1XHKh.mjs +37 -0
- package/dist/foreign-diagnostic-DBQ1XHKh.mjs.map +1 -0
- package/dist/index.d.mts +89 -6
- package/dist/index.mjs +98 -6
- package/dist/output-contract-BC7tjlGw.mjs +84 -0
- package/dist/output-contract-BC7tjlGw.mjs.map +1 -0
- package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
- package/dist/sandbox/CodeExecutor.d.mts +194 -0
- package/dist/sandbox/CodeExecutor.mjs +278 -0
- package/dist/sandbox/CodeExecutor.mjs.map +1 -0
- package/dist/sandbox/InteractiveBrowser.d.mts +142 -0
- package/dist/sandbox/InteractiveBrowser.mjs +165 -0
- package/dist/sandbox/InteractiveBrowser.mjs.map +1 -0
- package/dist/sandbox/PageCapture.d.mts +2 -0
- package/dist/sandbox/PageCapture.mjs +450 -0
- package/dist/sandbox/PageCapture.mjs.map +1 -0
- package/dist/sandbox/PageCrawl.d.mts +88 -0
- package/dist/sandbox/PageCrawl.mjs +124 -0
- package/dist/sandbox/PageCrawl.mjs.map +1 -0
- package/dist/sandbox/PageScreenshot.d.mts +2 -0
- package/dist/sandbox/PageScreenshot.mjs +53 -0
- package/dist/sandbox/PageScreenshot.mjs.map +1 -0
- package/dist/sandbox/ProtectedBrowser.d.mts +273 -0
- package/dist/sandbox/ProtectedBrowser.mjs +287 -0
- package/dist/sandbox/ProtectedBrowser.mjs.map +1 -0
- package/dist/sandbox/Sandbox.d.mts +2 -0
- package/dist/sandbox/Sandbox.mjs +208 -0
- package/dist/sandbox/Sandbox.mjs.map +1 -0
- package/dist/utf8-BYfhEkcj.mjs +11 -0
- package/dist/utf8-BYfhEkcj.mjs.map +1 -0
- package/dist/utf8-DchGZRBd.mjs +23 -0
- package/dist/utf8-DchGZRBd.mjs.map +1 -0
- package/package.json +1 -40
- package/src/Ephemeral.ts +17 -0
- package/src/ToolExposure.ts +2 -0
- package/src/capabilities/Approval.ts +352 -0
- package/src/capabilities/Budget.ts +536 -0
- package/src/capabilities/CodeMode.ts +1090 -0
- package/src/capabilities/Commands.ts +86 -0
- package/src/capabilities/ContextTools.ts +184 -0
- package/src/capabilities/Mcp.ts +427 -0
- package/src/capabilities/McpClient.ts +967 -0
- package/src/capabilities/MemoryNotes.ts +174 -0
- package/src/capabilities/Messaging.ts +261 -0
- package/src/capabilities/ModelContext.ts +354 -0
- package/src/capabilities/Redaction.ts +157 -0
- package/src/capabilities/Remembering.ts +550 -0
- package/src/capabilities/RunHooks.ts +280 -0
- package/src/capabilities/SemanticMemory.ts +447 -0
- package/src/capabilities/Subagent.ts +2277 -0
- package/src/capabilities/SubagentReservations.ts +850 -0
- package/src/capabilities/ToolDiscovery.ts +339 -0
- package/src/capabilities/WebCapture.ts +722 -0
- package/src/capabilities/WebSearch.ts +184 -0
- package/src/capabilities/internal/subagent-background.ts +1106 -0
- package/src/capabilities/internal/subagent-contract.ts +142 -0
- package/src/capabilities/internal/subagent-policy.ts +235 -0
- package/src/capabilities/internal/subagent-reporting.ts +261 -0
- package/src/capabilities/internal/utf8.ts +10 -0
- package/src/core/Agent.ts +575 -0
- package/src/core/AgentError.ts +152 -0
- package/src/core/AgentPolicy.ts +153 -0
- package/src/core/AgentUpdates.ts +100 -0
- package/src/core/IdGenerator.ts +39 -0
- package/src/core/Identifiers.ts +48 -0
- package/src/core/Memory.ts +290 -0
- package/src/core/MemoryNamespace.ts +196 -0
- package/src/core/MemoryReference.ts +121 -0
- package/src/core/MemoryRevalidation.ts +185 -0
- package/src/core/MemoryStore.ts +368 -0
- package/src/core/Messaging.ts +90 -0
- package/src/core/Receipt.ts +42 -0
- package/src/core/RememberingStore.ts +300 -0
- package/src/core/RunEvent.ts +366 -0
- package/src/core/RunPolicyUsage.ts +17 -0
- package/src/core/SemanticMemoryIndex.ts +250 -0
- package/src/core/SemanticMemoryRevalidation.ts +254 -0
- package/src/core/SubagentContract.ts +196 -0
- package/src/core/Thread.ts +371 -0
- package/src/core/ToolExposure.ts +74 -0
- package/src/core/ToolResult.ts +170 -0
- package/src/core/Usage.ts +529 -0
- package/src/core/Worker.ts +173 -0
- package/src/core/internal/agent-updates.ts +32 -0
- package/src/core/internal/utf8.ts +23 -0
- package/src/durable/ActivityStore.ts +160 -0
- package/src/durable/Admin.ts +496 -0
- package/src/durable/AgentRegistration.ts +13 -0
- package/src/durable/Certification.ts +210 -0
- package/src/durable/CommittedActivity.ts +296 -0
- package/src/durable/Digest.ts +93 -0
- package/src/durable/DurableAgentRuntime.ts +10340 -0
- package/src/durable/DurableFailpoint.ts +103 -0
- package/src/durable/DurableFailpointTestControl.ts +39 -0
- package/src/durable/EventSource.ts +172 -0
- package/src/durable/GitHubWorkflowSource.ts +453 -0
- package/src/durable/MessageDelivery.ts +708 -0
- package/src/durable/MessageDeliveryStoreConformance.ts +363 -0
- package/src/durable/OperationAuthorizer.ts +85 -0
- package/src/durable/PersistentHistory.ts +260 -0
- package/src/durable/PreparedInputAdmission.ts +44 -0
- package/src/durable/Records.ts +1010 -0
- package/src/durable/Recovery.ts +1018 -0
- package/src/durable/RunJournal.ts +1479 -0
- package/src/durable/Schedule.ts +504 -0
- package/src/durable/ScheduleStoreConformance.ts +638 -0
- package/src/durable/ScheduleTransition.ts +265 -0
- package/src/durable/Scheduling.ts +1077 -0
- package/src/durable/SqlMemoryStore.ts +778 -0
- package/src/durable/SqlMessageDeliveryStore.ts +302 -0
- package/src/durable/SqlStorageV2Upgrade.ts +500 -0
- package/src/durable/SqlSubscriptionStore.ts +1440 -0
- package/src/durable/SubmissionLedger.ts +1201 -0
- package/src/durable/SubmissionLedgerConformance.ts +4579 -0
- package/src/durable/SubmissionStatus.ts +14 -0
- package/src/durable/Subscription.ts +544 -0
- package/src/durable/SubscriptionInput.ts +144 -0
- package/src/durable/SubscriptionStoreConformance.ts +945 -0
- package/src/durable/SubscriptionTools.ts +327 -0
- package/src/durable/SubscriptionTransition.ts +302 -0
- package/src/durable/Subscriptions.ts +1210 -0
- package/src/durable/ThreadContextHistory.ts +227 -0
- package/src/durable/ThreadContextHistoryProjection.ts +216 -0
- package/src/durable/ThreadInvariants.ts +442 -0
- package/src/durable/ThreadProjection.ts +269 -0
- package/src/durable/ThreadProjectionMaintenance.ts +67 -0
- package/src/durable/ThreadStore.ts +242 -0
- package/src/durable/ThreadStoreConformance.ts +710 -0
- package/src/durable/ToolReconciler.ts +105 -0
- package/src/durable/WakeScheduler.ts +134 -0
- package/src/durable/WorkerHost.ts +171 -0
- package/src/durable/internal/agent-registration.ts +525 -0
- package/src/durable/internal/agent-updates.ts +302 -0
- package/src/durable/internal/foreign-diagnostic.ts +47 -0
- package/src/durable/internal/journal-checkpoint.ts +104 -0
- package/src/durable/internal/journal-metadata.ts +107 -0
- package/src/durable/internal/messaging-host.ts +608 -0
- package/src/durable/internal/schedule-time.ts +303 -0
- package/src/durable/internal/storage-v2-layout.ts +163 -0
- package/src/durable/internal/storage-v2.ts +73 -0
- package/src/durable/internal/worker-host.ts +2467 -0
- package/src/durable/internal/worker-runtime.ts +9 -0
- package/src/engine/AgentRuntime.ts +37 -0
- package/src/engine/Compaction.ts +11 -0
- package/src/engine/ContextCompactor.ts +277 -0
- package/src/engine/ContextHistory.ts +73 -0
- package/src/engine/ContextWindow.ts +72 -0
- package/src/engine/DurableStep.ts +132 -0
- package/src/engine/MessagingHost.ts +110 -0
- package/src/engine/Output.ts +2 -0
- package/src/engine/RunEventSink.ts +132 -0
- package/src/engine/RunOptions.ts +1077 -0
- package/src/engine/SubagentHost.ts +181 -0
- package/src/engine/ThreadHistory.ts +120 -0
- package/src/engine/ToolBroker.ts +157 -0
- package/src/engine/ToolExposure.ts +48 -0
- package/src/engine/internal/agent-runtime.ts +10162 -0
- package/src/engine/internal/bounded-value.ts +315 -0
- package/src/engine/internal/compaction.ts +678 -0
- package/src/engine/internal/error-diagnostic.ts +39 -0
- package/src/engine/internal/output-contract.ts +173 -0
- package/src/engine/internal/primitive-delta.ts +80 -0
- package/src/engine/internal/provider-result-staging.ts +211 -0
- package/src/engine/internal/tool-derivative.ts +106 -0
- package/src/engine/internal/tool-exposure.ts +224 -0
- package/src/engine/internal/tool-telemetry.ts +484 -0
- package/src/index.ts +97 -22
- package/src/sandbox/CodeExecutor.ts +352 -0
- package/src/sandbox/InteractiveBrowser.ts +257 -0
- package/src/sandbox/PageCapture.ts +692 -0
- package/src/sandbox/PageCrawl.ts +148 -0
- package/src/sandbox/PageScreenshot.ts +81 -0
- package/src/sandbox/ProtectedBrowser.ts +436 -0
- package/src/sandbox/Sandbox.ts +241 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.mjs";
|
|
2
|
+
import { SANDBOX_DIAGNOSTIC_MAX_LENGTH, SandboxImplementation, SandboxNetworkPolicy } from "./Sandbox.mjs";
|
|
3
|
+
import { Context, Duration, Schema } from "effect";
|
|
4
|
+
//#region src/sandbox/CodeExecutor.ts
|
|
5
|
+
var CodeExecutor_exports = /* @__PURE__ */ __exportAll({
|
|
6
|
+
CodeExecutionError: () => CodeExecutionError,
|
|
7
|
+
CodeExecutionHost: () => CodeExecutionHost,
|
|
8
|
+
CodeExecutionLimits: () => CodeExecutionLimits,
|
|
9
|
+
CodeExecutionNamespace: () => CodeExecutionNamespace,
|
|
10
|
+
CodeExecutionProtocolError: () => CodeExecutionProtocolError,
|
|
11
|
+
CodeExecutionRequest: () => CodeExecutionRequest,
|
|
12
|
+
CodeExecutionResourceUse: () => CodeExecutionResourceUse,
|
|
13
|
+
CodeExecutionResult: () => CodeExecutionResult,
|
|
14
|
+
CodeExecutionTimeoutError: () => CodeExecutionTimeoutError,
|
|
15
|
+
CodeExecutor: () => CodeExecutor,
|
|
16
|
+
CodeExecutorStartError: () => CodeExecutorStartError,
|
|
17
|
+
CodeExecutorTerminatedError: () => CodeExecutorTerminatedError,
|
|
18
|
+
CodeExecutorUnsupportedError: () => CodeExecutorUnsupportedError,
|
|
19
|
+
CodeHostCall: () => CodeHostCall,
|
|
20
|
+
CodeHostCallFailure: () => CodeHostCallFailure,
|
|
21
|
+
CodeHostCallLimitError: () => CodeHostCallLimitError,
|
|
22
|
+
CodeHostCallResult: () => CodeHostCallResult,
|
|
23
|
+
CodeHostCallSuccess: () => CodeHostCallSuccess,
|
|
24
|
+
CodeOutputLimitError: () => CodeOutputLimitError,
|
|
25
|
+
CodeProgramFailedError: () => CodeProgramFailedError,
|
|
26
|
+
CodeSourceError: () => CodeSourceError,
|
|
27
|
+
JsIdentifier: () => JsIdentifier
|
|
28
|
+
});
|
|
29
|
+
const BoundedLogLine = Schema.String.check(Schema.isMaxLength(16384));
|
|
30
|
+
const BoundedMessage = Schema.String.check(Schema.isMaxLength(SANDBOX_DIAGNOSTIC_MAX_LENGTH));
|
|
31
|
+
const BoundedLogs = Schema.Array(BoundedLogLine).check(Schema.isMaxLength(4096));
|
|
32
|
+
const BoundedSourceText = Schema.String.check(Schema.isMaxLength(4194304));
|
|
33
|
+
const PositiveInt = Schema.Int.check(Schema.isGreaterThan(0));
|
|
34
|
+
const FinitePositiveDuration = Schema.Duration.pipe(Schema.refine((duration) => Duration.isFinite(duration) && Duration.isPositive(duration), { expected: "a finite positive duration" }));
|
|
35
|
+
const FiniteNonNegativeDuration = Schema.Duration.pipe(Schema.refine((duration) => Duration.isFinite(duration) && !Duration.isNegative(duration), { expected: "a finite non-negative duration" }));
|
|
36
|
+
/**
|
|
37
|
+
* ECMAScript reserved words are rejected up front: a namespace or method that
|
|
38
|
+
* needs one would make every harness that binds identifiers fail at runtime
|
|
39
|
+
* instead of failing closed at the Schema boundary.
|
|
40
|
+
*/
|
|
41
|
+
const reservedIdentifiers = /* @__PURE__ */ new Set([
|
|
42
|
+
"arguments",
|
|
43
|
+
"await",
|
|
44
|
+
"break",
|
|
45
|
+
"case",
|
|
46
|
+
"catch",
|
|
47
|
+
"class",
|
|
48
|
+
"const",
|
|
49
|
+
"continue",
|
|
50
|
+
"debugger",
|
|
51
|
+
"default",
|
|
52
|
+
"delete",
|
|
53
|
+
"do",
|
|
54
|
+
"else",
|
|
55
|
+
"enum",
|
|
56
|
+
"eval",
|
|
57
|
+
"export",
|
|
58
|
+
"extends",
|
|
59
|
+
"false",
|
|
60
|
+
"finally",
|
|
61
|
+
"for",
|
|
62
|
+
"function",
|
|
63
|
+
"if",
|
|
64
|
+
"implements",
|
|
65
|
+
"import",
|
|
66
|
+
"in",
|
|
67
|
+
"instanceof",
|
|
68
|
+
"interface",
|
|
69
|
+
"let",
|
|
70
|
+
"new",
|
|
71
|
+
"null",
|
|
72
|
+
"package",
|
|
73
|
+
"private",
|
|
74
|
+
"protected",
|
|
75
|
+
"public",
|
|
76
|
+
"return",
|
|
77
|
+
"static",
|
|
78
|
+
"super",
|
|
79
|
+
"switch",
|
|
80
|
+
"this",
|
|
81
|
+
"throw",
|
|
82
|
+
"true",
|
|
83
|
+
"try",
|
|
84
|
+
"typeof",
|
|
85
|
+
"var",
|
|
86
|
+
"void",
|
|
87
|
+
"while",
|
|
88
|
+
"with",
|
|
89
|
+
"yield"
|
|
90
|
+
]);
|
|
91
|
+
/** A JavaScript identifier safe to bind as a sandbox global or method name. */
|
|
92
|
+
const JsIdentifier = Schema.NonEmptyString.check(Schema.isMaxLength(128), Schema.isPattern(/^[A-Za-z_$][A-Za-z0-9_$]*$/)).pipe(Schema.refine((value) => !reservedIdentifiers.has(value), { expected: "a JavaScript identifier that is not a reserved word" }));
|
|
93
|
+
/** One callable namespace exposed to the generated program as a typed global. */
|
|
94
|
+
var CodeExecutionNamespace = class extends Schema.Class("CodeExecutionNamespace")({
|
|
95
|
+
name: JsIdentifier,
|
|
96
|
+
methods: Schema.Array(JsIdentifier).check(Schema.isMaxLength(64), Schema.isMinLength(1))
|
|
97
|
+
}) {};
|
|
98
|
+
/**
|
|
99
|
+
* Limits an executor must either enforce or reject (CAP-015). Byte bounds are
|
|
100
|
+
* measured on UTF-8 encoded JSON at the sandbox boundary.
|
|
101
|
+
*/
|
|
102
|
+
var CodeExecutionLimits = class extends Schema.Class("CodeExecutionLimits")({
|
|
103
|
+
maxSourceBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4194304)),
|
|
104
|
+
maxWallTime: FinitePositiveDuration,
|
|
105
|
+
cpuMillis: Schema.optionalKey(PositiveInt.check(Schema.isLessThanOrEqualTo(3e5))),
|
|
106
|
+
maxLogBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(1048576)),
|
|
107
|
+
maxResultBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4194304)),
|
|
108
|
+
maxHostCalls: Schema.Natural.check(Schema.isLessThanOrEqualTo(1e4)),
|
|
109
|
+
/** Maximum active host calls per pass; defaults to four. Excess calls wait in Scope. */
|
|
110
|
+
maxHostCallConcurrency: Schema.optionalKey(PositiveInt.check(Schema.isLessThanOrEqualTo(64))),
|
|
111
|
+
maxHostCallArgumentBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(1048576)),
|
|
112
|
+
maxHostCallResultBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4194304))
|
|
113
|
+
}) {};
|
|
114
|
+
/**
|
|
115
|
+
* One isolated execution pass over bounded generated JavaScript. The source
|
|
116
|
+
* must be a single expression evaluating to one async function; the executor
|
|
117
|
+
* harness invokes it exactly once with no arguments (ADR-0017 decision 5).
|
|
118
|
+
*/
|
|
119
|
+
var CodeExecutionRequest = class extends Schema.Class("CodeExecutionRequest")({
|
|
120
|
+
language: Schema.Literals(["javascript"]),
|
|
121
|
+
source: BoundedSourceText,
|
|
122
|
+
namespaces: Schema.Array(CodeExecutionNamespace).check(Schema.isMaxLength(32)),
|
|
123
|
+
network: SandboxNetworkPolicy,
|
|
124
|
+
limits: CodeExecutionLimits
|
|
125
|
+
}) {};
|
|
126
|
+
/** One host invocation from generated code. Data only: the broker owns identity. */
|
|
127
|
+
var CodeHostCall = class extends Schema.Class("CodeHostCall")({
|
|
128
|
+
namespace: JsIdentifier,
|
|
129
|
+
method: JsIdentifier,
|
|
130
|
+
argument: Schema.Json
|
|
131
|
+
}) {};
|
|
132
|
+
/** A host call settled with the encoded Tool success value. */
|
|
133
|
+
var CodeHostCallSuccess = class extends Schema.TaggedClass()("CodeHostCallSuccess", { value: Schema.Json }) {};
|
|
134
|
+
/**
|
|
135
|
+
* A host call settled with a Schema-encoded typed failure envelope. Inside the
|
|
136
|
+
* generated program the call's Promise rejects with the envelope value, so a
|
|
137
|
+
* program can catch and branch on expected failures.
|
|
138
|
+
*/
|
|
139
|
+
var CodeHostCallFailure = class extends Schema.TaggedClass()("CodeHostCallFailure", { error: Schema.Json }) {};
|
|
140
|
+
/** Outcome of one host call as data; transport failures stay executor errors. */
|
|
141
|
+
const CodeHostCallResult = Schema.Union([CodeHostCallSuccess, CodeHostCallFailure]);
|
|
142
|
+
/**
|
|
143
|
+
* The per-pass host capability: the only authority generated code has over the
|
|
144
|
+
* host. It is provided at the pass edge by the capability layer, its live
|
|
145
|
+
* bindings are scoped resources, and it is never persisted (ADR-0017
|
|
146
|
+
* decision 2). Broker-level failures return as `CodeHostCallFailure` data;
|
|
147
|
+
* an unexpected host defect remains a defect.
|
|
148
|
+
*/
|
|
149
|
+
var CodeExecutionHost = class extends Context.Service()("@effect-agent/sandbox/CodeExecutionHost") {};
|
|
150
|
+
/** Accounting one executor observed for one pass. */
|
|
151
|
+
var CodeExecutionResourceUse = class extends Schema.Class("CodeExecutionResourceUse")({
|
|
152
|
+
wallTime: FiniteNonNegativeDuration,
|
|
153
|
+
hostCalls: Schema.Natural,
|
|
154
|
+
logBytes: Schema.Natural,
|
|
155
|
+
resultBytes: Schema.Natural,
|
|
156
|
+
cpuMillis: Schema.optionalKey(Schema.Natural)
|
|
157
|
+
}) {};
|
|
158
|
+
/**
|
|
159
|
+
* The bounded outcome of one successful pass. `value` and `logs` are the raw
|
|
160
|
+
* executor capture; the aggregate model-visible egress budget and redaction
|
|
161
|
+
* pass are owned by the Code Mode capability, not the executor (CAP-016).
|
|
162
|
+
*/
|
|
163
|
+
var CodeExecutionResult = class extends Schema.Class("CodeExecutionResult")({
|
|
164
|
+
implementation: SandboxImplementation,
|
|
165
|
+
value: Schema.Json,
|
|
166
|
+
logs: BoundedLogs,
|
|
167
|
+
resourceUse: CodeExecutionResourceUse
|
|
168
|
+
}) {};
|
|
169
|
+
/** The source is not one async function expression the executor can run. */
|
|
170
|
+
var CodeSourceError = class extends Schema.TaggedError()("CodeSourceError", {
|
|
171
|
+
implementation: SandboxImplementation,
|
|
172
|
+
reason: Schema.Literals([
|
|
173
|
+
"invalid",
|
|
174
|
+
"oversized",
|
|
175
|
+
"not-a-function"
|
|
176
|
+
]),
|
|
177
|
+
message: BoundedMessage
|
|
178
|
+
}) {};
|
|
179
|
+
/** The executor cannot honestly enforce one requested feature, limit, or policy. */
|
|
180
|
+
var CodeExecutorUnsupportedError = class extends Schema.TaggedError()("CodeExecutorUnsupportedError", {
|
|
181
|
+
implementation: SandboxImplementation,
|
|
182
|
+
feature: Schema.Literals([
|
|
183
|
+
"language",
|
|
184
|
+
"network",
|
|
185
|
+
"cpu-limit",
|
|
186
|
+
"namespaces",
|
|
187
|
+
"wall-clock",
|
|
188
|
+
"host-calls"
|
|
189
|
+
]),
|
|
190
|
+
message: BoundedMessage
|
|
191
|
+
}) {};
|
|
192
|
+
/** The executor could not start the isolated pass. */
|
|
193
|
+
var CodeExecutorStartError = class extends Schema.TaggedError()("CodeExecutorStartError", {
|
|
194
|
+
implementation: SandboxImplementation,
|
|
195
|
+
message: BoundedMessage,
|
|
196
|
+
cause: Schema.optionalKey(Schema.Defect())
|
|
197
|
+
}) {};
|
|
198
|
+
/** The pass exceeded its CPU or wall-clock budget and was terminated. */
|
|
199
|
+
var CodeExecutionTimeoutError = class extends Schema.TaggedError()("CodeExecutionTimeoutError", {
|
|
200
|
+
implementation: SandboxImplementation,
|
|
201
|
+
kind: Schema.Literals(["cpu", "wall-clock"]),
|
|
202
|
+
maxWallTime: FinitePositiveDuration,
|
|
203
|
+
logs: BoundedLogs
|
|
204
|
+
}) {};
|
|
205
|
+
/** A bounded surface (logs, result, or a per-call byte bound) was exceeded. */
|
|
206
|
+
var CodeOutputLimitError = class extends Schema.TaggedError()("CodeOutputLimitError", {
|
|
207
|
+
implementation: SandboxImplementation,
|
|
208
|
+
surface: Schema.Literals([
|
|
209
|
+
"logs",
|
|
210
|
+
"result",
|
|
211
|
+
"host-call-argument",
|
|
212
|
+
"host-call-result"
|
|
213
|
+
]),
|
|
214
|
+
limit: PositiveInt,
|
|
215
|
+
observed: Schema.Natural,
|
|
216
|
+
logs: BoundedLogs
|
|
217
|
+
}) {};
|
|
218
|
+
/** The pass issued more host calls than its executor-owned cap allows. */
|
|
219
|
+
var CodeHostCallLimitError = class extends Schema.TaggedError()("CodeHostCallLimitError", {
|
|
220
|
+
implementation: SandboxImplementation,
|
|
221
|
+
limit: Schema.Natural,
|
|
222
|
+
logs: BoundedLogs
|
|
223
|
+
}) {};
|
|
224
|
+
/**
|
|
225
|
+
* The generated program finished by failing: it threw, its promise rejected,
|
|
226
|
+
* or it returned a value that is not JSON. The bounded thrown value and log
|
|
227
|
+
* capture flow back so a model can correct the program without a blind retry.
|
|
228
|
+
*/
|
|
229
|
+
var CodeProgramFailedError = class extends Schema.TaggedError()("CodeProgramFailedError", {
|
|
230
|
+
implementation: SandboxImplementation,
|
|
231
|
+
reason: Schema.Literals([
|
|
232
|
+
"threw",
|
|
233
|
+
"rejected",
|
|
234
|
+
"non-json-result"
|
|
235
|
+
]),
|
|
236
|
+
thrown: Schema.Json,
|
|
237
|
+
message: BoundedMessage,
|
|
238
|
+
logs: BoundedLogs
|
|
239
|
+
}) {};
|
|
240
|
+
/** The executor or its transport produced a value outside the protocol Schemas. */
|
|
241
|
+
var CodeExecutionProtocolError = class extends Schema.TaggedError()("CodeExecutionProtocolError", {
|
|
242
|
+
implementation: SandboxImplementation,
|
|
243
|
+
message: BoundedMessage
|
|
244
|
+
}) {};
|
|
245
|
+
/**
|
|
246
|
+
* The pass was terminated externally — isolate eviction or a platform kill —
|
|
247
|
+
* with no terminal program result. No result is fabricated.
|
|
248
|
+
*/
|
|
249
|
+
var CodeExecutorTerminatedError = class extends Schema.TaggedError()("CodeExecutorTerminatedError", {
|
|
250
|
+
implementation: SandboxImplementation,
|
|
251
|
+
message: BoundedMessage
|
|
252
|
+
}) {};
|
|
253
|
+
/** Expected Code Mode execution failures. Interruption stays an Effect interruption. */
|
|
254
|
+
const CodeExecutionError = Schema.Union([
|
|
255
|
+
CodeSourceError,
|
|
256
|
+
CodeExecutorUnsupportedError,
|
|
257
|
+
CodeExecutorStartError,
|
|
258
|
+
CodeExecutionTimeoutError,
|
|
259
|
+
CodeOutputLimitError,
|
|
260
|
+
CodeHostCallLimitError,
|
|
261
|
+
CodeProgramFailedError,
|
|
262
|
+
CodeExecutionProtocolError,
|
|
263
|
+
CodeExecutorTerminatedError
|
|
264
|
+
]);
|
|
265
|
+
/**
|
|
266
|
+
* Callback-capable isolated execution port for Code Mode (ADR-0017), a sibling
|
|
267
|
+
* of the command-shaped `Sandbox` service. One `execute` is one stateless pass:
|
|
268
|
+
* the executor owns no approval, Tool, replay, or Thread semantics, holds
|
|
269
|
+
* every pass resource in the given Scope, and reaches the host only through the
|
|
270
|
+
* `CodeExecutionHost` service in its requirement channel. Implementations must
|
|
271
|
+
* identify their isolation posture honestly; an `unisolated` executor is never
|
|
272
|
+
* a security boundary (CAP-010, CAP-015).
|
|
273
|
+
*/
|
|
274
|
+
var CodeExecutor = class extends Context.Service()("@effect-agent/sandbox/CodeExecutor") {};
|
|
275
|
+
//#endregion
|
|
276
|
+
export { CodeExecutionError, CodeExecutionHost, CodeExecutionLimits, CodeExecutionNamespace, CodeExecutionProtocolError, CodeExecutionRequest, CodeExecutionResourceUse, CodeExecutionResult, CodeExecutionTimeoutError, CodeExecutor, CodeExecutorStartError, CodeExecutorTerminatedError, CodeExecutorUnsupportedError, CodeHostCall, CodeHostCallFailure, CodeHostCallLimitError, CodeHostCallResult, CodeHostCallSuccess, CodeOutputLimitError, CodeProgramFailedError, CodeSourceError, JsIdentifier, CodeExecutor_exports as t };
|
|
277
|
+
|
|
278
|
+
//# sourceMappingURL=CodeExecutor.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeExecutor.mjs","names":[],"sources":["../../src/sandbox/CodeExecutor.ts"],"sourcesContent":["import { Context, Duration, Schema, type Effect, type Scope } from \"effect\";\n\nimport {\n SANDBOX_DIAGNOSTIC_MAX_LENGTH,\n SandboxImplementation,\n SandboxNetworkPolicy,\n} from \"./Sandbox.ts\";\n\n// Schema `isMaxLength` counts UTF-16 string elements: these caps are\n// transport sanity bounds, not byte budgets. The authoritative byte budgets\n// are the `CodeExecutionLimits` fields, which every adapter enforces on the\n// UTF-8 encoded values (CAP-015); a multibyte payload therefore hits its\n// configured byte limit well before any of these element-count caps.\nconst BoundedLogLine = Schema.String.check(Schema.isMaxLength(16 * 1024));\nconst BoundedMessage = Schema.String.check(Schema.isMaxLength(SANDBOX_DIAGNOSTIC_MAX_LENGTH));\nconst BoundedLogs = Schema.Array(BoundedLogLine).check(Schema.isMaxLength(4_096));\nconst BoundedSourceText = Schema.String.check(Schema.isMaxLength(4 * 1024 * 1024));\nconst PositiveInt = Schema.Int.check(Schema.isGreaterThan(0));\n\nconst FinitePositiveDuration = Schema.Duration.pipe(\n Schema.refine(\n (duration): duration is Duration.Duration =>\n Duration.isFinite(duration) && Duration.isPositive(duration),\n { expected: \"a finite positive duration\" },\n ),\n);\n\nconst FiniteNonNegativeDuration = Schema.Duration.pipe(\n Schema.refine(\n (duration): duration is Duration.Duration =>\n Duration.isFinite(duration) && !Duration.isNegative(duration),\n { expected: \"a finite non-negative duration\" },\n ),\n);\n\n/**\n * ECMAScript reserved words are rejected up front: a namespace or method that\n * needs one would make every harness that binds identifiers fail at runtime\n * instead of failing closed at the Schema boundary.\n */\nconst reservedIdentifiers = new Set([\n \"arguments\",\n \"await\",\n \"break\",\n \"case\",\n \"catch\",\n \"class\",\n \"const\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"delete\",\n \"do\",\n \"else\",\n \"enum\",\n \"eval\",\n \"export\",\n \"extends\",\n \"false\",\n \"finally\",\n \"for\",\n \"function\",\n \"if\",\n \"implements\",\n \"import\",\n \"in\",\n \"instanceof\",\n \"interface\",\n \"let\",\n \"new\",\n \"null\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"return\",\n \"static\",\n \"super\",\n \"switch\",\n \"this\",\n \"throw\",\n \"true\",\n \"try\",\n \"typeof\",\n \"var\",\n \"void\",\n \"while\",\n \"with\",\n \"yield\",\n]);\n\n/** A JavaScript identifier safe to bind as a sandbox global or method name. */\nexport const JsIdentifier = Schema.NonEmptyString.check(\n Schema.isMaxLength(128),\n Schema.isPattern(/^[A-Za-z_$][A-Za-z0-9_$]*$/),\n).pipe(\n Schema.refine((value): value is string => !reservedIdentifiers.has(value), {\n expected: \"a JavaScript identifier that is not a reserved word\",\n }),\n);\n\nexport type JsIdentifier = typeof JsIdentifier.Type;\n\n/** One callable namespace exposed to the generated program as a typed global. */\nexport class CodeExecutionNamespace extends Schema.Class<CodeExecutionNamespace>(\n \"CodeExecutionNamespace\",\n)({\n name: JsIdentifier,\n methods: Schema.Array(JsIdentifier).check(Schema.isMaxLength(64), Schema.isMinLength(1)),\n}) {}\n\n/**\n * Limits an executor must either enforce or reject (CAP-015). Byte bounds are\n * measured on UTF-8 encoded JSON at the sandbox boundary.\n */\nexport class CodeExecutionLimits extends Schema.Class<CodeExecutionLimits>(\"CodeExecutionLimits\")({\n maxSourceBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4 * 1024 * 1024)),\n maxWallTime: FinitePositiveDuration,\n cpuMillis: Schema.optionalKey(PositiveInt.check(Schema.isLessThanOrEqualTo(5 * 60 * 1000))),\n maxLogBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(1024 * 1024)),\n maxResultBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4 * 1024 * 1024)),\n maxHostCalls: Schema.Natural.check(Schema.isLessThanOrEqualTo(10_000)),\n /** Maximum active host calls per pass; defaults to four. Excess calls wait in Scope. */\n maxHostCallConcurrency: Schema.optionalKey(PositiveInt.check(Schema.isLessThanOrEqualTo(64))),\n maxHostCallArgumentBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(1024 * 1024)),\n maxHostCallResultBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(4 * 1024 * 1024)),\n}) {}\n\n/**\n * One isolated execution pass over bounded generated JavaScript. The source\n * must be a single expression evaluating to one async function; the executor\n * harness invokes it exactly once with no arguments (ADR-0017 decision 5).\n */\nexport class CodeExecutionRequest extends Schema.Class<CodeExecutionRequest>(\n \"CodeExecutionRequest\",\n)({\n language: Schema.Literals([\"javascript\"]),\n source: BoundedSourceText,\n namespaces: Schema.Array(CodeExecutionNamespace).check(Schema.isMaxLength(32)),\n network: SandboxNetworkPolicy,\n limits: CodeExecutionLimits,\n}) {}\n\n/** One host invocation from generated code. Data only: the broker owns identity. */\nexport class CodeHostCall extends Schema.Class<CodeHostCall>(\"CodeHostCall\")({\n namespace: JsIdentifier,\n method: JsIdentifier,\n argument: Schema.Json,\n}) {}\n\n/** A host call settled with the encoded Tool success value. */\nexport class CodeHostCallSuccess extends Schema.TaggedClass<CodeHostCallSuccess>()(\n \"CodeHostCallSuccess\",\n {\n value: Schema.Json,\n },\n) {}\n\n/**\n * A host call settled with a Schema-encoded typed failure envelope. Inside the\n * generated program the call's Promise rejects with the envelope value, so a\n * program can catch and branch on expected failures.\n */\nexport class CodeHostCallFailure extends Schema.TaggedClass<CodeHostCallFailure>()(\n \"CodeHostCallFailure\",\n {\n error: Schema.Json,\n },\n) {}\n\n/** Outcome of one host call as data; transport failures stay executor errors. */\nexport const CodeHostCallResult = Schema.Union([CodeHostCallSuccess, CodeHostCallFailure]);\nexport type CodeHostCallResult = typeof CodeHostCallResult.Type;\n\n/**\n * The per-pass host capability: the only authority generated code has over the\n * host. It is provided at the pass edge by the capability layer, its live\n * bindings are scoped resources, and it is never persisted (ADR-0017\n * decision 2). Broker-level failures return as `CodeHostCallFailure` data;\n * an unexpected host defect remains a defect.\n */\nexport class CodeExecutionHost extends Context.Service<\n CodeExecutionHost,\n {\n readonly call: (call: CodeHostCall) => Effect.Effect<CodeHostCallResult>;\n }\n>()(\"@effect-agent/sandbox/CodeExecutionHost\") {}\n\n/** Accounting one executor observed for one pass. */\nexport class CodeExecutionResourceUse extends Schema.Class<CodeExecutionResourceUse>(\n \"CodeExecutionResourceUse\",\n)({\n wallTime: FiniteNonNegativeDuration,\n hostCalls: Schema.Natural,\n logBytes: Schema.Natural,\n resultBytes: Schema.Natural,\n cpuMillis: Schema.optionalKey(Schema.Natural),\n}) {}\n\n/**\n * The bounded outcome of one successful pass. `value` and `logs` are the raw\n * executor capture; the aggregate model-visible egress budget and redaction\n * pass are owned by the Code Mode capability, not the executor (CAP-016).\n */\nexport class CodeExecutionResult extends Schema.Class<CodeExecutionResult>(\"CodeExecutionResult\")({\n implementation: SandboxImplementation,\n value: Schema.Json,\n logs: BoundedLogs,\n resourceUse: CodeExecutionResourceUse,\n}) {}\n\n/** The source is not one async function expression the executor can run. */\nexport class CodeSourceError extends Schema.TaggedError<CodeSourceError>()(\"CodeSourceError\", {\n implementation: SandboxImplementation,\n reason: Schema.Literals([\"invalid\", \"oversized\", \"not-a-function\"]),\n message: BoundedMessage,\n}) {}\n\n/** The executor cannot honestly enforce one requested feature, limit, or policy. */\nexport class CodeExecutorUnsupportedError extends Schema.TaggedError<CodeExecutorUnsupportedError>()(\n \"CodeExecutorUnsupportedError\",\n {\n implementation: SandboxImplementation,\n feature: Schema.Literals([\n \"language\",\n \"network\",\n \"cpu-limit\",\n \"namespaces\",\n \"wall-clock\",\n \"host-calls\",\n ]),\n message: BoundedMessage,\n },\n) {}\n\n/** The executor could not start the isolated pass. */\nexport class CodeExecutorStartError extends Schema.TaggedError<CodeExecutorStartError>()(\n \"CodeExecutorStartError\",\n {\n implementation: SandboxImplementation,\n message: BoundedMessage,\n cause: Schema.optionalKey(Schema.Defect()),\n },\n) {}\n\n/** The pass exceeded its CPU or wall-clock budget and was terminated. */\nexport class CodeExecutionTimeoutError extends Schema.TaggedError<CodeExecutionTimeoutError>()(\n \"CodeExecutionTimeoutError\",\n {\n implementation: SandboxImplementation,\n kind: Schema.Literals([\"cpu\", \"wall-clock\"]),\n maxWallTime: FinitePositiveDuration,\n logs: BoundedLogs,\n },\n) {}\n\n/** A bounded surface (logs, result, or a per-call byte bound) was exceeded. */\nexport class CodeOutputLimitError extends Schema.TaggedError<CodeOutputLimitError>()(\n \"CodeOutputLimitError\",\n {\n implementation: SandboxImplementation,\n surface: Schema.Literals([\"logs\", \"result\", \"host-call-argument\", \"host-call-result\"]),\n limit: PositiveInt,\n observed: Schema.Natural,\n logs: BoundedLogs,\n },\n) {}\n\n/** The pass issued more host calls than its executor-owned cap allows. */\nexport class CodeHostCallLimitError extends Schema.TaggedError<CodeHostCallLimitError>()(\n \"CodeHostCallLimitError\",\n {\n implementation: SandboxImplementation,\n limit: Schema.Natural,\n logs: BoundedLogs,\n },\n) {}\n\n/**\n * The generated program finished by failing: it threw, its promise rejected,\n * or it returned a value that is not JSON. The bounded thrown value and log\n * capture flow back so a model can correct the program without a blind retry.\n */\nexport class CodeProgramFailedError extends Schema.TaggedError<CodeProgramFailedError>()(\n \"CodeProgramFailedError\",\n {\n implementation: SandboxImplementation,\n reason: Schema.Literals([\"threw\", \"rejected\", \"non-json-result\"]),\n thrown: Schema.Json,\n message: BoundedMessage,\n logs: BoundedLogs,\n },\n) {}\n\n/** The executor or its transport produced a value outside the protocol Schemas. */\nexport class CodeExecutionProtocolError extends Schema.TaggedError<CodeExecutionProtocolError>()(\n \"CodeExecutionProtocolError\",\n {\n implementation: SandboxImplementation,\n message: BoundedMessage,\n },\n) {}\n\n/**\n * The pass was terminated externally — isolate eviction or a platform kill —\n * with no terminal program result. No result is fabricated.\n */\nexport class CodeExecutorTerminatedError extends Schema.TaggedError<CodeExecutorTerminatedError>()(\n \"CodeExecutorTerminatedError\",\n {\n implementation: SandboxImplementation,\n message: BoundedMessage,\n },\n) {}\n\n/** Expected Code Mode execution failures. Interruption stays an Effect interruption. */\nexport const CodeExecutionError = Schema.Union([\n CodeSourceError,\n CodeExecutorUnsupportedError,\n CodeExecutorStartError,\n CodeExecutionTimeoutError,\n CodeOutputLimitError,\n CodeHostCallLimitError,\n CodeProgramFailedError,\n CodeExecutionProtocolError,\n CodeExecutorTerminatedError,\n]);\n\nexport type CodeExecutionError = typeof CodeExecutionError.Type;\n\n/**\n * Callback-capable isolated execution port for Code Mode (ADR-0017), a sibling\n * of the command-shaped `Sandbox` service. One `execute` is one stateless pass:\n * the executor owns no approval, Tool, replay, or Thread semantics, holds\n * every pass resource in the given Scope, and reaches the host only through the\n * `CodeExecutionHost` service in its requirement channel. Implementations must\n * identify their isolation posture honestly; an `unisolated` executor is never\n * a security boundary (CAP-010, CAP-015).\n */\nexport class CodeExecutor extends Context.Service<\n CodeExecutor,\n {\n readonly execute: (\n request: CodeExecutionRequest,\n ) => Effect.Effect<CodeExecutionResult, CodeExecutionError, Scope.Scope | CodeExecutionHost>;\n }\n>()(\"@effect-agent/sandbox/CodeExecutor\") {}\n\n/** Type helper for implementations that preserve the public CodeExecutor contract. */\nexport type CodeExecutorExecute = (\n request: CodeExecutionRequest,\n) => Effect.Effect<CodeExecutionResult, CodeExecutionError, Scope.Scope | CodeExecutionHost>;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { p as SandboxImplementation } from "../Sandbox-CEsDWBLq.mjs";
|
|
2
|
+
import { s as PageScreenshotResult } from "../PageScreenshot-BpgZKAxl.mjs";
|
|
3
|
+
import { Context, Effect, Schema, Scope } from "effect";
|
|
4
|
+
declare namespace InteractiveBrowser_d_exports {
|
|
5
|
+
export { BrowserActionResult, BrowserClickRequest, BrowserFillRequest, BrowserHandle, BrowserNavigateRequest, BrowserNavigationResult, BrowserReadTextRequest, BrowserScreenshotRequest, BrowserScrollRequest, BrowserTextResult, InteractiveBrowser, InteractiveBrowserActionError, InteractiveBrowserBusyError, InteractiveBrowserCapacityError, InteractiveBrowserError, InteractiveBrowserExpiredError, InteractiveBrowserHost, InteractiveBrowserLimitError, InteractiveBrowserNetworkPolicy, InteractiveBrowserPolicy, InteractiveBrowserPolicyDeniedError, InteractiveBrowserProtocolError, InteractiveBrowserTargetUrl, InteractiveBrowserUnsupportedError };
|
|
6
|
+
}
|
|
7
|
+
/** Absolute, bounded HTTP(S) navigation URL without embedded credentials. */
|
|
8
|
+
declare const InteractiveBrowserTargetUrl: Schema.NonEmptyString;
|
|
9
|
+
type InteractiveBrowserTargetUrl = typeof InteractiveBrowserTargetUrl.Type;
|
|
10
|
+
/** Canonical HTTPS host authority, optionally carrying a non-default port. */
|
|
11
|
+
declare const InteractiveBrowserHost: Schema.NonEmptyString;
|
|
12
|
+
type InteractiveBrowserHost = typeof InteractiveBrowserHost.Type;
|
|
13
|
+
/**
|
|
14
|
+
* ExactHosts retains the page-request URL allowlist, not a public-network boundary.
|
|
15
|
+
* PublicWeb requires connection-time public-address enforcement for all session
|
|
16
|
+
* traffic, including human navigation. Adapters that cannot enforce it must fail
|
|
17
|
+
* with InteractiveBrowserUnsupportedError before acquiring a browser.
|
|
18
|
+
* Unrestricted explicitly opts out of URL/host and private-network containment.
|
|
19
|
+
*/
|
|
20
|
+
declare const InteractiveBrowserNetworkPolicy: Schema.Union<readonly [Schema.TaggedStruct<"ExactHosts", {
|
|
21
|
+
readonly allowedHosts: Schema.$Array<Schema.NonEmptyString>;
|
|
22
|
+
}>, Schema.TaggedStruct<"PublicWeb", {}>, Schema.TaggedStruct<"Unrestricted", {}>]>;
|
|
23
|
+
type InteractiveBrowserNetworkPolicy = typeof InteractiveBrowserNetworkPolicy.Type;
|
|
24
|
+
declare const InteractiveBrowserPolicy_base: Schema.Class<InteractiveBrowserPolicy, Schema.Struct<{
|
|
25
|
+
readonly network: Schema.Union<readonly [Schema.TaggedStruct<"ExactHosts", {
|
|
26
|
+
readonly allowedHosts: Schema.$Array<Schema.NonEmptyString>;
|
|
27
|
+
}>, Schema.TaggedStruct<"PublicWeb", {}>, Schema.TaggedStruct<"Unrestricted", {}>]>;
|
|
28
|
+
readonly maxActions: Schema.Int;
|
|
29
|
+
readonly maxElapsedMillis: Schema.Int;
|
|
30
|
+
readonly maxReturnedBytes: Schema.Int;
|
|
31
|
+
}>, {}>;
|
|
32
|
+
/** Finite per-pass budgets. The elapsed ceiling is one hour; provider idle limits may be shorter. */
|
|
33
|
+
declare class InteractiveBrowserPolicy extends InteractiveBrowserPolicy_base {}
|
|
34
|
+
declare const BrowserNavigateRequest_base: Schema.Class<BrowserNavigateRequest, Schema.Struct<{
|
|
35
|
+
readonly url: Schema.NonEmptyString;
|
|
36
|
+
}>, {}>;
|
|
37
|
+
declare class BrowserNavigateRequest extends BrowserNavigateRequest_base {}
|
|
38
|
+
declare const BrowserReadTextRequest_base: Schema.Class<BrowserReadTextRequest, Schema.Struct<{
|
|
39
|
+
readonly selector: Schema.optionalKey<Schema.NonEmptyString>;
|
|
40
|
+
}>, {}>;
|
|
41
|
+
declare class BrowserReadTextRequest extends BrowserReadTextRequest_base {}
|
|
42
|
+
declare const BrowserFillRequest_base: Schema.Class<BrowserFillRequest, Schema.Struct<{
|
|
43
|
+
readonly selector: Schema.NonEmptyString;
|
|
44
|
+
readonly value: Schema.String;
|
|
45
|
+
}>, {}>;
|
|
46
|
+
declare class BrowserFillRequest extends BrowserFillRequest_base {}
|
|
47
|
+
declare const BrowserClickRequest_base: Schema.Class<BrowserClickRequest, Schema.Struct<{
|
|
48
|
+
readonly selector: Schema.NonEmptyString;
|
|
49
|
+
}>, {}>;
|
|
50
|
+
declare class BrowserClickRequest extends BrowserClickRequest_base {}
|
|
51
|
+
declare const BrowserScreenshotRequest_base: Schema.Class<BrowserScreenshotRequest, Schema.Struct<{
|
|
52
|
+
readonly fullPage: Schema.Boolean;
|
|
53
|
+
}>, {}>;
|
|
54
|
+
/** Capture the current page without navigating or opening another browser. */
|
|
55
|
+
declare class BrowserScreenshotRequest extends BrowserScreenshotRequest_base {}
|
|
56
|
+
declare const BrowserScrollRequest_base: Schema.Class<BrowserScrollRequest, Schema.Struct<{
|
|
57
|
+
readonly deltaX: Schema.Int;
|
|
58
|
+
readonly deltaY: Schema.Int;
|
|
59
|
+
}>, {}>;
|
|
60
|
+
/** Scroll the current viewport by signed CSS pixel deltas. */
|
|
61
|
+
declare class BrowserScrollRequest extends BrowserScrollRequest_base {}
|
|
62
|
+
declare const BrowserNavigationResult_base: Schema.Class<BrowserNavigationResult, Schema.Struct<{
|
|
63
|
+
readonly url: Schema.NonEmptyString;
|
|
64
|
+
}>, {}>;
|
|
65
|
+
declare class BrowserNavigationResult extends BrowserNavigationResult_base {}
|
|
66
|
+
declare const BrowserTextResult_base: Schema.Class<BrowserTextResult, Schema.Struct<{
|
|
67
|
+
readonly text: Schema.String;
|
|
68
|
+
}>, {}>;
|
|
69
|
+
declare class BrowserTextResult extends BrowserTextResult_base {}
|
|
70
|
+
declare const BrowserActionResult_base: Schema.Class<BrowserActionResult, Schema.Struct<{
|
|
71
|
+
readonly url: Schema.NonEmptyString;
|
|
72
|
+
}>, {}>;
|
|
73
|
+
/** Post-action URL observation; no provider session state crosses this boundary. */
|
|
74
|
+
declare class BrowserActionResult extends BrowserActionResult_base {}
|
|
75
|
+
declare const InteractiveBrowserPolicyDeniedError_base: Schema.Class<InteractiveBrowserPolicyDeniedError, Schema.TaggedStruct<"InteractiveBrowserPolicyDeniedError", {
|
|
76
|
+
readonly implementation: typeof SandboxImplementation;
|
|
77
|
+
readonly message: Schema.String;
|
|
78
|
+
}>, import("effect/Cause").YieldableError>;
|
|
79
|
+
declare class InteractiveBrowserPolicyDeniedError extends InteractiveBrowserPolicyDeniedError_base {}
|
|
80
|
+
declare const InteractiveBrowserBusyError_base: Schema.Class<InteractiveBrowserBusyError, Schema.TaggedStruct<"InteractiveBrowserBusyError", {
|
|
81
|
+
readonly implementation: typeof SandboxImplementation;
|
|
82
|
+
readonly message: Schema.String;
|
|
83
|
+
}>, import("effect/Cause").YieldableError>;
|
|
84
|
+
declare class InteractiveBrowserBusyError extends InteractiveBrowserBusyError_base {}
|
|
85
|
+
declare const InteractiveBrowserCapacityError_base: Schema.Class<InteractiveBrowserCapacityError, Schema.TaggedStruct<"InteractiveBrowserCapacityError", {
|
|
86
|
+
readonly implementation: typeof SandboxImplementation;
|
|
87
|
+
readonly message: Schema.String;
|
|
88
|
+
}>, import("effect/Cause").YieldableError>;
|
|
89
|
+
declare class InteractiveBrowserCapacityError extends InteractiveBrowserCapacityError_base {}
|
|
90
|
+
declare const InteractiveBrowserExpiredError_base: Schema.Class<InteractiveBrowserExpiredError, Schema.TaggedStruct<"InteractiveBrowserExpiredError", {
|
|
91
|
+
readonly implementation: typeof SandboxImplementation;
|
|
92
|
+
readonly message: Schema.String;
|
|
93
|
+
}>, import("effect/Cause").YieldableError>;
|
|
94
|
+
declare class InteractiveBrowserExpiredError extends InteractiveBrowserExpiredError_base {}
|
|
95
|
+
declare const InteractiveBrowserActionError_base: Schema.Class<InteractiveBrowserActionError, Schema.TaggedStruct<"InteractiveBrowserActionError", {
|
|
96
|
+
readonly implementation: typeof SandboxImplementation;
|
|
97
|
+
readonly operation: Schema.Literals<readonly ["navigate", "read-text", "fill", "click", "screenshot", "scroll", "close"]>;
|
|
98
|
+
readonly message: Schema.String;
|
|
99
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
100
|
+
}>, import("effect/Cause").YieldableError>;
|
|
101
|
+
declare class InteractiveBrowserActionError extends InteractiveBrowserActionError_base {}
|
|
102
|
+
declare const InteractiveBrowserProtocolError_base: Schema.Class<InteractiveBrowserProtocolError, Schema.TaggedStruct<"InteractiveBrowserProtocolError", {
|
|
103
|
+
readonly implementation: typeof SandboxImplementation;
|
|
104
|
+
readonly message: Schema.String;
|
|
105
|
+
readonly cause: Schema.optionalKey<Schema.Defect>;
|
|
106
|
+
}>, import("effect/Cause").YieldableError>;
|
|
107
|
+
declare class InteractiveBrowserProtocolError extends InteractiveBrowserProtocolError_base {}
|
|
108
|
+
declare const InteractiveBrowserLimitError_base: Schema.Class<InteractiveBrowserLimitError, Schema.TaggedStruct<"InteractiveBrowserLimitError", {
|
|
109
|
+
readonly implementation: typeof SandboxImplementation;
|
|
110
|
+
readonly limit: Schema.Literals<readonly ["actions", "elapsed", "returned-bytes"]>;
|
|
111
|
+
readonly maximum: Schema.Int;
|
|
112
|
+
readonly observed: Schema.Natural;
|
|
113
|
+
readonly message: Schema.String;
|
|
114
|
+
}>, import("effect/Cause").YieldableError>;
|
|
115
|
+
declare class InteractiveBrowserLimitError extends InteractiveBrowserLimitError_base {}
|
|
116
|
+
declare const InteractiveBrowserUnsupportedError_base: Schema.Class<InteractiveBrowserUnsupportedError, Schema.TaggedStruct<"InteractiveBrowserUnsupportedError", {
|
|
117
|
+
readonly implementation: typeof SandboxImplementation;
|
|
118
|
+
readonly feature: Schema.Literals<readonly ["navigation", "read-text", "fill", "click", "screenshot", "scroll", "policy"]>;
|
|
119
|
+
readonly message: Schema.String;
|
|
120
|
+
}>, import("effect/Cause").YieldableError>;
|
|
121
|
+
declare class InteractiveBrowserUnsupportedError extends InteractiveBrowserUnsupportedError_base {}
|
|
122
|
+
declare const InteractiveBrowserError: Schema.Union<readonly [typeof InteractiveBrowserPolicyDeniedError, typeof InteractiveBrowserBusyError, typeof InteractiveBrowserCapacityError, typeof InteractiveBrowserExpiredError, typeof InteractiveBrowserActionError, typeof InteractiveBrowserProtocolError, typeof InteractiveBrowserLimitError, typeof InteractiveBrowserUnsupportedError]>;
|
|
123
|
+
type InteractiveBrowserError = typeof InteractiveBrowserError.Type;
|
|
124
|
+
/** A live handle is intentionally not a Schema value and cannot cross persistence/transport boundaries. */
|
|
125
|
+
interface BrowserHandle {
|
|
126
|
+
readonly navigate: (request: BrowserNavigateRequest) => Effect.Effect<BrowserNavigationResult, InteractiveBrowserError>;
|
|
127
|
+
readonly readText: (request: BrowserReadTextRequest) => Effect.Effect<BrowserTextResult, InteractiveBrowserError>;
|
|
128
|
+
readonly fill: (request: BrowserFillRequest) => Effect.Effect<BrowserActionResult, InteractiveBrowserError>;
|
|
129
|
+
readonly click: (request: BrowserClickRequest) => Effect.Effect<BrowserActionResult, InteractiveBrowserError>;
|
|
130
|
+
/** PNG bytes are caller-owned and bounded by the pass's per-result byte limit. */
|
|
131
|
+
readonly screenshot: (request: BrowserScreenshotRequest) => Effect.Effect<PageScreenshotResult, InteractiveBrowserError>;
|
|
132
|
+
readonly scroll: (request: BrowserScrollRequest) => Effect.Effect<BrowserActionResult, InteractiveBrowserError>;
|
|
133
|
+
/** Invalidate the handle and close its resources early, including after an interrupted action. */
|
|
134
|
+
readonly close: Effect.Effect<void, InteractiveBrowserError>;
|
|
135
|
+
}
|
|
136
|
+
declare const InteractiveBrowser_base: Context.ServiceClass<InteractiveBrowser, "@effect-agent/sandbox/InteractiveBrowser", {
|
|
137
|
+
readonly open: (policy: InteractiveBrowserPolicy) => Effect.Effect<BrowserHandle, InteractiveBrowserError, Scope.Scope>;
|
|
138
|
+
}>;
|
|
139
|
+
declare class InteractiveBrowser extends InteractiveBrowser_base {}
|
|
140
|
+
//#endregion
|
|
141
|
+
export { BrowserActionResult, BrowserClickRequest, BrowserFillRequest, BrowserHandle, BrowserNavigateRequest, BrowserNavigationResult, BrowserReadTextRequest, BrowserScreenshotRequest, BrowserScrollRequest, BrowserTextResult, InteractiveBrowser, InteractiveBrowserActionError, InteractiveBrowserBusyError, InteractiveBrowserCapacityError, InteractiveBrowserError, InteractiveBrowserExpiredError, InteractiveBrowserHost, InteractiveBrowserLimitError, InteractiveBrowserNetworkPolicy, InteractiveBrowserPolicy, InteractiveBrowserPolicyDeniedError, InteractiveBrowserProtocolError, InteractiveBrowserTargetUrl, InteractiveBrowserUnsupportedError, InteractiveBrowser_d_exports as t };
|
|
142
|
+
//# sourceMappingURL=InteractiveBrowser.d.mts.map
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.mjs";
|
|
2
|
+
import { SandboxImplementation } from "./Sandbox.mjs";
|
|
3
|
+
import { Context, Option, Schema } from "effect";
|
|
4
|
+
//#region src/sandbox/InteractiveBrowser.ts
|
|
5
|
+
var InteractiveBrowser_exports = /* @__PURE__ */ __exportAll({
|
|
6
|
+
BrowserActionResult: () => BrowserActionResult,
|
|
7
|
+
BrowserClickRequest: () => BrowserClickRequest,
|
|
8
|
+
BrowserFillRequest: () => BrowserFillRequest,
|
|
9
|
+
BrowserNavigateRequest: () => BrowserNavigateRequest,
|
|
10
|
+
BrowserNavigationResult: () => BrowserNavigationResult,
|
|
11
|
+
BrowserReadTextRequest: () => BrowserReadTextRequest,
|
|
12
|
+
BrowserScreenshotRequest: () => BrowserScreenshotRequest,
|
|
13
|
+
BrowserScrollRequest: () => BrowserScrollRequest,
|
|
14
|
+
BrowserTextResult: () => BrowserTextResult,
|
|
15
|
+
InteractiveBrowser: () => InteractiveBrowser,
|
|
16
|
+
InteractiveBrowserActionError: () => InteractiveBrowserActionError,
|
|
17
|
+
InteractiveBrowserBusyError: () => InteractiveBrowserBusyError,
|
|
18
|
+
InteractiveBrowserCapacityError: () => InteractiveBrowserCapacityError,
|
|
19
|
+
InteractiveBrowserError: () => InteractiveBrowserError,
|
|
20
|
+
InteractiveBrowserExpiredError: () => InteractiveBrowserExpiredError,
|
|
21
|
+
InteractiveBrowserHost: () => InteractiveBrowserHost,
|
|
22
|
+
InteractiveBrowserLimitError: () => InteractiveBrowserLimitError,
|
|
23
|
+
InteractiveBrowserNetworkPolicy: () => InteractiveBrowserNetworkPolicy,
|
|
24
|
+
InteractiveBrowserPolicy: () => InteractiveBrowserPolicy,
|
|
25
|
+
InteractiveBrowserPolicyDeniedError: () => InteractiveBrowserPolicyDeniedError,
|
|
26
|
+
InteractiveBrowserProtocolError: () => InteractiveBrowserProtocolError,
|
|
27
|
+
InteractiveBrowserTargetUrl: () => InteractiveBrowserTargetUrl,
|
|
28
|
+
InteractiveBrowserUnsupportedError: () => InteractiveBrowserUnsupportedError
|
|
29
|
+
});
|
|
30
|
+
const PositiveInt = Schema.Int.check(Schema.isGreaterThan(0));
|
|
31
|
+
const BoundedText = Schema.String.check(Schema.isMaxLength(8388608));
|
|
32
|
+
const BoundedMessage = Schema.String.check(Schema.isMaxLength(8192));
|
|
33
|
+
const Selector = Schema.NonEmptyString.check(Schema.isMaxLength(1024));
|
|
34
|
+
const FieldValue = Schema.String.check(Schema.isMaxLength(65536));
|
|
35
|
+
const ScrollDelta = Schema.Int.check(Schema.isBetween({
|
|
36
|
+
minimum: -1e5,
|
|
37
|
+
maximum: 1e5
|
|
38
|
+
}));
|
|
39
|
+
const decodeUrl = Schema.decodeUnknownOption(Schema.URLFromString);
|
|
40
|
+
/** Absolute, bounded HTTP(S) navigation URL without embedded credentials. */
|
|
41
|
+
const InteractiveBrowserTargetUrl = Schema.NonEmptyString.check(Schema.isMaxLength(8192), Schema.makeFilter((value) => {
|
|
42
|
+
const parsed = decodeUrl(value);
|
|
43
|
+
if (Option.isNone(parsed)) return false;
|
|
44
|
+
const url = parsed.value;
|
|
45
|
+
return (url.protocol === "http:" || url.protocol === "https:") && url.hostname !== "" && url.username === "" && url.password === "";
|
|
46
|
+
}, { title: "an absolute HTTP or HTTPS URL without embedded credentials" }));
|
|
47
|
+
/** Canonical HTTPS host authority, optionally carrying a non-default port. */
|
|
48
|
+
const InteractiveBrowserHost = Schema.NonEmptyString.check(Schema.isMaxLength(255), Schema.makeFilter((value) => {
|
|
49
|
+
if (value.includes("*")) return false;
|
|
50
|
+
const parsed = decodeUrl(`https://${value}/`);
|
|
51
|
+
if (Option.isNone(parsed)) return false;
|
|
52
|
+
const url = parsed.value;
|
|
53
|
+
return url.protocol === "https:" && url.username === "" && url.password === "" && url.host === value;
|
|
54
|
+
}, { title: "a canonical credential-free HTTPS host authority" }));
|
|
55
|
+
/**
|
|
56
|
+
* ExactHosts retains the page-request URL allowlist, not a public-network boundary.
|
|
57
|
+
* PublicWeb requires connection-time public-address enforcement for all session
|
|
58
|
+
* traffic, including human navigation. Adapters that cannot enforce it must fail
|
|
59
|
+
* with InteractiveBrowserUnsupportedError before acquiring a browser.
|
|
60
|
+
* Unrestricted explicitly opts out of URL/host and private-network containment.
|
|
61
|
+
*/
|
|
62
|
+
const InteractiveBrowserNetworkPolicy = Schema.Union([
|
|
63
|
+
Schema.TaggedStruct("ExactHosts", { allowedHosts: Schema.Array(InteractiveBrowserHost).check(Schema.isMinLength(1), Schema.isMaxLength(64), Schema.isUnique()) }),
|
|
64
|
+
Schema.TaggedStruct("PublicWeb", {}),
|
|
65
|
+
Schema.TaggedStruct("Unrestricted", {})
|
|
66
|
+
]).pipe(Schema.annotate({ parseOptions: { onExcessProperty: "error" } }));
|
|
67
|
+
/** Finite per-pass budgets. The elapsed ceiling is one hour; provider idle limits may be shorter. */
|
|
68
|
+
var InteractiveBrowserPolicy = class extends Schema.Class("InteractiveBrowserPolicy")(Schema.Struct({
|
|
69
|
+
network: InteractiveBrowserNetworkPolicy,
|
|
70
|
+
maxActions: PositiveInt.check(Schema.isLessThanOrEqualTo(1e3)),
|
|
71
|
+
maxElapsedMillis: PositiveInt.check(Schema.isLessThanOrEqualTo(36e5)),
|
|
72
|
+
maxReturnedBytes: PositiveInt.check(Schema.isLessThanOrEqualTo(8388608))
|
|
73
|
+
}).pipe(Schema.annotate({ parseOptions: { onExcessProperty: "error" } }))) {};
|
|
74
|
+
var BrowserNavigateRequest = class extends Schema.Class("BrowserNavigateRequest")({ url: InteractiveBrowserTargetUrl }) {};
|
|
75
|
+
var BrowserReadTextRequest = class extends Schema.Class("BrowserReadTextRequest")({ selector: Schema.optionalKey(Selector) }) {};
|
|
76
|
+
var BrowserFillRequest = class extends Schema.Class("BrowserFillRequest")({
|
|
77
|
+
selector: Selector,
|
|
78
|
+
value: FieldValue
|
|
79
|
+
}) {};
|
|
80
|
+
var BrowserClickRequest = class extends Schema.Class("BrowserClickRequest")({ selector: Selector }) {};
|
|
81
|
+
/** Capture the current page without navigating or opening another browser. */
|
|
82
|
+
var BrowserScreenshotRequest = class extends Schema.Class("BrowserScreenshotRequest")({ fullPage: Schema.Boolean }) {};
|
|
83
|
+
/** Scroll the current viewport by signed CSS pixel deltas. */
|
|
84
|
+
var BrowserScrollRequest = class extends Schema.Class("BrowserScrollRequest")({
|
|
85
|
+
deltaX: ScrollDelta,
|
|
86
|
+
deltaY: ScrollDelta
|
|
87
|
+
}) {};
|
|
88
|
+
var BrowserNavigationResult = class extends Schema.Class("BrowserNavigationResult")({ url: InteractiveBrowserTargetUrl }) {};
|
|
89
|
+
var BrowserTextResult = class extends Schema.Class("BrowserTextResult")({ text: BoundedText }) {};
|
|
90
|
+
/** Post-action URL observation; no provider session state crosses this boundary. */
|
|
91
|
+
var BrowserActionResult = class extends Schema.Class("BrowserActionResult")({ url: InteractiveBrowserTargetUrl }) {};
|
|
92
|
+
var InteractiveBrowserPolicyDeniedError = class extends Schema.TaggedError()("InteractiveBrowserPolicyDeniedError", {
|
|
93
|
+
implementation: SandboxImplementation,
|
|
94
|
+
message: BoundedMessage
|
|
95
|
+
}) {};
|
|
96
|
+
var InteractiveBrowserBusyError = class extends Schema.TaggedError()("InteractiveBrowserBusyError", {
|
|
97
|
+
implementation: SandboxImplementation,
|
|
98
|
+
message: BoundedMessage
|
|
99
|
+
}) {};
|
|
100
|
+
var InteractiveBrowserCapacityError = class extends Schema.TaggedError()("InteractiveBrowserCapacityError", {
|
|
101
|
+
implementation: SandboxImplementation,
|
|
102
|
+
message: BoundedMessage
|
|
103
|
+
}) {};
|
|
104
|
+
var InteractiveBrowserExpiredError = class extends Schema.TaggedError()("InteractiveBrowserExpiredError", {
|
|
105
|
+
implementation: SandboxImplementation,
|
|
106
|
+
message: BoundedMessage
|
|
107
|
+
}) {};
|
|
108
|
+
var InteractiveBrowserActionError = class extends Schema.TaggedError()("InteractiveBrowserActionError", {
|
|
109
|
+
implementation: SandboxImplementation,
|
|
110
|
+
operation: Schema.Literals([
|
|
111
|
+
"navigate",
|
|
112
|
+
"read-text",
|
|
113
|
+
"fill",
|
|
114
|
+
"click",
|
|
115
|
+
"screenshot",
|
|
116
|
+
"scroll",
|
|
117
|
+
"close"
|
|
118
|
+
]),
|
|
119
|
+
message: BoundedMessage,
|
|
120
|
+
cause: Schema.optionalKey(Schema.Defect())
|
|
121
|
+
}) {};
|
|
122
|
+
var InteractiveBrowserProtocolError = class extends Schema.TaggedError()("InteractiveBrowserProtocolError", {
|
|
123
|
+
implementation: SandboxImplementation,
|
|
124
|
+
message: BoundedMessage,
|
|
125
|
+
cause: Schema.optionalKey(Schema.Defect())
|
|
126
|
+
}) {};
|
|
127
|
+
var InteractiveBrowserLimitError = class extends Schema.TaggedError()("InteractiveBrowserLimitError", {
|
|
128
|
+
implementation: SandboxImplementation,
|
|
129
|
+
limit: Schema.Literals([
|
|
130
|
+
"actions",
|
|
131
|
+
"elapsed",
|
|
132
|
+
"returned-bytes"
|
|
133
|
+
]),
|
|
134
|
+
maximum: PositiveInt,
|
|
135
|
+
observed: Schema.Natural,
|
|
136
|
+
message: BoundedMessage
|
|
137
|
+
}) {};
|
|
138
|
+
var InteractiveBrowserUnsupportedError = class extends Schema.TaggedError()("InteractiveBrowserUnsupportedError", {
|
|
139
|
+
implementation: SandboxImplementation,
|
|
140
|
+
feature: Schema.Literals([
|
|
141
|
+
"navigation",
|
|
142
|
+
"read-text",
|
|
143
|
+
"fill",
|
|
144
|
+
"click",
|
|
145
|
+
"screenshot",
|
|
146
|
+
"scroll",
|
|
147
|
+
"policy"
|
|
148
|
+
]),
|
|
149
|
+
message: BoundedMessage
|
|
150
|
+
}) {};
|
|
151
|
+
const InteractiveBrowserError = Schema.Union([
|
|
152
|
+
InteractiveBrowserPolicyDeniedError,
|
|
153
|
+
InteractiveBrowserBusyError,
|
|
154
|
+
InteractiveBrowserCapacityError,
|
|
155
|
+
InteractiveBrowserExpiredError,
|
|
156
|
+
InteractiveBrowserActionError,
|
|
157
|
+
InteractiveBrowserProtocolError,
|
|
158
|
+
InteractiveBrowserLimitError,
|
|
159
|
+
InteractiveBrowserUnsupportedError
|
|
160
|
+
]);
|
|
161
|
+
var InteractiveBrowser = class extends Context.Service()("@effect-agent/sandbox/InteractiveBrowser") {};
|
|
162
|
+
//#endregion
|
|
163
|
+
export { BrowserActionResult, BrowserClickRequest, BrowserFillRequest, BrowserNavigateRequest, BrowserNavigationResult, BrowserReadTextRequest, BrowserScreenshotRequest, BrowserScrollRequest, BrowserTextResult, InteractiveBrowser, InteractiveBrowserActionError, InteractiveBrowserBusyError, InteractiveBrowserCapacityError, InteractiveBrowserError, InteractiveBrowserExpiredError, InteractiveBrowserHost, InteractiveBrowserLimitError, InteractiveBrowserNetworkPolicy, InteractiveBrowserPolicy, InteractiveBrowserPolicyDeniedError, InteractiveBrowserProtocolError, InteractiveBrowserTargetUrl, InteractiveBrowserUnsupportedError, InteractiveBrowser_exports as t };
|
|
164
|
+
|
|
165
|
+
//# sourceMappingURL=InteractiveBrowser.mjs.map
|