@relkit/langchain 0.0.0-stage → 0.7.11
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/LICENSE +21 -0
- package/README.md +48 -2
- package/dist/client-contract-metadata.d.ts +31 -0
- package/dist/client-contract-metadata.d.ts.map +1 -0
- package/dist/client-contract-metadata.js +129 -0
- package/dist/client-contract-metadata.js.map +1 -0
- package/dist/client-contract-metadata.types.d.ts +59 -0
- package/dist/client-contract-metadata.types.d.ts.map +1 -0
- package/dist/client-contract-metadata.types.js +3 -0
- package/dist/client-contract-metadata.types.js.map +1 -0
- package/dist/client-contract-schema.d.ts +66 -0
- package/dist/client-contract-schema.d.ts.map +1 -0
- package/dist/client-contract-schema.js +153 -0
- package/dist/client-contract-schema.js.map +1 -0
- package/dist/continuation-validation.d.ts +9 -0
- package/dist/continuation-validation.d.ts.map +1 -0
- package/dist/continuation-validation.js +9 -0
- package/dist/continuation-validation.js.map +1 -0
- package/dist/deepagent-bucket-backend.d.ts +33 -0
- package/dist/deepagent-bucket-backend.d.ts.map +1 -0
- package/dist/deepagent-bucket-backend.js +47 -0
- package/dist/deepagent-bucket-backend.js.map +1 -0
- package/dist/deepagent-bucket-backend.types.d.ts +6 -0
- package/dist/deepagent-bucket-backend.types.d.ts.map +1 -0
- package/dist/deepagent-bucket-backend.types.js +2 -0
- package/dist/deepagent-bucket-backend.types.js.map +1 -0
- package/dist/deepagent-bucket-client.types.d.ts +25 -0
- package/dist/deepagent-bucket-client.types.d.ts.map +1 -0
- package/dist/deepagent-bucket-client.types.js +3 -0
- package/dist/deepagent-bucket-client.types.js.map +1 -0
- package/dist/deepagent-bucket-delete.d.ts +28 -0
- package/dist/deepagent-bucket-delete.d.ts.map +1 -0
- package/dist/deepagent-bucket-delete.js +64 -0
- package/dist/deepagent-bucket-delete.js.map +1 -0
- package/dist/deepagent-bucket-error.d.ts +17 -0
- package/dist/deepagent-bucket-error.d.ts.map +1 -0
- package/dist/deepagent-bucket-error.js +17 -0
- package/dist/deepagent-bucket-error.js.map +1 -0
- package/dist/deepagent-bucket-file-data.d.ts +40 -0
- package/dist/deepagent-bucket-file-data.d.ts.map +1 -0
- package/dist/deepagent-bucket-file-data.js +115 -0
- package/dist/deepagent-bucket-file-data.js.map +1 -0
- package/dist/deepagent-bucket-file-index.d.ts +34 -0
- package/dist/deepagent-bucket-file-index.d.ts.map +1 -0
- package/dist/deepagent-bucket-file-index.js +82 -0
- package/dist/deepagent-bucket-file-index.js.map +1 -0
- package/dist/deepagent-bucket-files.d.ts +5 -0
- package/dist/deepagent-bucket-files.d.ts.map +1 -0
- package/dist/deepagent-bucket-files.js +4 -0
- package/dist/deepagent-bucket-files.js.map +1 -0
- package/dist/deepagent-bucket-files.types.d.ts +8 -0
- package/dist/deepagent-bucket-files.types.d.ts.map +1 -0
- package/dist/deepagent-bucket-files.types.js +3 -0
- package/dist/deepagent-bucket-files.types.js.map +1 -0
- package/dist/deepagent-bucket-format.d.ts +59 -0
- package/dist/deepagent-bucket-format.d.ts.map +1 -0
- package/dist/deepagent-bucket-format.js +72 -0
- package/dist/deepagent-bucket-format.js.map +1 -0
- package/dist/deepagent-bucket-glob.d.ts +26 -0
- package/dist/deepagent-bucket-glob.d.ts.map +1 -0
- package/dist/deepagent-bucket-glob.js +66 -0
- package/dist/deepagent-bucket-glob.js.map +1 -0
- package/dist/deepagent-bucket-grep.d.ts +32 -0
- package/dist/deepagent-bucket-grep.d.ts.map +1 -0
- package/dist/deepagent-bucket-grep.js +73 -0
- package/dist/deepagent-bucket-grep.js.map +1 -0
- package/dist/deepagent-bucket-path.d.ts +67 -0
- package/dist/deepagent-bucket-path.d.ts.map +1 -0
- package/dist/deepagent-bucket-path.js +121 -0
- package/dist/deepagent-bucket-path.js.map +1 -0
- package/dist/deepagent-bucket-read.d.ts +65 -0
- package/dist/deepagent-bucket-read.d.ts.map +1 -0
- package/dist/deepagent-bucket-read.js +77 -0
- package/dist/deepagent-bucket-read.js.map +1 -0
- package/dist/deepagent-bucket-scope.d.ts +43 -0
- package/dist/deepagent-bucket-scope.d.ts.map +1 -0
- package/dist/deepagent-bucket-scope.js +40 -0
- package/dist/deepagent-bucket-scope.js.map +1 -0
- package/dist/deepagent-bucket-search.d.ts +22 -0
- package/dist/deepagent-bucket-search.d.ts.map +1 -0
- package/dist/deepagent-bucket-search.js +60 -0
- package/dist/deepagent-bucket-search.js.map +1 -0
- package/dist/deepagent-bucket-service.d.ts +17 -0
- package/dist/deepagent-bucket-service.d.ts.map +1 -0
- package/dist/deepagent-bucket-service.js +16 -0
- package/dist/deepagent-bucket-service.js.map +1 -0
- package/dist/deepagent-bucket-transfer.d.ts +52 -0
- package/dist/deepagent-bucket-transfer.d.ts.map +1 -0
- package/dist/deepagent-bucket-transfer.js +73 -0
- package/dist/deepagent-bucket-transfer.js.map +1 -0
- package/dist/deepagent-bucket-write.d.ts +55 -0
- package/dist/deepagent-bucket-write.d.ts.map +1 -0
- package/dist/deepagent-bucket-write.js +88 -0
- package/dist/deepagent-bucket-write.js.map +1 -0
- package/dist/define-agent-build.d.ts +12 -0
- package/dist/define-agent-build.d.ts.map +1 -0
- package/dist/define-agent-build.js +60 -0
- package/dist/define-agent-build.js.map +1 -0
- package/dist/define-agent-deep.d.ts +30 -0
- package/dist/define-agent-deep.d.ts.map +1 -0
- package/dist/define-agent-deep.js +125 -0
- package/dist/define-agent-deep.js.map +1 -0
- package/dist/define-agent-deep.types.d.ts +23 -0
- package/dist/define-agent-deep.types.d.ts.map +1 -0
- package/dist/define-agent-deep.types.js +3 -0
- package/dist/define-agent-deep.types.js.map +1 -0
- package/dist/define-agent-native-middleware.d.ts +34 -0
- package/dist/define-agent-native-middleware.d.ts.map +1 -0
- package/dist/define-agent-native-middleware.js +83 -0
- package/dist/define-agent-native-middleware.js.map +1 -0
- package/dist/define-agent-native-model.d.ts +16 -0
- package/dist/define-agent-native-model.d.ts.map +1 -0
- package/dist/define-agent-native-model.js +23 -0
- package/dist/define-agent-native-model.js.map +1 -0
- package/dist/define-agent-native-tools.d.ts +30 -0
- package/dist/define-agent-native-tools.d.ts.map +1 -0
- package/dist/define-agent-native-tools.js +72 -0
- package/dist/define-agent-native-tools.js.map +1 -0
- package/dist/define-agent-native.d.ts +6 -0
- package/dist/define-agent-native.d.ts.map +1 -0
- package/dist/define-agent-native.js +5 -0
- package/dist/define-agent-native.js.map +1 -0
- package/dist/define-agent-native.types.d.ts +36 -0
- package/dist/define-agent-native.types.d.ts.map +1 -0
- package/dist/define-agent-native.types.js +3 -0
- package/dist/define-agent-native.types.js.map +1 -0
- package/dist/define-agent-validation.d.ts +45 -0
- package/dist/define-agent-validation.d.ts.map +1 -0
- package/dist/define-agent-validation.js +92 -0
- package/dist/define-agent-validation.js.map +1 -0
- package/dist/define-agent.d.ts +41 -0
- package/dist/define-agent.d.ts.map +1 -0
- package/dist/define-agent.js +59 -0
- package/dist/define-agent.js.map +1 -0
- package/dist/define-agent.types.d.ts +54 -0
- package/dist/define-agent.types.d.ts.map +1 -0
- package/dist/define-agent.types.js +3 -0
- package/dist/define-agent.types.js.map +1 -0
- package/dist/define-graph-build.d.ts +12 -0
- package/dist/define-graph-build.d.ts.map +1 -0
- package/dist/define-graph-build.js +86 -0
- package/dist/define-graph-build.js.map +1 -0
- package/dist/define-graph-error.d.ts +17 -0
- package/dist/define-graph-error.d.ts.map +1 -0
- package/dist/define-graph-error.js +17 -0
- package/dist/define-graph-error.js.map +1 -0
- package/dist/define-graph-node.d.ts +42 -0
- package/dist/define-graph-node.d.ts.map +1 -0
- package/dist/define-graph-node.js +97 -0
- package/dist/define-graph-node.js.map +1 -0
- package/dist/define-graph-node.types.d.ts +38 -0
- package/dist/define-graph-node.types.d.ts.map +1 -0
- package/dist/define-graph-node.types.js +3 -0
- package/dist/define-graph-node.types.js.map +1 -0
- package/dist/define-graph.d.ts +44 -0
- package/dist/define-graph.d.ts.map +1 -0
- package/dist/define-graph.js +72 -0
- package/dist/define-graph.js.map +1 -0
- package/dist/define-graph.types.d.ts +69 -0
- package/dist/define-graph.types.d.ts.map +1 -0
- package/dist/define-graph.types.js +3 -0
- package/dist/define-graph.types.js.map +1 -0
- package/dist/define-persistence-guards.d.ts +32 -0
- package/dist/define-persistence-guards.d.ts.map +1 -0
- package/dist/define-persistence-guards.js +55 -0
- package/dist/define-persistence-guards.js.map +1 -0
- package/dist/define-persistence.d.ts +33 -0
- package/dist/define-persistence.d.ts.map +1 -0
- package/dist/define-persistence.js +112 -0
- package/dist/define-persistence.js.map +1 -0
- package/dist/define-persistence.types.d.ts +30 -0
- package/dist/define-persistence.types.d.ts.map +1 -0
- package/dist/define-persistence.types.js +3 -0
- package/dist/define-persistence.types.js.map +1 -0
- package/dist/graph-compile-error.d.ts +17 -0
- package/dist/graph-compile-error.d.ts.map +1 -0
- package/dist/graph-compile-error.js +17 -0
- package/dist/graph-compile-error.js.map +1 -0
- package/dist/graph-compile.d.ts +32 -0
- package/dist/graph-compile.d.ts.map +1 -0
- package/dist/graph-compile.js +94 -0
- package/dist/graph-compile.js.map +1 -0
- package/dist/graph-continuation-error.d.ts +17 -0
- package/dist/graph-continuation-error.d.ts.map +1 -0
- package/dist/graph-continuation-error.js +17 -0
- package/dist/graph-continuation-error.js.map +1 -0
- package/dist/graph-continuation-validation.d.ts +22 -0
- package/dist/graph-continuation-validation.d.ts.map +1 -0
- package/dist/graph-continuation-validation.js +67 -0
- package/dist/graph-continuation-validation.js.map +1 -0
- package/dist/graph-continuation-waiting.d.ts +23 -0
- package/dist/graph-continuation-waiting.d.ts.map +1 -0
- package/dist/graph-continuation-waiting.js +53 -0
- package/dist/graph-continuation-waiting.js.map +1 -0
- package/dist/graph-continuation.d.ts +43 -0
- package/dist/graph-continuation.d.ts.map +1 -0
- package/dist/graph-continuation.js +82 -0
- package/dist/graph-continuation.js.map +1 -0
- package/dist/graph-continuation.types.d.ts +11 -0
- package/dist/graph-continuation.types.d.ts.map +1 -0
- package/dist/graph-continuation.types.js +3 -0
- package/dist/graph-continuation.types.js.map +1 -0
- package/dist/graph-definition.d.ts +36 -0
- package/dist/graph-definition.d.ts.map +1 -0
- package/dist/graph-definition.js +90 -0
- package/dist/graph-definition.js.map +1 -0
- package/dist/graph-edge-destinations.d.ts +42 -0
- package/dist/graph-edge-destinations.d.ts.map +1 -0
- package/dist/graph-edge-destinations.js +100 -0
- package/dist/graph-edge-destinations.js.map +1 -0
- package/dist/graph-edge-mutations.d.ts +19 -0
- package/dist/graph-edge-mutations.d.ts.map +1 -0
- package/dist/graph-edge-mutations.js +62 -0
- package/dist/graph-edge-mutations.js.map +1 -0
- package/dist/graph-edge-mutations.types.d.ts +9 -0
- package/dist/graph-edge-mutations.types.d.ts.map +1 -0
- package/dist/graph-edge-mutations.types.js +2 -0
- package/dist/graph-edge-mutations.types.js.map +1 -0
- package/dist/graph-edges.d.ts +24 -0
- package/dist/graph-edges.d.ts.map +1 -0
- package/dist/graph-edges.js +37 -0
- package/dist/graph-edges.js.map +1 -0
- package/dist/graph-edges.types.d.ts +47 -0
- package/dist/graph-edges.types.d.ts.map +1 -0
- package/dist/graph-edges.types.js +3 -0
- package/dist/graph-edges.types.js.map +1 -0
- package/dist/graph-execution-symbol.d.ts +3 -0
- package/dist/graph-execution-symbol.d.ts.map +1 -0
- package/dist/graph-execution-symbol.js +3 -0
- package/dist/graph-execution-symbol.js.map +1 -0
- package/dist/graph-interruption.d.ts +84 -0
- package/dist/graph-interruption.d.ts.map +1 -0
- package/dist/graph-interruption.js +119 -0
- package/dist/graph-interruption.js.map +1 -0
- package/dist/graph-interruption.types.d.ts +16 -0
- package/dist/graph-interruption.types.d.ts.map +1 -0
- package/dist/graph-interruption.types.js +3 -0
- package/dist/graph-interruption.types.js.map +1 -0
- package/dist/graph-node-schema-validation.d.ts +9 -0
- package/dist/graph-node-schema-validation.d.ts.map +1 -0
- package/dist/graph-node-schema-validation.js +16 -0
- package/dist/graph-node-schema-validation.js.map +1 -0
- package/dist/graph-node-symbol.d.ts +3 -0
- package/dist/graph-node-symbol.d.ts.map +1 -0
- package/dist/graph-node-symbol.js +3 -0
- package/dist/graph-node-symbol.js.map +1 -0
- package/dist/graph-node-validation-error.d.ts +17 -0
- package/dist/graph-node-validation-error.d.ts.map +1 -0
- package/dist/graph-node-validation-error.js +17 -0
- package/dist/graph-node-validation-error.js.map +1 -0
- package/dist/graph-node-validation-value.d.ts +64 -0
- package/dist/graph-node-validation-value.d.ts.map +1 -0
- package/dist/graph-node-validation-value.js +117 -0
- package/dist/graph-node-validation-value.js.map +1 -0
- package/dist/graph-node-validation.d.ts +65 -0
- package/dist/graph-node-validation.d.ts.map +1 -0
- package/dist/graph-node-validation.js +113 -0
- package/dist/graph-node-validation.js.map +1 -0
- package/dist/graph-persistence-release.d.ts +16 -0
- package/dist/graph-persistence-release.d.ts.map +1 -0
- package/dist/graph-persistence-release.js +43 -0
- package/dist/graph-persistence-release.js.map +1 -0
- package/dist/graph-persistence.d.ts +39 -0
- package/dist/graph-persistence.d.ts.map +1 -0
- package/dist/graph-persistence.js +111 -0
- package/dist/graph-persistence.js.map +1 -0
- package/dist/graph-persistence.types.d.ts +21 -0
- package/dist/graph-persistence.types.d.ts.map +1 -0
- package/dist/graph-persistence.types.js +3 -0
- package/dist/graph-persistence.types.js.map +1 -0
- package/dist/graph-runtime-error.d.ts +17 -0
- package/dist/graph-runtime-error.d.ts.map +1 -0
- package/dist/graph-runtime-error.js +17 -0
- package/dist/graph-runtime-error.js.map +1 -0
- package/dist/graph-runtime-execution.d.ts +28 -0
- package/dist/graph-runtime-execution.d.ts.map +1 -0
- package/dist/graph-runtime-execution.js +69 -0
- package/dist/graph-runtime-execution.js.map +1 -0
- package/dist/graph-runtime-identity.d.ts +15 -0
- package/dist/graph-runtime-identity.d.ts.map +1 -0
- package/dist/graph-runtime-identity.js +14 -0
- package/dist/graph-runtime-identity.js.map +1 -0
- package/dist/graph-runtime-identity.types.d.ts +5 -0
- package/dist/graph-runtime-identity.types.d.ts.map +1 -0
- package/dist/graph-runtime-identity.types.js +2 -0
- package/dist/graph-runtime-identity.types.js.map +1 -0
- package/dist/graph-runtime-stream-state.d.ts +8 -0
- package/dist/graph-runtime-stream-state.d.ts.map +1 -0
- package/dist/graph-runtime-stream-state.js +67 -0
- package/dist/graph-runtime-stream-state.js.map +1 -0
- package/dist/graph-runtime-stream.d.ts +16 -0
- package/dist/graph-runtime-stream.d.ts.map +1 -0
- package/dist/graph-runtime-stream.js +49 -0
- package/dist/graph-runtime-stream.js.map +1 -0
- package/dist/graph-runtime-stream.types.d.ts +13 -0
- package/dist/graph-runtime-stream.types.d.ts.map +1 -0
- package/dist/graph-runtime-stream.types.js +2 -0
- package/dist/graph-runtime-stream.types.js.map +1 -0
- package/dist/graph-runtime.d.ts +21 -0
- package/dist/graph-runtime.d.ts.map +1 -0
- package/dist/graph-runtime.js +74 -0
- package/dist/graph-runtime.js.map +1 -0
- package/dist/graph-runtime.types.d.ts +8 -0
- package/dist/graph-runtime.types.d.ts.map +1 -0
- package/dist/graph-runtime.types.js +3 -0
- package/dist/graph-runtime.types.js.map +1 -0
- package/dist/graph-state-schema.d.ts +35 -0
- package/dist/graph-state-schema.d.ts.map +1 -0
- package/dist/graph-state-schema.js +65 -0
- package/dist/graph-state-schema.js.map +1 -0
- package/dist/graph-subgraph-symbol.d.ts +5 -0
- package/dist/graph-subgraph-symbol.d.ts.map +1 -0
- package/dist/graph-subgraph-symbol.js +5 -0
- package/dist/graph-subgraph-symbol.js.map +1 -0
- package/dist/graph-subgraph.d.ts +46 -0
- package/dist/graph-subgraph.d.ts.map +1 -0
- package/dist/graph-subgraph.js +82 -0
- package/dist/graph-subgraph.js.map +1 -0
- package/dist/graph-subgraph.types.d.ts +20 -0
- package/dist/graph-subgraph.types.d.ts.map +1 -0
- package/dist/graph-subgraph.types.js +3 -0
- package/dist/graph-subgraph.types.js.map +1 -0
- package/dist/graph-workflow-error.d.ts +17 -0
- package/dist/graph-workflow-error.d.ts.map +1 -0
- package/dist/graph-workflow-error.js +17 -0
- package/dist/graph-workflow-error.js.map +1 -0
- package/dist/graph-workflow.d.ts +37 -0
- package/dist/graph-workflow.d.ts.map +1 -0
- package/dist/graph-workflow.js +86 -0
- package/dist/graph-workflow.js.map +1 -0
- package/dist/graph-workflow.types.d.ts +41 -0
- package/dist/graph-workflow.types.d.ts.map +1 -0
- package/dist/graph-workflow.types.js +3 -0
- package/dist/graph-workflow.types.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -0
- package/dist/native-agent-interruption-error.d.ts +17 -0
- package/dist/native-agent-interruption-error.d.ts.map +1 -0
- package/dist/native-agent-interruption-error.js +17 -0
- package/dist/native-agent-interruption-error.js.map +1 -0
- package/dist/native-agent-interruption-schema.d.ts +66 -0
- package/dist/native-agent-interruption-schema.d.ts.map +1 -0
- package/dist/native-agent-interruption-schema.js +141 -0
- package/dist/native-agent-interruption-schema.js.map +1 -0
- package/dist/native-agent-interruption-schema.types.d.ts +16 -0
- package/dist/native-agent-interruption-schema.types.d.ts.map +1 -0
- package/dist/native-agent-interruption-schema.types.js +3 -0
- package/dist/native-agent-interruption-schema.types.js.map +1 -0
- package/dist/native-agent-interruption-validation.d.ts +19 -0
- package/dist/native-agent-interruption-validation.d.ts.map +1 -0
- package/dist/native-agent-interruption-validation.js +107 -0
- package/dist/native-agent-interruption-validation.js.map +1 -0
- package/dist/native-agent-interruption.d.ts +55 -0
- package/dist/native-agent-interruption.d.ts.map +1 -0
- package/dist/native-agent-interruption.js +85 -0
- package/dist/native-agent-interruption.js.map +1 -0
- package/dist/native-agent-interruption.types.d.ts +5 -0
- package/dist/native-agent-interruption.types.d.ts.map +1 -0
- package/dist/native-agent-interruption.types.js +2 -0
- package/dist/native-agent-interruption.types.js.map +1 -0
- package/dist/persistence-error.d.ts +17 -0
- package/dist/persistence-error.d.ts.map +1 -0
- package/dist/persistence-error.js +17 -0
- package/dist/persistence-error.js.map +1 -0
- package/dist/persistence-symbol.d.ts +3 -0
- package/dist/persistence-symbol.d.ts.map +1 -0
- package/dist/persistence-symbol.js +3 -0
- package/dist/persistence-symbol.js.map +1 -0
- package/dist/runtime-approval-decision.d.ts +13 -0
- package/dist/runtime-approval-decision.d.ts.map +1 -0
- package/dist/runtime-approval-decision.js +21 -0
- package/dist/runtime-approval-decision.js.map +1 -0
- package/dist/runtime-dependencies.d.ts +7 -0
- package/dist/runtime-dependencies.d.ts.map +1 -0
- package/dist/runtime-dependencies.js +10 -0
- package/dist/runtime-dependencies.js.map +1 -0
- package/dist/runtime-effect-error.d.ts +18 -0
- package/dist/runtime-effect-error.d.ts.map +1 -0
- package/dist/runtime-effect-error.js +19 -0
- package/dist/runtime-effect-error.js.map +1 -0
- package/dist/runtime-errors.d.ts +11 -0
- package/dist/runtime-errors.d.ts.map +1 -0
- package/dist/runtime-errors.js +15 -0
- package/dist/runtime-errors.js.map +1 -0
- package/dist/runtime-failure-diagnostics.d.ts +10 -0
- package/dist/runtime-failure-diagnostics.d.ts.map +1 -0
- package/dist/runtime-failure-diagnostics.js +61 -0
- package/dist/runtime-failure-diagnostics.js.map +1 -0
- package/dist/runtime-integration.d.ts +10 -0
- package/dist/runtime-integration.d.ts.map +1 -0
- package/dist/runtime-integration.js +9 -0
- package/dist/runtime-integration.js.map +1 -0
- package/dist/runtime-invoke.d.ts +27 -0
- package/dist/runtime-invoke.d.ts.map +1 -0
- package/dist/runtime-invoke.js +77 -0
- package/dist/runtime-invoke.js.map +1 -0
- package/dist/runtime-loop-context.types.d.ts +22 -0
- package/dist/runtime-loop-context.types.d.ts.map +1 -0
- package/dist/runtime-loop-context.types.js +2 -0
- package/dist/runtime-loop-context.types.js.map +1 -0
- package/dist/runtime-loop-execution.d.ts +4 -0
- package/dist/runtime-loop-execution.d.ts.map +1 -0
- package/dist/runtime-loop-execution.js +61 -0
- package/dist/runtime-loop-execution.js.map +1 -0
- package/dist/runtime-loop-state.d.ts +13 -0
- package/dist/runtime-loop-state.d.ts.map +1 -0
- package/dist/runtime-loop-state.js +57 -0
- package/dist/runtime-loop-state.js.map +1 -0
- package/dist/runtime-loop-telemetry.d.ts +5 -0
- package/dist/runtime-loop-telemetry.d.ts.map +1 -0
- package/dist/runtime-loop-telemetry.js +62 -0
- package/dist/runtime-loop-telemetry.js.map +1 -0
- package/dist/runtime-loop-values.d.ts +52 -0
- package/dist/runtime-loop-values.d.ts.map +1 -0
- package/dist/runtime-loop-values.js +85 -0
- package/dist/runtime-loop-values.js.map +1 -0
- package/dist/runtime-loop.d.ts +36 -0
- package/dist/runtime-loop.d.ts.map +1 -0
- package/dist/runtime-loop.js +45 -0
- package/dist/runtime-loop.js.map +1 -0
- package/dist/runtime-loop.types.d.ts +8 -0
- package/dist/runtime-loop.types.d.ts.map +1 -0
- package/dist/runtime-loop.types.js +3 -0
- package/dist/runtime-loop.types.js.map +1 -0
- package/dist/runtime-model-error.d.ts +17 -0
- package/dist/runtime-model-error.d.ts.map +1 -0
- package/dist/runtime-model-error.js +17 -0
- package/dist/runtime-model-error.js.map +1 -0
- package/dist/runtime-model.d.ts +31 -0
- package/dist/runtime-model.d.ts.map +1 -0
- package/dist/runtime-model.js +126 -0
- package/dist/runtime-model.js.map +1 -0
- package/dist/runtime-model.types.d.ts +22 -0
- package/dist/runtime-model.types.d.ts.map +1 -0
- package/dist/runtime-model.types.js +3 -0
- package/dist/runtime-model.types.js.map +1 -0
- package/dist/runtime-native-agent-build.d.ts +40 -0
- package/dist/runtime-native-agent-build.d.ts.map +1 -0
- package/dist/runtime-native-agent-build.js +77 -0
- package/dist/runtime-native-agent-build.js.map +1 -0
- package/dist/runtime-native-agent.d.ts +30 -0
- package/dist/runtime-native-agent.d.ts.map +1 -0
- package/dist/runtime-native-agent.js +84 -0
- package/dist/runtime-native-agent.js.map +1 -0
- package/dist/runtime-native-agent.types.d.ts +21 -0
- package/dist/runtime-native-agent.types.d.ts.map +1 -0
- package/dist/runtime-native-agent.types.js +3 -0
- package/dist/runtime-native-agent.types.js.map +1 -0
- package/dist/runtime-native-event-tools.d.ts +28 -0
- package/dist/runtime-native-event-tools.d.ts.map +1 -0
- package/dist/runtime-native-event-tools.js +88 -0
- package/dist/runtime-native-event-tools.js.map +1 -0
- package/dist/runtime-native-events-helpers.d.ts +30 -0
- package/dist/runtime-native-events-helpers.d.ts.map +1 -0
- package/dist/runtime-native-events-helpers.js +74 -0
- package/dist/runtime-native-events-helpers.js.map +1 -0
- package/dist/runtime-native-events.d.ts +45 -0
- package/dist/runtime-native-events.d.ts.map +1 -0
- package/dist/runtime-native-events.js +89 -0
- package/dist/runtime-native-events.js.map +1 -0
- package/dist/runtime-native-limits.d.ts +18 -0
- package/dist/runtime-native-limits.d.ts.map +1 -0
- package/dist/runtime-native-limits.js +59 -0
- package/dist/runtime-native-limits.js.map +1 -0
- package/dist/runtime-native-messages.d.ts +24 -0
- package/dist/runtime-native-messages.d.ts.map +1 -0
- package/dist/runtime-native-messages.js +83 -0
- package/dist/runtime-native-messages.js.map +1 -0
- package/dist/runtime-native-messages.types.d.ts +7 -0
- package/dist/runtime-native-messages.types.d.ts.map +1 -0
- package/dist/runtime-native-messages.types.js +2 -0
- package/dist/runtime-native-messages.types.js.map +1 -0
- package/dist/runtime-native-public-state.d.ts +22 -0
- package/dist/runtime-native-public-state.d.ts.map +1 -0
- package/dist/runtime-native-public-state.js +44 -0
- package/dist/runtime-native-public-state.js.map +1 -0
- package/dist/runtime-native-public-tools.d.ts +15 -0
- package/dist/runtime-native-public-tools.d.ts.map +1 -0
- package/dist/runtime-native-public-tools.js +39 -0
- package/dist/runtime-native-public-tools.js.map +1 -0
- package/dist/runtime-native-public.d.ts +28 -0
- package/dist/runtime-native-public.d.ts.map +1 -0
- package/dist/runtime-native-public.js +165 -0
- package/dist/runtime-native-public.js.map +1 -0
- package/dist/runtime-native-public.types.d.ts +5 -0
- package/dist/runtime-native-public.types.d.ts.map +1 -0
- package/dist/runtime-native-public.types.js +3 -0
- package/dist/runtime-native-public.types.js.map +1 -0
- package/dist/runtime-native-response-format.d.ts +15 -0
- package/dist/runtime-native-response-format.d.ts.map +1 -0
- package/dist/runtime-native-response-format.js +46 -0
- package/dist/runtime-native-response-format.js.map +1 -0
- package/dist/runtime-native-subagents.d.ts +47 -0
- package/dist/runtime-native-subagents.d.ts.map +1 -0
- package/dist/runtime-native-subagents.js +50 -0
- package/dist/runtime-native-subagents.js.map +1 -0
- package/dist/runtime-native-subagents.types.d.ts +7 -0
- package/dist/runtime-native-subagents.types.d.ts.map +1 -0
- package/dist/runtime-native-subagents.types.js +2 -0
- package/dist/runtime-native-subagents.types.js.map +1 -0
- package/dist/runtime-native-support.d.ts +67 -0
- package/dist/runtime-native-support.d.ts.map +1 -0
- package/dist/runtime-native-support.js +112 -0
- package/dist/runtime-native-support.js.map +1 -0
- package/dist/runtime-native-support.types.d.ts +9 -0
- package/dist/runtime-native-support.types.d.ts.map +1 -0
- package/dist/runtime-native-support.types.js +2 -0
- package/dist/runtime-native-support.types.js.map +1 -0
- package/dist/runtime-native-tool-build.d.ts +12 -0
- package/dist/runtime-native-tool-build.d.ts.map +1 -0
- package/dist/runtime-native-tool-build.js +81 -0
- package/dist/runtime-native-tool-build.js.map +1 -0
- package/dist/runtime-native-tool-build.types.d.ts +14 -0
- package/dist/runtime-native-tool-build.types.d.ts.map +1 -0
- package/dist/runtime-native-tool-build.types.js +2 -0
- package/dist/runtime-native-tool-build.types.js.map +1 -0
- package/dist/runtime-native-tools-identity.d.ts +15 -0
- package/dist/runtime-native-tools-identity.d.ts.map +1 -0
- package/dist/runtime-native-tools-identity.js +14 -0
- package/dist/runtime-native-tools-identity.js.map +1 -0
- package/dist/runtime-native-tools.d.ts +29 -0
- package/dist/runtime-native-tools.d.ts.map +1 -0
- package/dist/runtime-native-tools.js +65 -0
- package/dist/runtime-native-tools.js.map +1 -0
- package/dist/runtime-native-tools.types.d.ts +21 -0
- package/dist/runtime-native-tools.types.d.ts.map +1 -0
- package/dist/runtime-native-tools.types.js +3 -0
- package/dist/runtime-native-tools.types.js.map +1 -0
- package/dist/runtime-service.d.ts +15 -0
- package/dist/runtime-service.d.ts.map +1 -0
- package/dist/runtime-service.js +20 -0
- package/dist/runtime-service.js.map +1 -0
- package/dist/runtime-service.types.d.ts +12 -0
- package/dist/runtime-service.types.d.ts.map +1 -0
- package/dist/runtime-service.types.js +3 -0
- package/dist/runtime-service.types.js.map +1 -0
- package/dist/runtime-state-schemas.d.ts +19 -0
- package/dist/runtime-state-schemas.d.ts.map +1 -0
- package/dist/runtime-state-schemas.js +58 -0
- package/dist/runtime-state-schemas.js.map +1 -0
- package/dist/runtime-strict-response-schema.d.ts +9 -0
- package/dist/runtime-strict-response-schema.d.ts.map +1 -0
- package/dist/runtime-strict-response-schema.js +67 -0
- package/dist/runtime-strict-response-schema.js.map +1 -0
- package/dist/runtime-tool-adapter.d.ts +34 -0
- package/dist/runtime-tool-adapter.d.ts.map +1 -0
- package/dist/runtime-tool-adapter.js +66 -0
- package/dist/runtime-tool-adapter.js.map +1 -0
- package/dist/runtime-tool-dispatcher.d.ts +32 -0
- package/dist/runtime-tool-dispatcher.d.ts.map +1 -0
- package/dist/runtime-tool-dispatcher.js +67 -0
- package/dist/runtime-tool-dispatcher.js.map +1 -0
- package/dist/runtime-tool-events.d.ts +49 -0
- package/dist/runtime-tool-events.d.ts.map +1 -0
- package/dist/runtime-tool-events.js +106 -0
- package/dist/runtime-tool-events.js.map +1 -0
- package/dist/runtime-tool-events.types.d.ts +8 -0
- package/dist/runtime-tool-events.types.d.ts.map +1 -0
- package/dist/runtime-tool-events.types.js +3 -0
- package/dist/runtime-tool-events.types.js.map +1 -0
- package/dist/runtime-tool-invocation.d.ts +19 -0
- package/dist/runtime-tool-invocation.d.ts.map +1 -0
- package/dist/runtime-tool-invocation.js +74 -0
- package/dist/runtime-tool-invocation.js.map +1 -0
- package/dist/runtime-tool-lookup.d.ts +56 -0
- package/dist/runtime-tool-lookup.d.ts.map +1 -0
- package/dist/runtime-tool-lookup.js +71 -0
- package/dist/runtime-tool-lookup.js.map +1 -0
- package/dist/runtime-tools.d.ts +35 -0
- package/dist/runtime-tools.d.ts.map +1 -0
- package/dist/runtime-tools.js +78 -0
- package/dist/runtime-tools.js.map +1 -0
- package/dist/runtime-tools.types.d.ts +7 -0
- package/dist/runtime-tools.types.d.ts.map +1 -0
- package/dist/runtime-tools.types.js +2 -0
- package/dist/runtime-tools.types.js.map +1 -0
- package/dist/runtime-utils.d.ts +56 -0
- package/dist/runtime-utils.d.ts.map +1 -0
- package/dist/runtime-utils.js +106 -0
- package/dist/runtime-utils.js.map +1 -0
- package/dist/runtime.d.ts +47 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +90 -0
- package/dist/runtime.js.map +1 -0
- package/dist/runtime.types.d.ts +77 -0
- package/dist/runtime.types.d.ts.map +1 -0
- package/dist/runtime.types.js +3 -0
- package/dist/runtime.types.js.map +1 -0
- package/dist/signal-deadline.d.ts +12 -0
- package/dist/signal-deadline.d.ts.map +1 -0
- package/dist/signal-deadline.js +21 -0
- package/dist/signal-deadline.js.map +1 -0
- package/dist/signal.d.ts +64 -0
- package/dist/signal.d.ts.map +1 -0
- package/dist/signal.js +136 -0
- package/dist/signal.js.map +1 -0
- package/dist/signal.types.d.ts +35 -0
- package/dist/signal.types.d.ts.map +1 -0
- package/dist/signal.types.js +3 -0
- package/dist/signal.types.js.map +1 -0
- package/dist/testing/agent-approvals.d.ts +8 -0
- package/dist/testing/agent-approvals.d.ts.map +1 -0
- package/dist/testing/agent-approvals.js +98 -0
- package/dist/testing/agent-approvals.js.map +1 -0
- package/dist/testing/agent-approvals.types.d.ts +24 -0
- package/dist/testing/agent-approvals.types.d.ts.map +1 -0
- package/dist/testing/agent-approvals.types.js +3 -0
- package/dist/testing/agent-approvals.types.js.map +1 -0
- package/dist/testing/agent-harness.types.d.ts +25 -0
- package/dist/testing/agent-harness.types.d.ts.map +1 -0
- package/dist/testing/agent-harness.types.js +3 -0
- package/dist/testing/agent-harness.types.js.map +1 -0
- package/dist/testing/agent-state-invocation.d.ts +4 -0
- package/dist/testing/agent-state-invocation.d.ts.map +1 -0
- package/dist/testing/agent-state-invocation.js +41 -0
- package/dist/testing/agent-state-invocation.js.map +1 -0
- package/dist/testing/agent-state-lifecycle.d.ts +6 -0
- package/dist/testing/agent-state-lifecycle.d.ts.map +1 -0
- package/dist/testing/agent-state-lifecycle.js +36 -0
- package/dist/testing/agent-state-lifecycle.js.map +1 -0
- package/dist/testing/agent-state-setup.d.ts +18 -0
- package/dist/testing/agent-state-setup.d.ts.map +1 -0
- package/dist/testing/agent-state-setup.js +52 -0
- package/dist/testing/agent-state-setup.js.map +1 -0
- package/dist/testing/agent-state.d.ts +12 -0
- package/dist/testing/agent-state.d.ts.map +1 -0
- package/dist/testing/agent-state.js +40 -0
- package/dist/testing/agent-state.js.map +1 -0
- package/dist/testing/agents-model-native.d.ts +37 -0
- package/dist/testing/agents-model-native.d.ts.map +1 -0
- package/dist/testing/agents-model-native.js +111 -0
- package/dist/testing/agents-model-native.js.map +1 -0
- package/dist/testing/agents-model-operations.d.ts +28 -0
- package/dist/testing/agents-model-operations.d.ts.map +1 -0
- package/dist/testing/agents-model-operations.js +91 -0
- package/dist/testing/agents-model-operations.js.map +1 -0
- package/dist/testing/agents-model.d.ts +25 -0
- package/dist/testing/agents-model.d.ts.map +1 -0
- package/dist/testing/agents-model.js +72 -0
- package/dist/testing/agents-model.js.map +1 -0
- package/dist/testing/agents-model.types.d.ts +24 -0
- package/dist/testing/agents-model.types.d.ts.map +1 -0
- package/dist/testing/agents-model.types.js +3 -0
- package/dist/testing/agents-model.types.js.map +1 -0
- package/dist/testing/agents-types.d.ts +3 -0
- package/dist/testing/agents-types.d.ts.map +1 -0
- package/dist/testing/agents-types.js +2 -0
- package/dist/testing/agents-types.js.map +1 -0
- package/dist/testing/agents-utils.d.ts +26 -0
- package/dist/testing/agents-utils.d.ts.map +1 -0
- package/dist/testing/agents-utils.js +79 -0
- package/dist/testing/agents-utils.js.map +1 -0
- package/dist/testing/agents.d.ts +26 -0
- package/dist/testing/agents.d.ts.map +1 -0
- package/dist/testing/agents.js +64 -0
- package/dist/testing/agents.js.map +1 -0
- package/dist/testing/agents.types.d.ts +113 -0
- package/dist/testing/agents.types.d.ts.map +1 -0
- package/dist/testing/agents.types.js +3 -0
- package/dist/testing/agents.types.js.map +1 -0
- package/package.json +191 -4
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Defines failures for native agent interrupt handling so malformed interruption data stays distinct from normal approval suspension. */
|
|
2
|
+
import { Schema } from "effect";
|
|
3
|
+
/** Tagged native agent continuation or state failure. */
|
|
4
|
+
export class NativeAgentInterruptionFailure extends Schema.TaggedError()("NativeAgentInterruptionFailure", { message: Schema.String, cause: Schema.Unknown }) {
|
|
5
|
+
}
|
|
6
|
+
/** Wraps a native continuation failure for Effect callers.
|
|
7
|
+
* @param cause - Invalid reply or native state provider failure.
|
|
8
|
+
* @returns A tagged native agent interruption failure.
|
|
9
|
+
* @example nativeAgentInterruptionFailure(new TypeError("invalid reply"));
|
|
10
|
+
*/
|
|
11
|
+
export function nativeAgentInterruptionFailure(cause) {
|
|
12
|
+
return new NativeAgentInterruptionFailure({
|
|
13
|
+
message: cause instanceof Error ? cause.message : String(cause),
|
|
14
|
+
cause,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=native-agent-interruption-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-error.js","sourceRoot":"","sources":["../src/native-agent-interruption-error.ts"],"names":[],"mappings":"AAAA,0IAA0I;AAE1I,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,yDAAyD;AACzD,MAAM,OAAO,8BAA+B,SAAQ,MAAM,CAAC,WAAW,EAAkC,CACtG,gCAAgC,EAChC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAClD;CAAG;AAEJ;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAAC,KAAc;IAC3D,OAAO,IAAI,8BAA8B,CAAC;QACxC,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/D,KAAK;KACN,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/** Declares executable schemas for native interruption payloads before they cross the durable RELKIT continuation boundary. */
|
|
2
|
+
import type { JsonValue } from "@relkit/contracts";
|
|
3
|
+
import { Effect } from "effect";
|
|
4
|
+
import type { DecisionType, HitlRequest, ReviewConfig } from "./native-agent-interruption-schema.types.js";
|
|
5
|
+
export type * from "./native-agent-interruption-schema.types.js";
|
|
6
|
+
/** Constructs the exact response schema for pending reviews.
|
|
7
|
+
* @param configs - Review policies in action order.
|
|
8
|
+
* @returns An Effect with a JSON schema and no typed failure.
|
|
9
|
+
* @example Effect.runSync(hitlResponseSchemaEffect(configs));
|
|
10
|
+
*/
|
|
11
|
+
export declare const hitlResponseSchemaEffect: (configs: readonly ReviewConfig[]) => Effect.Effect<JsonValue, never, never>;
|
|
12
|
+
/** Constructs the response schema for existing synchronous callers.
|
|
13
|
+
* @param configs - Review policies in action order.
|
|
14
|
+
* @returns A JSON schema.
|
|
15
|
+
* @example const schema = hitlResponseSchema(configs);
|
|
16
|
+
*/
|
|
17
|
+
export declare function hitlResponseSchema(configs: readonly ReviewConfig[]): JsonValue;
|
|
18
|
+
/** Validates the native human review request shape.
|
|
19
|
+
* @param value - Candidate request.
|
|
20
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
21
|
+
* @example Effect.runSync(isHitlRequestEffect(value));
|
|
22
|
+
*/
|
|
23
|
+
export declare const isHitlRequestEffect: (value: unknown) => Effect.Effect<boolean, never, never>;
|
|
24
|
+
/** Checks a native human review request for existing synchronous callers.
|
|
25
|
+
* @param value - Candidate request.
|
|
26
|
+
* @returns Whether the value is a review request.
|
|
27
|
+
* @example if (isHitlRequest(value)) handle(value);
|
|
28
|
+
*/
|
|
29
|
+
export declare function isHitlRequest(value: unknown): value is HitlRequest;
|
|
30
|
+
/** Projects a review request to public action fields.
|
|
31
|
+
* @param value - Validated review request.
|
|
32
|
+
* @returns An Effect with the public request and no typed failure.
|
|
33
|
+
* @example Effect.runSync(publicHitlRequestEffect(request));
|
|
34
|
+
*/
|
|
35
|
+
export declare const publicHitlRequestEffect: (value: HitlRequest) => Effect.Effect<HitlRequest, never, never>;
|
|
36
|
+
/** Projects a review request for existing synchronous callers.
|
|
37
|
+
* @param value - Validated review request.
|
|
38
|
+
* @returns Public action and review fields.
|
|
39
|
+
* @example const request = publicHitlRequest(nativeRequest);
|
|
40
|
+
*/
|
|
41
|
+
export declare function publicHitlRequest(value: HitlRequest): HitlRequest;
|
|
42
|
+
/** Checks one native human decision label.
|
|
43
|
+
* @param value - Candidate label.
|
|
44
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
45
|
+
* @example Effect.runSync(isDecisionEffect("approve"));
|
|
46
|
+
*/
|
|
47
|
+
export declare const isDecisionEffect: (value: unknown) => Effect.Effect<boolean, never, never>;
|
|
48
|
+
/** Checks a decision label for existing synchronous callers.
|
|
49
|
+
* @param value - Candidate label.
|
|
50
|
+
* @returns Whether the value is an allowed decision kind.
|
|
51
|
+
* @example if (isDecision(value)) useDecision(value);
|
|
52
|
+
*/
|
|
53
|
+
export declare function isDecision(value: unknown): value is DecisionType;
|
|
54
|
+
/** Checks a non-null, non-array record.
|
|
55
|
+
* @param value - Candidate record.
|
|
56
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
57
|
+
* @example Effect.runSync(isRecordEffect({ name: "tool" }));
|
|
58
|
+
*/
|
|
59
|
+
export declare const isRecordEffect: (value: unknown) => Effect.Effect<boolean, never, never>;
|
|
60
|
+
/** Checks a record for existing synchronous callers.
|
|
61
|
+
* @param value - Candidate record.
|
|
62
|
+
* @returns Whether the value is a non-null object.
|
|
63
|
+
* @example if (isRecord(value)) read(value.name);
|
|
64
|
+
*/
|
|
65
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
66
|
+
//# sourceMappingURL=native-agent-interruption-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-schema.d.ts","sourceRoot":"","sources":["../src/native-agent-interruption-schema.ts"],"names":[],"mappings":"AAAA,+HAA+H;AAE/H,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACb,MAAM,6CAA6C,CAAC;AAErD,mBAAmB,6CAA6C,CAAC;AAEjE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,8EAqBpC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAE9E;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,0DAmB/B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,kEAenC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAEjE;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,0DAG5B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEhE;AAMD;;;;GAIG;AACH,eAAO,MAAM,cAAc,0DAG1B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/** Declares executable schemas for native interruption payloads before they cross the durable RELKIT continuation boundary. */
|
|
2
|
+
import { Effect } from "effect";
|
|
3
|
+
import { observeAgent } from "@relkit/agents/internal/agent-telemetry";
|
|
4
|
+
/** Constructs the exact response schema for pending reviews.
|
|
5
|
+
* @param configs - Review policies in action order.
|
|
6
|
+
* @returns An Effect with a JSON schema and no typed failure.
|
|
7
|
+
* @example Effect.runSync(hitlResponseSchemaEffect(configs));
|
|
8
|
+
*/
|
|
9
|
+
export const hitlResponseSchemaEffect = Effect.fn("Agents.nativeHitl.responseSchema")((configs) => Effect.sync(() => ({
|
|
10
|
+
type: "object",
|
|
11
|
+
properties: {
|
|
12
|
+
decisions: {
|
|
13
|
+
type: "array",
|
|
14
|
+
prefixItems: configs.map(({ actionName, allowedDecisions, argsSchema }) => ({
|
|
15
|
+
oneOf: allowedDecisions.map((decision) => decisionSchema(decision, actionName, argsSchema)),
|
|
16
|
+
})),
|
|
17
|
+
items: false,
|
|
18
|
+
minItems: configs.length,
|
|
19
|
+
maxItems: configs.length,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
required: ["decisions"],
|
|
23
|
+
additionalProperties: false,
|
|
24
|
+
})), (effect) => observeAgent("native-hitl.response-schema", effect));
|
|
25
|
+
/** Constructs the response schema for existing synchronous callers.
|
|
26
|
+
* @param configs - Review policies in action order.
|
|
27
|
+
* @returns A JSON schema.
|
|
28
|
+
* @example const schema = hitlResponseSchema(configs);
|
|
29
|
+
*/
|
|
30
|
+
export function hitlResponseSchema(configs) {
|
|
31
|
+
return Effect.runSync(hitlResponseSchemaEffect(configs));
|
|
32
|
+
}
|
|
33
|
+
/** Validates the native human review request shape.
|
|
34
|
+
* @param value - Candidate request.
|
|
35
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
36
|
+
* @example Effect.runSync(isHitlRequestEffect(value));
|
|
37
|
+
*/
|
|
38
|
+
export const isHitlRequestEffect = Effect.fn("Agents.nativeHitl.isRequest")((value) => Effect.sync(() => recordShape(value) &&
|
|
39
|
+
Array.isArray(value.actionRequests) &&
|
|
40
|
+
value.actionRequests.every(recordShape) &&
|
|
41
|
+
Array.isArray(value.reviewConfigs) &&
|
|
42
|
+
value.actionRequests.length === value.reviewConfigs.length &&
|
|
43
|
+
value.reviewConfigs.every((config) => recordShape(config) &&
|
|
44
|
+
typeof config.actionName === "string" &&
|
|
45
|
+
Array.isArray(config.allowedDecisions) &&
|
|
46
|
+
config.allowedDecisions.length > 0 &&
|
|
47
|
+
config.allowedDecisions.every(decisionShape))), (effect) => observeAgent("native-hitl.is-request", effect));
|
|
48
|
+
/** Checks a native human review request for existing synchronous callers.
|
|
49
|
+
* @param value - Candidate request.
|
|
50
|
+
* @returns Whether the value is a review request.
|
|
51
|
+
* @example if (isHitlRequest(value)) handle(value);
|
|
52
|
+
*/
|
|
53
|
+
export function isHitlRequest(value) {
|
|
54
|
+
return Effect.runSync(isHitlRequestEffect(value));
|
|
55
|
+
}
|
|
56
|
+
/** Projects a review request to public action fields.
|
|
57
|
+
* @param value - Validated review request.
|
|
58
|
+
* @returns An Effect with the public request and no typed failure.
|
|
59
|
+
* @example Effect.runSync(publicHitlRequestEffect(request));
|
|
60
|
+
*/
|
|
61
|
+
export const publicHitlRequestEffect = Effect.fn("Agents.nativeHitl.publicRequest")((value) => Effect.sync(() => ({
|
|
62
|
+
actionRequests: value.actionRequests.map((action) => ({
|
|
63
|
+
name: action.name,
|
|
64
|
+
args: action.args,
|
|
65
|
+
...(typeof action.description === "string" ? { description: action.description } : {}),
|
|
66
|
+
})),
|
|
67
|
+
reviewConfigs: value.reviewConfigs.map((config) => ({
|
|
68
|
+
actionName: config.actionName,
|
|
69
|
+
allowedDecisions: [...config.allowedDecisions],
|
|
70
|
+
...(config.argsSchema === undefined ? {} : { argsSchema: config.argsSchema }),
|
|
71
|
+
})),
|
|
72
|
+
})), (effect) => observeAgent("native-hitl.public-request", effect));
|
|
73
|
+
/** Projects a review request for existing synchronous callers.
|
|
74
|
+
* @param value - Validated review request.
|
|
75
|
+
* @returns Public action and review fields.
|
|
76
|
+
* @example const request = publicHitlRequest(nativeRequest);
|
|
77
|
+
*/
|
|
78
|
+
export function publicHitlRequest(value) {
|
|
79
|
+
return Effect.runSync(publicHitlRequestEffect(value));
|
|
80
|
+
}
|
|
81
|
+
/** Checks one native human decision label.
|
|
82
|
+
* @param value - Candidate label.
|
|
83
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
84
|
+
* @example Effect.runSync(isDecisionEffect("approve"));
|
|
85
|
+
*/
|
|
86
|
+
export const isDecisionEffect = Effect.fn("Agents.nativeHitl.isDecision")((value) => Effect.sync(() => decisionShape(value)), (effect) => observeAgent("native-hitl.is-decision", effect));
|
|
87
|
+
/** Checks a decision label for existing synchronous callers.
|
|
88
|
+
* @param value - Candidate label.
|
|
89
|
+
* @returns Whether the value is an allowed decision kind.
|
|
90
|
+
* @example if (isDecision(value)) useDecision(value);
|
|
91
|
+
*/
|
|
92
|
+
export function isDecision(value) {
|
|
93
|
+
return Effect.runSync(isDecisionEffect(value));
|
|
94
|
+
}
|
|
95
|
+
function decisionShape(value) {
|
|
96
|
+
return value === "approve" || value === "edit" || value === "reject";
|
|
97
|
+
}
|
|
98
|
+
/** Checks a non-null, non-array record.
|
|
99
|
+
* @param value - Candidate record.
|
|
100
|
+
* @returns An Effect with a boolean and no typed failure.
|
|
101
|
+
* @example Effect.runSync(isRecordEffect({ name: "tool" }));
|
|
102
|
+
*/
|
|
103
|
+
export const isRecordEffect = Effect.fn("Agents.nativeHitl.isRecord")((value) => Effect.sync(() => recordShape(value)), (effect) => observeAgent("native-hitl.is-record", effect));
|
|
104
|
+
/** Checks a record for existing synchronous callers.
|
|
105
|
+
* @param value - Candidate record.
|
|
106
|
+
* @returns Whether the value is a non-null object.
|
|
107
|
+
* @example if (isRecord(value)) read(value.name);
|
|
108
|
+
*/
|
|
109
|
+
export function isRecord(value) {
|
|
110
|
+
return Effect.runSync(isRecordEffect(value));
|
|
111
|
+
}
|
|
112
|
+
function recordShape(value) {
|
|
113
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
114
|
+
}
|
|
115
|
+
function decisionSchema(type, actionName, argsSchema) {
|
|
116
|
+
const base = { type: "object", additionalProperties: false };
|
|
117
|
+
if (type === "approve") {
|
|
118
|
+
return { ...base, properties: { type: { const: type } }, required: ["type"] };
|
|
119
|
+
}
|
|
120
|
+
if (type === "reject") {
|
|
121
|
+
return {
|
|
122
|
+
...base,
|
|
123
|
+
properties: { type: { const: type }, message: { type: "string" } },
|
|
124
|
+
required: ["type"],
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
return {
|
|
128
|
+
...base,
|
|
129
|
+
properties: {
|
|
130
|
+
type: { const: type },
|
|
131
|
+
editedAction: {
|
|
132
|
+
type: "object",
|
|
133
|
+
properties: { name: { const: actionName }, args: argsSchema ?? { type: "object" } },
|
|
134
|
+
required: ["name", "args"],
|
|
135
|
+
additionalProperties: false,
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
required: ["type", "editedAction"],
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=native-agent-interruption-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-schema.js","sourceRoot":"","sources":["../src/native-agent-interruption-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Declares executable schemas for native interruption payloads before they cross the durable RELKIT continuation boundary. This companion preserves the native input and output types without starting runtime work. */
|
|
2
|
+
import type { JsonValue } from "@relkit/contracts";
|
|
3
|
+
/** Human review decision accepted by a native agent. */
|
|
4
|
+
export type DecisionType = "approve" | "edit" | "reject";
|
|
5
|
+
/** Review policy for one pending action. */
|
|
6
|
+
export interface ReviewConfig {
|
|
7
|
+
readonly actionName: string;
|
|
8
|
+
readonly allowedDecisions: readonly DecisionType[];
|
|
9
|
+
readonly argsSchema?: JsonValue;
|
|
10
|
+
}
|
|
11
|
+
/** Public set of actions awaiting human review. */
|
|
12
|
+
export interface HitlRequest {
|
|
13
|
+
readonly actionRequests: readonly Record<string, unknown>[];
|
|
14
|
+
readonly reviewConfigs: readonly ReviewConfig[];
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=native-agent-interruption-schema.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-schema.types.d.ts","sourceRoot":"","sources":["../src/native-agent-interruption-schema.types.ts"],"names":[],"mappings":"AAAA,yNAAyN;AAEzN,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,wDAAwD;AACxD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEzD,4CAA4C;AAC5C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,YAAY,EAAE,CAAC;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;CACjC;AAED,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAC5D,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;CACjD"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Declares executable schemas for native interruption payloads before they cross the durable RELKIT continuation boundary. This companion preserves the native input and output types without starting runtime work. */
|
|
2
|
+
export {};
|
|
3
|
+
//# sourceMappingURL=native-agent-interruption-schema.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-schema.types.js","sourceRoot":"","sources":["../src/native-agent-interruption-schema.types.ts"],"names":[],"mappings":"AAAA,yNAAyN"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Decodes native agent interruption data and rejects invalid continuation payloads before approval or resume processing. */
|
|
2
|
+
import type { GraphWaitingInterrupt } from "./graph-interruption.js";
|
|
3
|
+
import type { AgentWaitingRequest } from "@relkit/agents/internal/state.types";
|
|
4
|
+
/** Extracts public native interruptions from nested graph state.
|
|
5
|
+
* @param snapshot - Native graph state.
|
|
6
|
+
* @param path - Current nested graph path.
|
|
7
|
+
* @returns Public interruptions in task order.
|
|
8
|
+
* @example const requests = snapshotInterrupts(snapshot, []);
|
|
9
|
+
*/
|
|
10
|
+
export declare function snapshotInterrupts(snapshot: unknown, path: readonly string[]): GraphWaitingInterrupt[];
|
|
11
|
+
/** Validates one or more replies against pending native reviews.
|
|
12
|
+
* @param requests - Pending review requests.
|
|
13
|
+
* @param value - Candidate reply or ordered reply list.
|
|
14
|
+
* @returns Validated reply values.
|
|
15
|
+
* @throws TypeError for absent, mismatched, or invalid replies.
|
|
16
|
+
* @example const replies = validateNativeAgentResumeInputCore(requests, input);
|
|
17
|
+
*/
|
|
18
|
+
export declare function validateNativeAgentResumeInputCore(requests: readonly AgentWaitingRequest[], value: unknown): unknown;
|
|
19
|
+
//# sourceMappingURL=native-agent-interruption-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-validation.d.ts","sourceRoot":"","sources":["../src/native-agent-interruption-validation.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAG7H,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AASrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,OAAO,EACjB,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,qBAAqB,EAAE,CAsBzB;AAED;;;;;;GAMG;AACH,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,SAAS,mBAAmB,EAAE,EACxC,KAAK,EAAE,OAAO,GACb,OAAO,CAOT"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/** Decodes native agent interruption data and rejects invalid continuation payloads before approval or resume processing. */
|
|
2
|
+
import { validate } from "@cfworker/json-schema";
|
|
3
|
+
import { hitlResponseSchema, isDecision, isHitlRequest, isRecord, publicHitlRequest, } from "./native-agent-interruption-schema.js";
|
|
4
|
+
/** Extracts public native interruptions from nested graph state.
|
|
5
|
+
* @param snapshot - Native graph state.
|
|
6
|
+
* @param path - Current nested graph path.
|
|
7
|
+
* @returns Public interruptions in task order.
|
|
8
|
+
* @example const requests = snapshotInterrupts(snapshot, []);
|
|
9
|
+
*/
|
|
10
|
+
export function snapshotInterrupts(snapshot, path) {
|
|
11
|
+
if (!isRecord(snapshot) || !Array.isArray(snapshot.tasks))
|
|
12
|
+
return [];
|
|
13
|
+
return snapshot.tasks.flatMap((task) => {
|
|
14
|
+
if (!isRecord(task))
|
|
15
|
+
return [];
|
|
16
|
+
const name = typeof task.name === "string" ? task.name : "human-input";
|
|
17
|
+
if (isRecord(task.state) && Array.isArray(task.state.tasks)) {
|
|
18
|
+
return snapshotInterrupts(task.state, [...path, name]);
|
|
19
|
+
}
|
|
20
|
+
if (!Array.isArray(task.interrupts))
|
|
21
|
+
return [];
|
|
22
|
+
return task.interrupts.flatMap((entry) => {
|
|
23
|
+
if (!isRecord(entry) || !isHitlRequest(entry.value))
|
|
24
|
+
return [];
|
|
25
|
+
const value = publicHitlRequest(entry.value);
|
|
26
|
+
return [
|
|
27
|
+
{
|
|
28
|
+
...(typeof entry.id === "string" ? { id: entry.id } : {}),
|
|
29
|
+
node: [...path, name].join("/"),
|
|
30
|
+
value,
|
|
31
|
+
response: hitlResponseSchema(value.reviewConfigs),
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/** Validates one or more replies against pending native reviews.
|
|
38
|
+
* @param requests - Pending review requests.
|
|
39
|
+
* @param value - Candidate reply or ordered reply list.
|
|
40
|
+
* @returns Validated reply values.
|
|
41
|
+
* @throws TypeError for absent, mismatched, or invalid replies.
|
|
42
|
+
* @example const replies = validateNativeAgentResumeInputCore(requests, input);
|
|
43
|
+
*/
|
|
44
|
+
export function validateNativeAgentResumeInputCore(requests, value) {
|
|
45
|
+
if (requests.length === 0)
|
|
46
|
+
throw new TypeError("Agent has no waiting continuation");
|
|
47
|
+
if (requests.length === 1)
|
|
48
|
+
return validateReply(requests[0], value);
|
|
49
|
+
if (!Array.isArray(value) || value.length !== requests.length) {
|
|
50
|
+
throw new TypeError(`Agent continuation requires ${requests.length} replies`);
|
|
51
|
+
}
|
|
52
|
+
return requests.map((request, index) => validateReply(request, value[index]));
|
|
53
|
+
}
|
|
54
|
+
function validateReply(request, value) {
|
|
55
|
+
const requestValue = request.value;
|
|
56
|
+
if (!isHitlRequest(requestValue) || !isRecord(value) || !Array.isArray(value.decisions)) {
|
|
57
|
+
throw new TypeError("Agent continuation requires human decisions");
|
|
58
|
+
}
|
|
59
|
+
if (Object.keys(value).some((key) => key !== "decisions")) {
|
|
60
|
+
throw new TypeError("Agent continuation has unknown fields");
|
|
61
|
+
}
|
|
62
|
+
if (value.decisions.length !== requestValue.reviewConfigs.length) {
|
|
63
|
+
throw new TypeError("Agent continuation decision count is invalid");
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
decisions: value.decisions.map((decision, index) => validateDecision(decision, requestValue.reviewConfigs[index])),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function validateDecision(value, config) {
|
|
70
|
+
if (!isRecord(value) ||
|
|
71
|
+
!isDecision(value.type) ||
|
|
72
|
+
!config.allowedDecisions.includes(value.type)) {
|
|
73
|
+
throw new TypeError("Agent continuation decision is not allowed");
|
|
74
|
+
}
|
|
75
|
+
if (value.type === "approve") {
|
|
76
|
+
exactKeys(value, ["type"]);
|
|
77
|
+
return { type: "approve" };
|
|
78
|
+
}
|
|
79
|
+
if (value.type === "reject") {
|
|
80
|
+
exactKeys(value, ["type", "message"]);
|
|
81
|
+
if (value.message !== undefined && typeof value.message !== "string") {
|
|
82
|
+
throw new TypeError("Agent rejection message must be text");
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
type: "reject",
|
|
86
|
+
...(value.message === undefined ? {} : { message: value.message }),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
exactKeys(value, ["type", "editedAction"]);
|
|
90
|
+
if (!isRecord(value.editedAction) ||
|
|
91
|
+
value.editedAction.name !== config.actionName ||
|
|
92
|
+
!isRecord(value.editedAction.args)) {
|
|
93
|
+
throw new TypeError("Agent edited action is invalid");
|
|
94
|
+
}
|
|
95
|
+
exactKeys(value.editedAction, ["name", "args"]);
|
|
96
|
+
if (config.argsSchema !== undefined &&
|
|
97
|
+
!validate(value.editedAction.args, config.argsSchema).valid) {
|
|
98
|
+
throw new TypeError("Agent edited action arguments are invalid");
|
|
99
|
+
}
|
|
100
|
+
return { type: "edit", editedAction: value.editedAction };
|
|
101
|
+
}
|
|
102
|
+
function exactKeys(value, allowed) {
|
|
103
|
+
if (Object.keys(value).some((key) => !allowed.includes(key))) {
|
|
104
|
+
throw new TypeError("Agent continuation has unknown fields");
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=native-agent-interruption-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption-validation.js","sourceRoot":"","sources":["../src/native-agent-interruption-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** Projects native agent interruption state into RELKIT approval and continuation records without losing native interrupt identity. */
|
|
2
|
+
import { Command } from "@langchain/langgraph";
|
|
3
|
+
import { Effect } from "effect";
|
|
4
|
+
import type { NativeAgent, NativeAgentConfig } from "./native-agent-interruption.types.js";
|
|
5
|
+
import type { AgentWaitingRequest } from "@relkit/agents/internal/state.types";
|
|
6
|
+
/** Reads native pending requests and constructs a resume command.
|
|
7
|
+
* @param agent - Native agent state provider.
|
|
8
|
+
* @param config - State lookup configuration.
|
|
9
|
+
* @param value - One reply or an ordered reply list.
|
|
10
|
+
* @returns An Effect with a native Command or NativeAgentInterruptionFailure.
|
|
11
|
+
* @example await Effect.runPromise(nativeAgentResumeCommandEffect(agent, config, reply));
|
|
12
|
+
*/
|
|
13
|
+
export declare const nativeAgentResumeCommandEffect: (agent: NativeAgent, config: import("@langchain/core/runnables").RunnableConfig<Record<string, any>>, value: unknown) => Effect.Effect<Command<{
|
|
14
|
+
[k: string]: unknown;
|
|
15
|
+
}, Record<string, unknown>, string>, import("./native-agent-interruption-error.js").NativeAgentInterruptionFailure, never>;
|
|
16
|
+
/** Builds a native resume command for existing Promise callers.
|
|
17
|
+
* @param agent - Native agent state provider.
|
|
18
|
+
* @param config - State lookup configuration.
|
|
19
|
+
* @param value - Candidate continuation reply.
|
|
20
|
+
* @returns A native resume command.
|
|
21
|
+
* @throws The original state or validation error.
|
|
22
|
+
* @example await nativeAgentResumeCommand(agent, config, reply);
|
|
23
|
+
*/
|
|
24
|
+
export declare function nativeAgentResumeCommand(agent: NativeAgent, config: NativeAgentConfig, value: unknown): Promise<Command>;
|
|
25
|
+
/** Reads and projects waiting native interruptions.
|
|
26
|
+
* @param agent - Native agent state provider.
|
|
27
|
+
* @param config - State lookup configuration.
|
|
28
|
+
* @returns An Effect with ordered waiting requests or NativeAgentInterruptionFailure.
|
|
29
|
+
* @example await Effect.runPromise(nativeAgentWaitingInterruptsEffect(agent, config));
|
|
30
|
+
*/
|
|
31
|
+
export declare const nativeAgentWaitingInterruptsEffect: (agent: NativeAgent, config: import("@langchain/core/runnables").RunnableConfig<Record<string, any>>) => Effect.Effect<import("./graph-interruption.types.js").GraphWaitingInterrupt[], import("./native-agent-interruption-error.js").NativeAgentInterruptionFailure, never>;
|
|
32
|
+
/** Reads waiting native interruptions for existing Promise callers.
|
|
33
|
+
* @param agent - Native agent state provider.
|
|
34
|
+
* @param config - State lookup configuration.
|
|
35
|
+
* @returns Ordered waiting requests.
|
|
36
|
+
* @throws The original native state provider error.
|
|
37
|
+
* @example await nativeAgentWaitingInterrupts(agent, config);
|
|
38
|
+
*/
|
|
39
|
+
export declare function nativeAgentWaitingInterrupts(agent: NativeAgent, config: NativeAgentConfig): Promise<readonly import("./graph-interruption.js").GraphWaitingInterrupt[]>;
|
|
40
|
+
/** Validates native continuation replies against pending requests.
|
|
41
|
+
* @param requests - Pending waiting requests.
|
|
42
|
+
* @param value - One reply or an ordered reply list.
|
|
43
|
+
* @returns An Effect with validated replies or NativeAgentInterruptionFailure.
|
|
44
|
+
* @example Effect.runSync(validateNativeAgentResumeInputEffect(requests, reply));
|
|
45
|
+
*/
|
|
46
|
+
export declare const validateNativeAgentResumeInputEffect: (requests: readonly AgentWaitingRequest[], value: unknown) => Effect.Effect<unknown, import("./native-agent-interruption-error.js").NativeAgentInterruptionFailure, never>;
|
|
47
|
+
/** Validates native continuation replies for existing synchronous callers.
|
|
48
|
+
* @param requests - Pending waiting requests.
|
|
49
|
+
* @param value - Candidate reply or ordered reply list.
|
|
50
|
+
* @returns Validated reply values.
|
|
51
|
+
* @throws The original invalid continuation error.
|
|
52
|
+
* @example const reply = validateNativeAgentResumeInput(requests, value);
|
|
53
|
+
*/
|
|
54
|
+
export declare function validateNativeAgentResumeInput(requests: readonly AgentWaitingRequest[], value: unknown): unknown;
|
|
55
|
+
//# sourceMappingURL=native-agent-interruption.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption.d.ts","sourceRoot":"","sources":["../src/native-agent-interruption.ts"],"names":[],"mappings":"AAAA,uIAAuI;AAEvI,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAK3F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B;;0HAoB1C,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED;;;;;GAKG;AACH,eAAO,MAAM,kCAAkC,+QAoB9C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,SAAS,OAAO,yBAAyB,EAAE,qBAAqB,EAAE,CAAC,CAM7E;AAED;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,4KAOhD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,SAAS,mBAAmB,EAAE,EACxC,KAAK,EAAE,OAAO,GACb,OAAO,CAMT"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/** Projects native agent interruption state into RELKIT approval and continuation records without losing native interrupt identity. */
|
|
2
|
+
import { Command } from "@langchain/langgraph";
|
|
3
|
+
import { Effect } from "effect";
|
|
4
|
+
import { observeAgent } from "@relkit/agents/internal/agent-telemetry";
|
|
5
|
+
import { nativeAgentInterruptionFailure } from "./native-agent-interruption-error.js";
|
|
6
|
+
import { snapshotInterrupts, validateNativeAgentResumeInputCore, } from "./native-agent-interruption-validation.js";
|
|
7
|
+
/** Reads native pending requests and constructs a resume command.
|
|
8
|
+
* @param agent - Native agent state provider.
|
|
9
|
+
* @param config - State lookup configuration.
|
|
10
|
+
* @param value - One reply or an ordered reply list.
|
|
11
|
+
* @returns An Effect with a native Command or NativeAgentInterruptionFailure.
|
|
12
|
+
* @example await Effect.runPromise(nativeAgentResumeCommandEffect(agent, config, reply));
|
|
13
|
+
*/
|
|
14
|
+
export const nativeAgentResumeCommandEffect = Effect.fn("Agents.nativeHitl.resumeCommand")(function* (agent, config, value) {
|
|
15
|
+
const requests = yield* nativeAgentWaitingInterruptsEffect(agent, config);
|
|
16
|
+
const reply = yield* validateNativeAgentResumeInputEffect(requests, value);
|
|
17
|
+
const replies = requests.length === 1 ? [reply] : reply;
|
|
18
|
+
return yield* Effect.try({
|
|
19
|
+
try: () => new Command({
|
|
20
|
+
resume: Object.fromEntries(requests.map((request, index) => {
|
|
21
|
+
if (request.id === undefined)
|
|
22
|
+
throw new TypeError("Agent interruption has no native ID");
|
|
23
|
+
return [request.id, replies[index]];
|
|
24
|
+
})),
|
|
25
|
+
}),
|
|
26
|
+
catch: nativeAgentInterruptionFailure,
|
|
27
|
+
});
|
|
28
|
+
}, (effect) => observeAgent("native-hitl.resume-command", effect));
|
|
29
|
+
/** Builds a native resume command for existing Promise callers.
|
|
30
|
+
* @param agent - Native agent state provider.
|
|
31
|
+
* @param config - State lookup configuration.
|
|
32
|
+
* @param value - Candidate continuation reply.
|
|
33
|
+
* @returns A native resume command.
|
|
34
|
+
* @throws The original state or validation error.
|
|
35
|
+
* @example await nativeAgentResumeCommand(agent, config, reply);
|
|
36
|
+
*/
|
|
37
|
+
export function nativeAgentResumeCommand(agent, config, value) {
|
|
38
|
+
return Effect.runPromise(nativeAgentResumeCommandEffect(agent, config, value).pipe(Effect.catchTag("NativeAgentInterruptionFailure", (failure) => Effect.fail(failure.cause))));
|
|
39
|
+
}
|
|
40
|
+
/** Reads and projects waiting native interruptions.
|
|
41
|
+
* @param agent - Native agent state provider.
|
|
42
|
+
* @param config - State lookup configuration.
|
|
43
|
+
* @returns An Effect with ordered waiting requests or NativeAgentInterruptionFailure.
|
|
44
|
+
* @example await Effect.runPromise(nativeAgentWaitingInterruptsEffect(agent, config));
|
|
45
|
+
*/
|
|
46
|
+
export const nativeAgentWaitingInterruptsEffect = Effect.fn("Agents.nativeHitl.waiting")((agent, config) => Effect.tryPromise({
|
|
47
|
+
try: async (effectSignal) => snapshotInterrupts(await agent.getState({
|
|
48
|
+
...config,
|
|
49
|
+
signal: config.signal === undefined
|
|
50
|
+
? effectSignal
|
|
51
|
+
: AbortSignal.any([config.signal, effectSignal]),
|
|
52
|
+
}, { subgraphs: true }), []),
|
|
53
|
+
catch: nativeAgentInterruptionFailure,
|
|
54
|
+
}), (effect) => observeAgent("native-hitl.waiting", effect));
|
|
55
|
+
/** Reads waiting native interruptions for existing Promise callers.
|
|
56
|
+
* @param agent - Native agent state provider.
|
|
57
|
+
* @param config - State lookup configuration.
|
|
58
|
+
* @returns Ordered waiting requests.
|
|
59
|
+
* @throws The original native state provider error.
|
|
60
|
+
* @example await nativeAgentWaitingInterrupts(agent, config);
|
|
61
|
+
*/
|
|
62
|
+
export function nativeAgentWaitingInterrupts(agent, config) {
|
|
63
|
+
return Effect.runPromise(nativeAgentWaitingInterruptsEffect(agent, config).pipe(Effect.catchTag("NativeAgentInterruptionFailure", (failure) => Effect.fail(failure.cause))));
|
|
64
|
+
}
|
|
65
|
+
/** Validates native continuation replies against pending requests.
|
|
66
|
+
* @param requests - Pending waiting requests.
|
|
67
|
+
* @param value - One reply or an ordered reply list.
|
|
68
|
+
* @returns An Effect with validated replies or NativeAgentInterruptionFailure.
|
|
69
|
+
* @example Effect.runSync(validateNativeAgentResumeInputEffect(requests, reply));
|
|
70
|
+
*/
|
|
71
|
+
export const validateNativeAgentResumeInputEffect = Effect.fn("Agents.nativeHitl.validateReply")((requests, value) => Effect.try({
|
|
72
|
+
try: () => validateNativeAgentResumeInputCore(requests, value),
|
|
73
|
+
catch: nativeAgentInterruptionFailure,
|
|
74
|
+
}), (effect) => observeAgent("native-hitl.validate-reply", effect));
|
|
75
|
+
/** Validates native continuation replies for existing synchronous callers.
|
|
76
|
+
* @param requests - Pending waiting requests.
|
|
77
|
+
* @param value - Candidate reply or ordered reply list.
|
|
78
|
+
* @returns Validated reply values.
|
|
79
|
+
* @throws The original invalid continuation error.
|
|
80
|
+
* @example const reply = validateNativeAgentResumeInput(requests, value);
|
|
81
|
+
*/
|
|
82
|
+
export function validateNativeAgentResumeInput(requests, value) {
|
|
83
|
+
return Effect.runSync(validateNativeAgentResumeInputEffect(requests, value).pipe(Effect.catchTag("NativeAgentInterruptionFailure", (failure) => Effect.fail(failure.cause))));
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=native-agent-interruption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption.js","sourceRoot":"","sources":["../src/native-agent-interruption.ts"],"names":[],"mappings":"AAAA,uIAAuI;AAEvI,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF,OAAO,EACL,kBAAkB,EAClB,kCAAkC,GACnC,MAAM,2CAA2C,CAAC;AAGnD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,EAAE,CAAC,iCAAiC,CAAC,CACxF,QAAQ,CAAC,EAAE,KAAkB,EAAE,MAAyB,EAAE,KAAc;IACtE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kCAAkC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,oCAAoC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAA4B,CAAC;IAChF,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACvB,GAAG,EAAE,GAAG,EAAE,CACR,IAAI,OAAO,CAAC;YACV,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC9B,IAAI,OAAO,CAAC,EAAE,KAAK,SAAS;oBAC1B,MAAM,IAAI,SAAS,CAAC,qCAAqC,CAAC,CAAC;gBAC7D,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YACtC,CAAC,CAAC,CACH;SACF,CAAC;QACJ,KAAK,EAAE,8BAA8B;KACtC,CAAC,CAAC;AACL,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAC/D,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAkB,EAClB,MAAyB,EACzB,KAAc;IAEd,OAAO,MAAM,CAAC,UAAU,CACtB,8BAA8B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,CACvD,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC3F,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAC,EAAE,CAAC,2BAA2B,CAAC,CACtF,CAAC,KAAkB,EAAE,MAAyB,EAAE,EAAE,CAChD,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,CAC1B,kBAAkB,CAChB,MAAM,KAAK,CAAC,QAAQ,CAClB;QACE,GAAG,MAAM;QACT,MAAM,EACJ,MAAM,CAAC,MAAM,KAAK,SAAS;YACzB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;KACrD,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,EACD,EAAE,CACH;IACH,KAAK,EAAE,8BAA8B;CACtC,CAAC,EACJ,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CACxD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAkB,EAClB,MAAyB;IAEzB,OAAO,MAAM,CAAC,UAAU,CACtB,kCAAkC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CACpD,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC3F,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,MAAM,CAAC,EAAE,CAAC,iCAAiC,CAAC,CAC9F,CAAC,QAAwC,EAAE,KAAc,EAAE,EAAE,CAC3D,MAAM,CAAC,GAAG,CAAC;IACT,GAAG,EAAE,GAAG,EAAE,CAAC,kCAAkC,CAAC,QAAQ,EAAE,KAAK,CAAC;IAC9D,KAAK,EAAE,8BAA8B;CACtC,CAAC,EACJ,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAC/D,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAC5C,QAAwC,EACxC,KAAc;IAEd,OAAO,MAAM,CAAC,OAAO,CACnB,oCAAoC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CACxD,MAAM,CAAC,QAAQ,CAAC,gCAAgC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC3F,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Native LangGraph agent state access used by continuation operations. */
|
|
2
|
+
export type NativeAgent = Pick<ReturnType<typeof import("langchain").createAgent>, "getState">;
|
|
3
|
+
/** State lookup configuration accepted by a native agent. */
|
|
4
|
+
export type NativeAgentConfig = Parameters<NativeAgent["getState"]>[0];
|
|
5
|
+
//# sourceMappingURL=native-agent-interruption.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption.types.d.ts","sourceRoot":"","sources":["../src/native-agent-interruption.types.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,WAAW,EAAE,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;AAE/F,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-agent-interruption.types.js","sourceRoot":"","sources":["../src/native-agent-interruption.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Defines typed failures for native persistence acquisition and release, retaining the selected resource and underlying cause. */
|
|
2
|
+
import { Schema } from "effect";
|
|
3
|
+
declare const AgentPersistenceFailure_base: Schema.Class<AgentPersistenceFailure, Schema.TaggedStruct<"AgentPersistenceFailure", {
|
|
4
|
+
readonly message: Schema.String;
|
|
5
|
+
readonly cause: Schema.Unknown;
|
|
6
|
+
}>, import("effect/Cause").YieldableError>;
|
|
7
|
+
/** A typed persistence acquire, validation, or release failure. */
|
|
8
|
+
export declare class AgentPersistenceFailure extends AgentPersistenceFailure_base {
|
|
9
|
+
}
|
|
10
|
+
/** Retains the original failure for compatibility callers.
|
|
11
|
+
* @param cause - Persistence provider or protocol error.
|
|
12
|
+
* @returns A tagged persistence failure.
|
|
13
|
+
* @example agentPersistenceFailure(new Error("store unavailable"));
|
|
14
|
+
*/
|
|
15
|
+
export declare function agentPersistenceFailure(cause: unknown): AgentPersistenceFailure;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=persistence-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"persistence-error.d.ts","sourceRoot":"","sources":["../src/persistence-error.ts"],"names":[],"mappings":"AAAA,mIAAmI;AAEnI,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;;;;;AAEhC,mEAAmE;AACnE,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;AAEJ;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,uBAAuB,CAK/E"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Defines typed failures for native persistence acquisition and release, retaining the selected resource and underlying cause. */
|
|
2
|
+
import { Schema } from "effect";
|
|
3
|
+
/** A typed persistence acquire, validation, or release failure. */
|
|
4
|
+
export class AgentPersistenceFailure extends Schema.TaggedError()("AgentPersistenceFailure", { message: Schema.String, cause: Schema.Unknown }) {
|
|
5
|
+
}
|
|
6
|
+
/** Retains the original failure for compatibility callers.
|
|
7
|
+
* @param cause - Persistence provider or protocol error.
|
|
8
|
+
* @returns A tagged persistence failure.
|
|
9
|
+
* @example agentPersistenceFailure(new Error("store unavailable"));
|
|
10
|
+
*/
|
|
11
|
+
export function agentPersistenceFailure(cause) {
|
|
12
|
+
return new AgentPersistenceFailure({
|
|
13
|
+
message: cause instanceof Error ? cause.message : String(cause),
|
|
14
|
+
cause,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=persistence-error.js.map
|