@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,52 @@
|
|
|
1
|
+
/** Acquires one native test model and its trace, approval and cancellation state. */
|
|
2
|
+
import { Effect, Ref } from "effect";
|
|
3
|
+
import { SpanRuntime, spanSnapshot } from "@relkit/invocation";
|
|
4
|
+
import { createIdSource, createFailures } from "@relkit/testing/internal/jobs-utils";
|
|
5
|
+
import { createAgentApprovalState } from "./agent-approvals.js";
|
|
6
|
+
import { createTestModel } from "./agents-model.js";
|
|
7
|
+
import { captureHooks, createTrace } from "./agents-utils.js";
|
|
8
|
+
export const acquireAgentHarness = Effect.fn("Testing.agent.acquire")(function* (options) {
|
|
9
|
+
const failures = options.failures ?? createFailures();
|
|
10
|
+
const model = yield* acquireTestModel(options);
|
|
11
|
+
const state = Ref.makeUnsafe({
|
|
12
|
+
closed: false,
|
|
13
|
+
invocationSequence: 0,
|
|
14
|
+
spans: [],
|
|
15
|
+
edges: [],
|
|
16
|
+
active: new Set(),
|
|
17
|
+
pending: new Set(),
|
|
18
|
+
});
|
|
19
|
+
const { spans, edges } = Ref.getUnsafe(state);
|
|
20
|
+
const approvals = createAgentApprovalState(options.approval);
|
|
21
|
+
const trace = createTrace(spans, edges);
|
|
22
|
+
const hooks = captureHooks(options.hooks, edges);
|
|
23
|
+
const spanRuntime = createSpanRuntime(spans);
|
|
24
|
+
const engine = {
|
|
25
|
+
invoke: async (request) => {
|
|
26
|
+
const result = await options.engine.invoke(request);
|
|
27
|
+
failures.check("model.after-tool-call");
|
|
28
|
+
return result;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
return { failures, model, state, approvals, trace, hooks, spanRuntime, engine };
|
|
32
|
+
});
|
|
33
|
+
function acquireTestModel(options) {
|
|
34
|
+
return Effect.acquireRelease(Effect.sync(() => createTestModel({
|
|
35
|
+
...(options.model ?? {}),
|
|
36
|
+
...(options.logger === undefined || options.model?.logger !== undefined
|
|
37
|
+
? {}
|
|
38
|
+
: { logger: options.logger }),
|
|
39
|
+
...(options.script === undefined ? {} : { script: options.script }),
|
|
40
|
+
})), (model) => Effect.promise(() => model.close()));
|
|
41
|
+
}
|
|
42
|
+
function createSpanRuntime(spans) {
|
|
43
|
+
return new SpanRuntime({
|
|
44
|
+
ids: createIdSource(),
|
|
45
|
+
observer: (event) => {
|
|
46
|
+
if (event.span.name !== "relkit.testing.agent" && event.type !== "updated") {
|
|
47
|
+
spans.push(spanSnapshot(event));
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=agent-state-setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-state-setup.js","sourceRoot":"","sources":["../../src/testing/agent-state-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Builds an isolated native test facade whose work is joined before release. */
|
|
2
|
+
import { Effect } from "effect";
|
|
3
|
+
import type { TestAgent, TestAgentDescriptor, TestAgentOptions } from "./agents-types.js";
|
|
4
|
+
/** Creates a network-free test owner retaining descriptor schema inference.
|
|
5
|
+
* @param options - Native dependencies, scripts and capture policy.
|
|
6
|
+
* @returns The owned facade and cancellation-aware Effect release boundary.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createAgentState<Agent extends TestAgentDescriptor>(options: TestAgentOptions<Agent>): Effect.Effect<{
|
|
9
|
+
value: TestAgent<Agent>;
|
|
10
|
+
close: Effect.Effect<void, unknown, never>;
|
|
11
|
+
}, never, import("effect/Scope").Scope>;
|
|
12
|
+
//# sourceMappingURL=agent-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-state.d.ts","sourceRoot":"","sources":["../../src/testing/agent-state.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,MAAM,EAAO,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAK1F;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,mBAAmB,EAChE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC;;;wCA4BjC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/** Builds an isolated native test facade whose work is joined before release. */
|
|
2
|
+
import { Effect, Ref } from "effect";
|
|
3
|
+
import { runOwnedContext } from "@relkit/testing/internal/work-ownership";
|
|
4
|
+
import { acquireAgentHarness } from "./agent-state-setup.js";
|
|
5
|
+
import { invokeAgentHarness } from "./agent-state-invocation.js";
|
|
6
|
+
import { agentHarnessClose, resetAgentHarness } from "./agent-state-lifecycle.js";
|
|
7
|
+
/** Creates a network-free test owner retaining descriptor schema inference.
|
|
8
|
+
* @param options - Native dependencies, scripts and capture policy.
|
|
9
|
+
* @returns The owned facade and cancellation-aware Effect release boundary.
|
|
10
|
+
*/
|
|
11
|
+
export function createAgentState(options) {
|
|
12
|
+
return Effect.gen(function* () {
|
|
13
|
+
const context = yield* Effect.context();
|
|
14
|
+
const harness = yield* acquireAgentHarness(options);
|
|
15
|
+
const { model, failures, approvals, trace, state } = harness;
|
|
16
|
+
const invoke = (input, invocation) => {
|
|
17
|
+
const current = Ref.getUnsafe(state);
|
|
18
|
+
if (current.closed)
|
|
19
|
+
return Promise.reject(new Error("Test agent is closed"));
|
|
20
|
+
const pending = invokeAgentHarness(options, harness, input, invocation);
|
|
21
|
+
current.pending.add(pending);
|
|
22
|
+
void pending.finally(() => current.pending.delete(pending)).catch(() => undefined);
|
|
23
|
+
return pending;
|
|
24
|
+
};
|
|
25
|
+
const close = agentHarnessClose(context, harness);
|
|
26
|
+
const value = Object.freeze({
|
|
27
|
+
model,
|
|
28
|
+
failures,
|
|
29
|
+
approvals,
|
|
30
|
+
pending: approvals.pending,
|
|
31
|
+
trace,
|
|
32
|
+
script: model.script,
|
|
33
|
+
invoke,
|
|
34
|
+
close: () => runOwnedContext(context, close),
|
|
35
|
+
reset: () => resetAgentHarness(harness),
|
|
36
|
+
});
|
|
37
|
+
return { value, close };
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=agent-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-state.js","sourceRoot":"","sources":["../../src/testing/agent-state.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAElF;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAgC;IAEhC,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAS,CAAC;QAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC7D,MAAM,MAAM,GAA+B,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC7E,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACxE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7B,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACnF,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,KAAK,GAAqB,MAAM,CAAC,MAAM,CAAC;YAC5C,KAAK;YACL,QAAQ;YACR,SAAS;YACT,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,KAAK;YACL,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM;YACN,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC;YAC5C,KAAK,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC;SACxC,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/** Implements the scripted native chat-model adapter used by agent tests, preserving tool-call correlation and queued response ordering. */
|
|
2
|
+
import type { CallbackManagerForLLMRun } from "@langchain/core/callbacks/manager";
|
|
3
|
+
import { BaseChatModel, type BindToolsInput } from "@langchain/core/language_models/chat_models";
|
|
4
|
+
import { type BaseMessage } from "@langchain/core/messages";
|
|
5
|
+
import type { ChatResult } from "@langchain/core/outputs";
|
|
6
|
+
import type { TestAgentModelCall, TestModelTurn } from "./agents-types.js";
|
|
7
|
+
/** Native LangChain model transport; script and cancellation remain owned by TestModelScript. */
|
|
8
|
+
export declare class ScriptedChatModel extends BaseChatModel {
|
|
9
|
+
private readonly turn;
|
|
10
|
+
private readonly provider;
|
|
11
|
+
private readonly modelId;
|
|
12
|
+
private boundTools;
|
|
13
|
+
/**
|
|
14
|
+
* Connects native generation to the acquired script service.
|
|
15
|
+
* @param turn Owner script workflow consuming the native AbortSignal.
|
|
16
|
+
* @param provider Native test provider identity.
|
|
17
|
+
* @param modelId Native test model identity.
|
|
18
|
+
*/
|
|
19
|
+
constructor(turn: (request: TestAgentModelCall["request"], signal?: AbortSignal) => Promise<TestModelTurn>, provider: string, modelId: string);
|
|
20
|
+
/** @returns The native provider/model identity used by LangChain. */
|
|
21
|
+
_llmType(): string;
|
|
22
|
+
/**
|
|
23
|
+
* Records native presented tools for script-to-tool name matching.
|
|
24
|
+
* @param tools Model-presented tool declarations.
|
|
25
|
+
* @returns This native model, preserving LangChain binding behavior.
|
|
26
|
+
*/
|
|
27
|
+
bindTools(tools: BindToolsInput[]): this;
|
|
28
|
+
/**
|
|
29
|
+
* Consumes one owned scripted turn using the native invocation signal.
|
|
30
|
+
* @param messages Native LangChain messages projected for assertions.
|
|
31
|
+
* @param _options Native generation options, including cancellation.
|
|
32
|
+
* @param _runManager Native callback manager retained by the base-model signature.
|
|
33
|
+
* @returns The original native tool-call/final-output ChatResult representation.
|
|
34
|
+
*/
|
|
35
|
+
_generate(messages: BaseMessage[], _options?: this["ParsedCallOptions"], _runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=agents-model-native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model-native.d.ts","sourceRoot":"","sources":["../../src/testing/agents-model-native.ts"],"names":[],"mappings":"AAAA,4IAA4I;AAE5I,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EACL,aAAa,EAEb,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE3E,iGAAiG;AACjG,qBAAa,iBAAkB,SAAQ,aAAa;IAUhD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAIrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAd1B,OAAO,CAAC,UAAU,CAAiC;IAEnD;;;;;OAKG;gBAEgB,IAAI,EAAE,CACrB,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,EACtC,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,aAAa,CAAC,EACV,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM;IAKlC,qEAAqE;IACrE,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACM,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI;IAKjD;;;;;;OAMG;IACY,SAAS,CACtB,QAAQ,EAAE,WAAW,EAAE,EACvB,QAAQ,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,EACpC,WAAW,CAAC,EAAE,wBAAwB,GACrC,OAAO,CAAC,UAAU,CAAC;CA8BvB"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/** Implements the scripted native chat-model adapter used by agent tests, preserving tool-call correlation and queued response ordering. */
|
|
2
|
+
import { BaseChatModel, } from "@langchain/core/language_models/chat_models";
|
|
3
|
+
import { AIMessage } from "@langchain/core/messages";
|
|
4
|
+
/** Native LangChain model transport; script and cancellation remain owned by TestModelScript. */
|
|
5
|
+
export class ScriptedChatModel extends BaseChatModel {
|
|
6
|
+
turn;
|
|
7
|
+
provider;
|
|
8
|
+
modelId;
|
|
9
|
+
boundTools = [];
|
|
10
|
+
/**
|
|
11
|
+
* Connects native generation to the acquired script service.
|
|
12
|
+
* @param turn Owner script workflow consuming the native AbortSignal.
|
|
13
|
+
* @param provider Native test provider identity.
|
|
14
|
+
* @param modelId Native test model identity.
|
|
15
|
+
*/
|
|
16
|
+
constructor(turn, provider, modelId) {
|
|
17
|
+
super({});
|
|
18
|
+
this.turn = turn;
|
|
19
|
+
this.provider = provider;
|
|
20
|
+
this.modelId = modelId;
|
|
21
|
+
}
|
|
22
|
+
/** @returns The native provider/model identity used by LangChain. */
|
|
23
|
+
_llmType() {
|
|
24
|
+
return `${this.provider}:${this.modelId}`;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Records native presented tools for script-to-tool name matching.
|
|
28
|
+
* @param tools Model-presented tool declarations.
|
|
29
|
+
* @returns This native model, preserving LangChain binding behavior.
|
|
30
|
+
*/
|
|
31
|
+
bindTools(tools) {
|
|
32
|
+
this.boundTools = [...tools];
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Consumes one owned scripted turn using the native invocation signal.
|
|
37
|
+
* @param messages Native LangChain messages projected for assertions.
|
|
38
|
+
* @param _options Native generation options, including cancellation.
|
|
39
|
+
* @param _runManager Native callback manager retained by the base-model signature.
|
|
40
|
+
* @returns The original native tool-call/final-output ChatResult representation.
|
|
41
|
+
*/
|
|
42
|
+
async _generate(messages, _options, _runManager) {
|
|
43
|
+
const turn = await this.turn({
|
|
44
|
+
messages: messages.map(snapshotMessage),
|
|
45
|
+
tools: this.boundTools.map(snapshotTool),
|
|
46
|
+
}, _options?.signal);
|
|
47
|
+
if (turn.type === "error" || turn.type === "cancelled") {
|
|
48
|
+
throw new Error(turn.type === "error" ? turn.message : (turn.reason ?? "cancelled"));
|
|
49
|
+
}
|
|
50
|
+
const toolCall = turn.type === "tool-call"
|
|
51
|
+
? {
|
|
52
|
+
name: presentedToolName(turn.toolId, this.boundTools),
|
|
53
|
+
args: turn.input,
|
|
54
|
+
id: turn.callId,
|
|
55
|
+
type: "tool_call",
|
|
56
|
+
}
|
|
57
|
+
: {
|
|
58
|
+
name: "relkit_output",
|
|
59
|
+
args: { value: turn.output },
|
|
60
|
+
id: "relkit-test-output",
|
|
61
|
+
type: "tool_call",
|
|
62
|
+
};
|
|
63
|
+
return {
|
|
64
|
+
generations: [{ text: "", message: new AIMessage({ content: "", tool_calls: [toolCall] }) }],
|
|
65
|
+
llmOutput: {},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Projects the native message role and content for deterministic call assertions.
|
|
71
|
+
* @param message - Native language-model message.
|
|
72
|
+
* @returns The same visible message fields without exposing model internals.
|
|
73
|
+
*/
|
|
74
|
+
function snapshotMessage(message) {
|
|
75
|
+
return { role: message.getType(), content: contentValue(message.content) };
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Decodes JSON text when valid while retaining native non-JSON content.
|
|
79
|
+
* @param value - Candidate native value checked or detached by this helper.
|
|
80
|
+
* @returns The existing JSON value or original content.
|
|
81
|
+
*/
|
|
82
|
+
function contentValue(value) {
|
|
83
|
+
if (typeof value !== "string")
|
|
84
|
+
return value;
|
|
85
|
+
try {
|
|
86
|
+
return JSON.parse(value);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
return value;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Projects only the native tool name used by model call assertions.
|
|
94
|
+
* @param value - Candidate native value checked or detached by this helper.
|
|
95
|
+
* @returns A bounded tool name snapshot.
|
|
96
|
+
*/
|
|
97
|
+
function snapshotTool(value) {
|
|
98
|
+
return { name: "name" in value ? value.name : undefined };
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Selects the native presented tool name corresponding to a declared tool ID.
|
|
102
|
+
* @param id - Declared resource or tool identity.
|
|
103
|
+
* @param tools - Native model-presented tool declarations.
|
|
104
|
+
* @returns The registered model name or the original tool ID.
|
|
105
|
+
*/
|
|
106
|
+
function presentedToolName(id, tools) {
|
|
107
|
+
const prefix = id.replaceAll(".", "_");
|
|
108
|
+
const tool = tools.find((entry) => "name" in entry && (entry.name === prefix || entry.name.startsWith(`${prefix}_`)));
|
|
109
|
+
return tool && "name" in tool ? tool.name : id;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=agents-model-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model-native.js","sourceRoot":"","sources":["../../src/testing/agents-model-native.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applies scripted native turns under the test model owner's cancellation state.
|
|
3
|
+
* Reset, replacement and detached evidence retain their existing ordering.
|
|
4
|
+
*/
|
|
5
|
+
import { Effect, Ref } from "effect";
|
|
6
|
+
import type { ModelScriptOwnedState } from "./agents-model.types.js";
|
|
7
|
+
import type { TestAgentModelCall, TestAgentModelOptions, TestModelTurn } from "./agents-types.js";
|
|
8
|
+
/** Cancels active requests and clears this model's script position/evidence.
|
|
9
|
+
* @param state - This model's state.
|
|
10
|
+
* @returns An observed reset Effect.
|
|
11
|
+
*/
|
|
12
|
+
export declare function modelScriptResetEffect(state: Ref.Ref<ModelScriptOwnedState>): Effect.Effect<void, never, never>;
|
|
13
|
+
/** Replaces scripted decisions after resetting active work.
|
|
14
|
+
* @param state - Owner state.
|
|
15
|
+
* @param reset - Existing model reset operation.
|
|
16
|
+
* @param turns - Detached replacement turns.
|
|
17
|
+
* @returns The existing checked script replacement Effect.
|
|
18
|
+
*/
|
|
19
|
+
export declare function modelScriptReplaceEffect(state: Ref.Ref<ModelScriptOwnedState>, reset: Effect.Effect<void>, turns: readonly TestModelTurn[]): Effect.Effect<undefined, TypeError, never>;
|
|
20
|
+
/** Executes a turn through the original observed native cancellation boundary.
|
|
21
|
+
* @param state - Owner state.
|
|
22
|
+
* @param options - Native test model policy.
|
|
23
|
+
* @param request - Detached request evidence.
|
|
24
|
+
* @param signal - Optional caller cancellation.
|
|
25
|
+
* @returns The scripted decision or original failure.
|
|
26
|
+
*/
|
|
27
|
+
export declare function modelScriptTurnEffect(state: Ref.Ref<ModelScriptOwnedState>, options: TestAgentModelOptions, request: TestAgentModelCall["request"], signal?: AbortSignal): Effect.Effect<TestModelTurn, unknown, never>;
|
|
28
|
+
//# sourceMappingURL=agents-model-operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model-operations.d.ts","sourceRoot":"","sources":["../../src/testing/agents-model-operations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElG;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,qCAY3E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,EACrC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAC1B,KAAK,EAAE,SAAS,aAAa,EAAE,8CAYhC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,EACrC,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,EACtC,MAAM,CAAC,EAAE,WAAW,gDAYrB"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applies scripted native turns under the test model owner's cancellation state.
|
|
3
|
+
* Reset, replacement and detached evidence retain their existing ordering.
|
|
4
|
+
*/
|
|
5
|
+
import { Effect, Ref } from "effect";
|
|
6
|
+
import { observeExecution } from "@relkit/contracts/operation";
|
|
7
|
+
import { combineSignals } from "@relkit/testing/internal/runtime-clock";
|
|
8
|
+
/** Cancels active requests and clears this model's script position/evidence.
|
|
9
|
+
* @param state - This model's state.
|
|
10
|
+
* @returns An observed reset Effect.
|
|
11
|
+
*/
|
|
12
|
+
export function modelScriptResetEffect(state) {
|
|
13
|
+
return observeExecution("testing", "model.reset", Effect.sync(() => {
|
|
14
|
+
const value = Ref.getUnsafe(state);
|
|
15
|
+
for (const controller of value.active)
|
|
16
|
+
controller.abort(new Error("Test model reset"));
|
|
17
|
+
value.active.clear();
|
|
18
|
+
value.next = 0;
|
|
19
|
+
value.calls.length = 0;
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
/** Replaces scripted decisions after resetting active work.
|
|
23
|
+
* @param state - Owner state.
|
|
24
|
+
* @param reset - Existing model reset operation.
|
|
25
|
+
* @param turns - Detached replacement turns.
|
|
26
|
+
* @returns The existing checked script replacement Effect.
|
|
27
|
+
*/
|
|
28
|
+
export function modelScriptReplaceEffect(state, reset, turns) {
|
|
29
|
+
return observeExecution("testing", "model.script", Effect.gen(function* () {
|
|
30
|
+
if (!Array.isArray(turns))
|
|
31
|
+
return yield* Effect.fail(new TypeError("Test model script must be an array"));
|
|
32
|
+
yield* reset;
|
|
33
|
+
Ref.getUnsafe(state).turns = Object.freeze(structuredClone(turns));
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
/** Executes a turn through the original observed native cancellation boundary.
|
|
37
|
+
* @param state - Owner state.
|
|
38
|
+
* @param options - Native test model policy.
|
|
39
|
+
* @param request - Detached request evidence.
|
|
40
|
+
* @param signal - Optional caller cancellation.
|
|
41
|
+
* @returns The scripted decision or original failure.
|
|
42
|
+
*/
|
|
43
|
+
export function modelScriptTurnEffect(state, options, request, signal) {
|
|
44
|
+
return observeExecution("testing", "model.turn", Effect.fn("Testing.model.turn")(() => Effect.tryPromise({
|
|
45
|
+
try: (fiberSignal) => runModelScriptTurn(state, options, request, signal, fiberSignal),
|
|
46
|
+
catch: (cause) => cause,
|
|
47
|
+
}))());
|
|
48
|
+
}
|
|
49
|
+
/** Settles one native turn and removes only listeners/controllers it acquired.
|
|
50
|
+
* @param state - Owner state.
|
|
51
|
+
* @param options - Hanging/script policy.
|
|
52
|
+
* @param request - Request evidence.
|
|
53
|
+
* @param signal - Optional caller signal.
|
|
54
|
+
* @param fiberSignal - Owning Effect cancellation.
|
|
55
|
+
* @returns Detached scripted turn after cancellation-aware work.
|
|
56
|
+
*/
|
|
57
|
+
async function runModelScriptTurn(state, options, request, signal, fiberSignal) {
|
|
58
|
+
const value = Ref.getUnsafe(state);
|
|
59
|
+
const controller = new AbortController();
|
|
60
|
+
value.active.add(controller);
|
|
61
|
+
const signals = combineSignals(signal, fiberSignal, controller.signal);
|
|
62
|
+
let abort;
|
|
63
|
+
try {
|
|
64
|
+
if (signals.signal.aborted)
|
|
65
|
+
throw signals.signal.reason ?? new Error("Test model cancelled");
|
|
66
|
+
if (options.hang === true)
|
|
67
|
+
return await new Promise((_resolve, reject) => {
|
|
68
|
+
abort = () => reject(signals.signal.reason ?? new Error("Test model cancelled"));
|
|
69
|
+
signals.signal.addEventListener("abort", abort, { once: true });
|
|
70
|
+
if (signals.signal.aborted)
|
|
71
|
+
abort();
|
|
72
|
+
});
|
|
73
|
+
const turn = value.turns[value.next++];
|
|
74
|
+
if (turn === undefined)
|
|
75
|
+
throw new Error("Test model script exhausted");
|
|
76
|
+
const snapshot = structuredClone({ request, turn });
|
|
77
|
+
value.calls.push(Object.freeze({
|
|
78
|
+
index: value.calls.length,
|
|
79
|
+
request: Object.freeze(snapshot.request),
|
|
80
|
+
turn: snapshot.turn,
|
|
81
|
+
}));
|
|
82
|
+
return structuredClone(turn);
|
|
83
|
+
}
|
|
84
|
+
finally {
|
|
85
|
+
if (abort !== undefined)
|
|
86
|
+
signals.signal.removeEventListener("abort", abort);
|
|
87
|
+
signals.dispose();
|
|
88
|
+
value.active.delete(controller);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=agents-model-operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model-operations.js","sourceRoot":"","sources":["../../src/testing/agents-model-operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** Constructs deterministic native test models from scripted steps and exposes their observed calls for invocation assertions. */
|
|
2
|
+
import { Context, Layer } from "effect";
|
|
3
|
+
import type { ModelScriptService, RuntimeTestAgentModel } from "./agents-model.types.js";
|
|
4
|
+
import type { TestAgentModelOptions, TestModelTurn } from "./agents-types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Creates an isolated scripted native language model without network access.
|
|
7
|
+
* @param options - Explicit configuration and native dependencies for this test owner.
|
|
8
|
+
* @returns A synchronous model facade owning script state and cancellation-aware turns.
|
|
9
|
+
* @see tests/fixtures/checked-examples.ts ownedHelpersExample for checked script ownership.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createTestModel(options?: TestAgentModelOptions & {
|
|
12
|
+
readonly script?: readonly TestModelTurn[];
|
|
13
|
+
}): RuntimeTestAgentModel;
|
|
14
|
+
declare const TestModelScript_base: Context.ServiceClass<TestModelScript, "relkit/testing/ModelScript", ModelScriptService>;
|
|
15
|
+
/** Stateful scripted turns and cancellation belong to one model owner. */
|
|
16
|
+
export declare class TestModelScript extends TestModelScript_base {
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Builds a network-free script service with cooperative native cancellation.
|
|
20
|
+
* @param options Model policy and initial scripted turns.
|
|
21
|
+
* @returns A synchronously ready replaceable service Layer.
|
|
22
|
+
*/
|
|
23
|
+
export declare function modelScriptLayer(options?: TestAgentModelOptions): Layer.Layer<TestModelScript, never, never>;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=agents-model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model.d.ts","sourceRoot":"","sources":["../../src/testing/agents-model.ts"],"names":[],"mappings":"AAAA,kIAAkI;AASlI,OAAO,EAAE,OAAO,EAAU,KAAK,EAAuB,MAAM,QAAQ,CAAC;AAQrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,OAAO,KAAK,EAAsB,qBAAqB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElG;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,GAAE,qBAAqB,GAAG;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;CAAO,GACnF,qBAAqB,CAiCvB;;AAED,0EAA0E;AAC1E,qBAAa,eAAgB,SAAQ,oBAEpC;CAAG;AAEJ;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,qBAA0B,8CAQnE"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/** Constructs deterministic native test models from scripted steps and exposes their observed calls for invocation assertions. */
|
|
2
|
+
import { modelScriptResetEffect, modelScriptTurnEffect, modelScriptReplaceEffect, } from "./agents-model-operations.js";
|
|
3
|
+
import { ScriptedChatModel } from "./agents-model-native.js";
|
|
4
|
+
import { combineSignals } from "@relkit/testing/internal/runtime-clock";
|
|
5
|
+
import { Context, Effect, Layer, ManagedRuntime, Ref } from "effect";
|
|
6
|
+
import { observeExecution, runExecutionPromise, runExecutionSync, } from "@relkit/contracts/operation";
|
|
7
|
+
import { disposeTestingOwner, testingLoggerLayer } from "@relkit/testing/internal/testing-owner";
|
|
8
|
+
/**
|
|
9
|
+
* Creates an isolated scripted native language model without network access.
|
|
10
|
+
* @param options - Explicit configuration and native dependencies for this test owner.
|
|
11
|
+
* @returns A synchronous model facade owning script state and cancellation-aware turns.
|
|
12
|
+
* @see tests/fixtures/checked-examples.ts ownedHelpersExample for checked script ownership.
|
|
13
|
+
*/
|
|
14
|
+
export function createTestModel(options = {}) {
|
|
15
|
+
const owner = ManagedRuntime.make(modelScriptLayer(options).pipe(Layer.provideMerge(testingLoggerLayer(options.logger))));
|
|
16
|
+
try {
|
|
17
|
+
const service = runExecutionSync(owner, TestModelScript);
|
|
18
|
+
const provider = options.provider ?? "test";
|
|
19
|
+
const modelId = options.modelId ?? "default";
|
|
20
|
+
const languageModel = new ScriptedChatModel((request, signal) => runExecutionPromise(owner, service.turn(request, signal)), provider, modelId);
|
|
21
|
+
const script = (value) => runExecutionSync(owner, service.script(value));
|
|
22
|
+
const reset = () => runExecutionSync(owner, service.reset);
|
|
23
|
+
let closing;
|
|
24
|
+
script(options.script ?? []);
|
|
25
|
+
return Object.freeze({
|
|
26
|
+
provider,
|
|
27
|
+
modelId,
|
|
28
|
+
languageModel,
|
|
29
|
+
script,
|
|
30
|
+
reset,
|
|
31
|
+
close: () => (closing ??= disposeTestingOwner(owner)),
|
|
32
|
+
get calls() {
|
|
33
|
+
return runExecutionSync(owner, service.calls);
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
void disposeTestingOwner(owner).catch(() => undefined);
|
|
39
|
+
throw error;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** Stateful scripted turns and cancellation belong to one model owner. */
|
|
43
|
+
export class TestModelScript extends Context.Service()("relkit/testing/ModelScript") {
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Builds a network-free script service with cooperative native cancellation.
|
|
47
|
+
* @param options Model policy and initial scripted turns.
|
|
48
|
+
* @returns A synchronously ready replaceable service Layer.
|
|
49
|
+
*/
|
|
50
|
+
export function modelScriptLayer(options = {}) {
|
|
51
|
+
return Layer.effect(TestModelScript, Effect.acquireRelease(Effect.sync(() => makeModelScriptService(options)), (service) => service.reset));
|
|
52
|
+
}
|
|
53
|
+
/** Constructs one isolated script service after its owning Layer is acquired.
|
|
54
|
+
* @param options - Native model policy.
|
|
55
|
+
* @returns Script operations sharing one state and reset authority.
|
|
56
|
+
*/
|
|
57
|
+
function makeModelScriptService(options) {
|
|
58
|
+
const state = Ref.makeUnsafe({
|
|
59
|
+
turns: [],
|
|
60
|
+
next: 0,
|
|
61
|
+
calls: [],
|
|
62
|
+
active: new Set(),
|
|
63
|
+
});
|
|
64
|
+
const reset = modelScriptResetEffect(state);
|
|
65
|
+
return TestModelScript.of({
|
|
66
|
+
turn: (request, signal) => modelScriptTurnEffect(state, options, request, signal),
|
|
67
|
+
script: (turns) => modelScriptReplaceEffect(state, reset, turns),
|
|
68
|
+
reset,
|
|
69
|
+
calls: Effect.sync(() => Object.freeze(structuredClone(Ref.getUnsafe(state).calls))),
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=agents-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model.js","sourceRoot":"","sources":["../../src/testing/agents-model.ts"],"names":[],"mappings":"AAAA,kIAAkI;AAElI,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAMjG;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkF,EAAE;IAEpF,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CACvF,CAAC;IACF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC;QAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,iBAAiB,CACzC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAC9E,QAAQ,EACR,OAAO,CACR,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,KAA+B,EAAQ,EAAE,CACvD,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,GAAS,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,OAAkC,CAAC;QACvC,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,QAAQ;YACR,OAAO;YACP,aAAa;YACb,MAAM;YACN,KAAK;YACL,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,KAAK,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,KAAK;gBACP,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAChD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,mBAAmB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,OAAO,eAAgB,SAAQ,OAAO,CAAC,OAAO,EAAuC,CACzF,4BAA4B,CAC7B;CAAG;AAEJ;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAiC,EAAE;IAClE,OAAO,KAAK,CAAC,MAAM,CACjB,eAAe,EACf,MAAM,CAAC,cAAc,CACnB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,EAClD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAC3B,CACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,OAA8B;IAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAA0D;QACpF,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,IAAI,GAAG,EAAE;KAClB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5C,OAAO,eAAe,CAAC,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC;QACjF,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;QAChE,KAAK;QACL,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;KACrF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** Constructs deterministic native test models from scripted steps and exposes their observed calls for invocation assertions. This companion preserves the native input and output types without starting runtime work. */
|
|
2
|
+
import type { Effect } from "effect";
|
|
3
|
+
import type { BaseChatModel } from "@langchain/core/language_models/chat_models";
|
|
4
|
+
import type { TestAgentModel } from "./agents-types.js";
|
|
5
|
+
import type { TestAgentModelCall, TestModelTurn } from "./agents-types.js";
|
|
6
|
+
/** Effect script state, detached call capture and cancellable native turn decisions. */
|
|
7
|
+
export interface ModelScriptService {
|
|
8
|
+
readonly turn: (request: TestAgentModelCall["request"], signal?: AbortSignal) => Effect.Effect<TestModelTurn, unknown>;
|
|
9
|
+
readonly script: (turns: readonly TestModelTurn[]) => Effect.Effect<void, unknown>;
|
|
10
|
+
readonly reset: Effect.Effect<void>;
|
|
11
|
+
readonly calls: Effect.Effect<readonly TestAgentModelCall[]>;
|
|
12
|
+
}
|
|
13
|
+
/** Native LangChain-compatible scripted model with owned release. */
|
|
14
|
+
export interface RuntimeTestAgentModel extends TestAgentModel {
|
|
15
|
+
readonly languageModel: BaseChatModel;
|
|
16
|
+
}
|
|
17
|
+
/** Script index, detached evidence and cancellation owners for one model. */
|
|
18
|
+
export interface ModelScriptOwnedState {
|
|
19
|
+
turns: readonly TestModelTurn[];
|
|
20
|
+
next: number;
|
|
21
|
+
readonly calls: TestAgentModelCall[];
|
|
22
|
+
readonly active: Set<AbortController>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=agents-model.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model.types.d.ts","sourceRoot":"","sources":["../../src/testing/agents-model.types.ts"],"names":[],"mappings":"AAAA,4NAA4N;AAE5N,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE3E,wFAAwF;AACxF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,EACtC,MAAM,CAAC,EAAE,WAAW,KACjB,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;CAC9D;AAED,qEAAqE;AACrE,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAC3D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;CACvC;AAED,6EAA6E;AAC7E,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,KAAK,EAAE,kBAAkB,EAAE,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;CACvC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Constructs deterministic native test models from scripted steps and exposes their observed calls for invocation assertions. This companion preserves the native input and output types without starting runtime work. */
|
|
2
|
+
export {};
|
|
3
|
+
//# sourceMappingURL=agents-model.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-model.types.js","sourceRoot":"","sources":["../../src/testing/agents-model.types.ts"],"names":[],"mappings":"AAAA,4NAA4N"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-types.d.ts","sourceRoot":"","sources":["../../src/testing/agents-types.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,mBAAmB,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-types.js","sourceRoot":"","sources":["../../src/testing/agents-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** Normalizes scripted native test values and observations for the agent harness without starting a separate execution owner. */
|
|
2
|
+
import type { AgentObservedEdge, AgentRuntimeHooks } from "../index.js";
|
|
3
|
+
import type { spanSnapshot } from "@relkit/invocation";
|
|
4
|
+
import type { TestAgentTrace, TestAgentTraceExpectation, TestAgentTraceSnapshot } from "./agents-types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Asserts selected native agent trace fields in their observed order.
|
|
7
|
+
* @param trace - Captured native trace assertion snapshot.
|
|
8
|
+
* @param expected - Existing expected status or ordered captured values.
|
|
9
|
+
* @returns Nothing when the existing assertion contract matches.
|
|
10
|
+
*/
|
|
11
|
+
export declare function assertAgentTrace(trace: TestAgentTraceSnapshot, expected: TestAgentTraceExpectation): void;
|
|
12
|
+
/**
|
|
13
|
+
* Creates isolated trace capture and the existing assertion facade.
|
|
14
|
+
* @param spans - Owner-local native span snapshots.
|
|
15
|
+
* @param edges - Compiled native graph relationships or captured agent relationship ledger.
|
|
16
|
+
* @returns A native trace helper exposing detached inspection and clear operations.
|
|
17
|
+
*/
|
|
18
|
+
export declare function createTrace(spans: ReturnType<typeof spanSnapshot>[], edges: AgentObservedEdge[]): TestAgentTrace;
|
|
19
|
+
/**
|
|
20
|
+
* Records observed agent edges while forwarding the caller's native hooks.
|
|
21
|
+
* @param hooks - Caller-native hooks forwarded without changing ordering.
|
|
22
|
+
* @param edges - Compiled native graph relationships or captured agent relationship ledger.
|
|
23
|
+
* @returns Hooks preserving native callback order and caller behavior.
|
|
24
|
+
*/
|
|
25
|
+
export declare function captureHooks(hooks: AgentRuntimeHooks | undefined, edges: AgentObservedEdge[]): AgentRuntimeHooks;
|
|
26
|
+
//# sourceMappingURL=agents-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents-utils.d.ts","sourceRoot":"","sources":["../../src/testing/agents-utils.ts"],"names":[],"mappings":"AAAA,iIAAiI;AAEjI,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EACV,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAE3B;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,sBAAsB,EAC7B,QAAQ,EAAE,yBAAyB,GAClC,IAAI,CA4BN;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,EAAE,EACxC,KAAK,EAAE,iBAAiB,EAAE,GACzB,cAAc,CAgBhB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,iBAAiB,GAAG,SAAS,EACpC,KAAK,EAAE,iBAAiB,EAAE,GACzB,iBAAiB,CAQnB"}
|