effect 4.0.2 → 4.0.4
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/AGENTS.md +24 -0
- package/CLAUDE.md +24 -0
- package/ai-docs/package.json +2 -2
- package/ai-docs/src/52_graphql/10_basics.ts +111 -0
- package/ai-docs/src/52_graphql/20_testing.ts +45 -0
- package/ai-docs/src/52_graphql/30_batching.ts +116 -0
- package/ai-docs/src/52_graphql/40_aliased-batching.ts +122 -0
- package/ai-docs/src/52_graphql/50_errors-and-retries.ts +74 -0
- package/ai-docs/src/52_graphql/index.md +6 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +12 -3
- package/dist/Context.js.map +1 -1
- package/dist/Crypto.d.ts +33 -5
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +8 -2
- package/dist/Crypto.js.map +1 -1
- package/dist/DateTime.d.ts +9 -6
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +9 -6
- package/dist/DateTime.js.map +1 -1
- package/dist/Duration.d.ts +6 -6
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +27 -8
- package/dist/Duration.js.map +1 -1
- package/dist/FileSystem.d.ts +44 -2
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +4 -10
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +9 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +481 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +362 -4
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaGetter.d.ts +4 -0
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +52 -33
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +38 -17
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +7 -1
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +1 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +22 -11
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +21 -6
- package/dist/Stream.js.map +1 -1
- package/dist/Utils.js +8 -3
- package/dist/Utils.js.map +1 -1
- package/dist/ai/AnthropicStructuredOutput.js +0 -2
- package/dist/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/ai/Chat.d.ts +2 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/LanguageModel.d.ts +38 -7
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +25 -7
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +61 -0
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +196 -44
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +28 -5
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +4 -3
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +1 -0
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +27 -0
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +33 -10
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +6 -3
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +3 -3
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +8 -5
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts +5 -4
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +3 -3
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Prompt.d.ts +17 -1
- package/dist/cli/Prompt.d.ts.map +1 -1
- package/dist/cli/Prompt.js +119 -114
- package/dist/cli/Prompt.js.map +1 -1
- package/dist/cli/internal/ansi.d.ts +0 -1
- package/dist/cli/internal/ansi.d.ts.map +1 -1
- package/dist/cli/internal/ansi.js +20 -3
- package/dist/cli/internal/ansi.js.map +1 -1
- package/dist/cli/internal/completions/powershell.d.ts +2 -0
- package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
- package/dist/cli/internal/completions/powershell.js +273 -0
- package/dist/cli/internal/completions/powershell.js.map +1 -0
- package/dist/cli/internal/completions/zsh.js +3 -2
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts +3 -3
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +21 -18
- package/dist/cli/internal/wizard.js.map +1 -1
- package/dist/cluster/ClusterSchema.d.ts +28 -0
- package/dist/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/cluster/ClusterSchema.js +30 -0
- package/dist/cluster/ClusterSchema.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +56 -26
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +18 -3
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +31 -11
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +8 -2
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +187 -66
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts +59 -19
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +84 -55
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +191 -113
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +104 -37
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/encoding/Sse.d.ts +6 -0
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +62 -70
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/graphql/GraphQL.d.ts +349 -0
- package/dist/graphql/GraphQL.d.ts.map +1 -0
- package/dist/graphql/GraphQL.js +207 -0
- package/dist/graphql/GraphQL.js.map +1 -0
- package/dist/graphql/GraphQLClient.d.ts +562 -0
- package/dist/graphql/GraphQLClient.d.ts.map +1 -0
- package/dist/graphql/GraphQLClient.js +498 -0
- package/dist/graphql/GraphQLClient.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +445 -0
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -0
- package/dist/graphql/GraphQLClientError.js +479 -0
- package/dist/graphql/GraphQLClientError.js.map +1 -0
- package/dist/graphql/GraphQLGroup.d.ts +118 -0
- package/dist/graphql/GraphQLGroup.d.ts.map +1 -0
- package/dist/graphql/GraphQLGroup.js +109 -0
- package/dist/graphql/GraphQLGroup.js.map +1 -0
- package/dist/graphql/GraphQLMiddleware.d.ts +249 -0
- package/dist/graphql/GraphQLMiddleware.d.ts.map +1 -0
- package/dist/graphql/GraphQLMiddleware.js +130 -0
- package/dist/graphql/GraphQLMiddleware.js.map +1 -0
- package/dist/graphql/GraphQLProtocol.d.ts +731 -0
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -0
- package/dist/graphql/GraphQLProtocol.js +719 -0
- package/dist/graphql/GraphQLProtocol.js.map +1 -0
- package/dist/graphql/GraphQLResolver.d.ts +453 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -0
- package/dist/graphql/GraphQLResolver.js +552 -0
- package/dist/graphql/GraphQLResolver.js.map +1 -0
- package/dist/graphql/index.d.ts +40 -0
- package/dist/graphql/index.d.ts.map +1 -0
- package/dist/graphql/index.js +41 -0
- package/dist/graphql/index.js.map +1 -0
- package/dist/http/FindMyWay/internal/router.js +3 -6
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/HttpClient.d.ts +21 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +63 -12
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +14 -7
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +31 -32
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts +35 -0
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +35 -0
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +8 -6
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +27 -16
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -2
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/Multipart.d.ts.map +1 -1
- package/dist/http/Multipart.js +15 -1
- package/dist/http/Multipart.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +5 -0
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/internal/dateTime.js +40 -35
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +19 -9
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graphql.d.ts +2 -0
- package/dist/internal/graphql.d.ts.map +1 -0
- package/dist/internal/graphql.js +195 -0
- package/dist/internal/graphql.js.map +1 -0
- package/dist/internal/graphqlHeaders.d.ts +4 -0
- package/dist/internal/graphqlHeaders.d.ts.map +1 -0
- package/dist/internal/graphqlHeaders.js +11 -0
- package/dist/internal/graphqlHeaders.js.map +1 -0
- package/dist/internal/request.js +20 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +4 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +29 -5
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/AddressResolver.d.ts +145 -0
- package/dist/net/AddressResolver.d.ts.map +1 -0
- package/dist/net/AddressResolver.js +114 -0
- package/dist/net/AddressResolver.js.map +1 -0
- package/dist/net/Dns.d.ts +596 -0
- package/dist/net/Dns.d.ts.map +1 -0
- package/dist/net/Dns.js +549 -0
- package/dist/net/Dns.js.map +1 -0
- package/dist/net/Host.d.ts +369 -0
- package/dist/net/Host.d.ts.map +1 -0
- package/dist/net/Host.js +397 -0
- package/dist/net/Host.js.map +1 -0
- package/dist/net/IpInterface.d.ts +76 -3
- package/dist/net/IpInterface.d.ts.map +1 -1
- package/dist/net/IpInterface.js +53 -4
- package/dist/net/IpInterface.js.map +1 -1
- package/dist/net/IpNetwork.d.ts +82 -8
- package/dist/net/IpNetwork.d.ts.map +1 -1
- package/dist/net/IpNetwork.js +60 -4
- package/dist/net/IpNetwork.js.map +1 -1
- package/dist/net/NetAddress.d.ts +396 -35
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +358 -34
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/net/index.d.ts +15 -0
- package/dist/net/index.d.ts.map +1 -1
- package/dist/net/index.js +15 -0
- package/dist/net/index.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +15 -21
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/PrometheusMetrics.js +1 -0
- package/dist/observability/PrometheusMetrics.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +32 -3
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +75 -16
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +22 -6
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +12 -5
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts +6 -0
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +78 -29
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/socket/DatagramSocket.d.ts +456 -0
- package/dist/socket/DatagramSocket.d.ts.map +1 -0
- package/dist/socket/DatagramSocket.js +535 -0
- package/dist/socket/DatagramSocket.js.map +1 -0
- package/dist/socket/Socket.d.ts +20 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +9 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/socket/index.d.ts +5 -0
- package/dist/socket/index.d.ts.map +1 -1
- package/dist/socket/index.js +5 -0
- package/dist/socket/index.js.map +1 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +7 -2
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +7 -1
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +31 -6
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/testing/TestCrypto.d.ts +73 -0
- package/dist/testing/TestCrypto.d.ts.map +1 -0
- package/dist/testing/TestCrypto.js +87 -0
- package/dist/testing/TestCrypto.js.map +1 -0
- package/dist/testing/index.d.ts +5 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +5 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts +54 -0
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +108 -50
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +24 -2
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +13 -3
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +6 -3
- package/src/Context.ts +12 -3
- package/src/Crypto.ts +43 -9
- package/src/DateTime.ts +9 -6
- package/src/Duration.ts +36 -16
- package/src/FileSystem.ts +48 -2
- package/src/RequestResolver.ts +4 -10
- package/src/Scheduler.ts +9 -0
- package/src/Schema.ts +677 -5
- package/src/SchemaGetter.ts +47 -35
- package/src/Sink.ts +45 -18
- package/src/Stdio.ts +9 -2
- package/src/Stream.ts +44 -15
- package/src/Utils.ts +8 -5
- package/src/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/ai/Chat.ts +2 -2
- package/src/ai/LanguageModel.ts +96 -24
- package/src/ai/McpServer.ts +288 -94
- package/src/ai/Prompt.ts +24 -10
- package/src/ai/Response.ts +6 -3
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
- package/src/ai/internal/mcpProtocol.ts +3 -0
- package/src/ai/internal/mcpRuntime.ts +2 -0
- package/src/cli/CliOutput.ts +33 -16
- package/src/cli/Command.ts +4 -3
- package/src/cli/Completions.ts +9 -6
- package/src/cli/GlobalFlag.ts +19 -11
- package/src/cli/Prompt.ts +159 -149
- package/src/cli/internal/ansi.ts +26 -3
- package/src/cli/internal/completions/powershell.ts +322 -0
- package/src/cli/internal/completions/zsh.ts +4 -2
- package/src/cli/internal/wizard.ts +34 -26
- package/src/cluster/ClusterSchema.ts +32 -0
- package/src/cluster/ClusterWorkflowEngine.ts +64 -36
- package/src/cluster/MessageStorage.ts +45 -14
- package/src/cluster/Runners.ts +8 -2
- package/src/cluster/Sharding.ts +219 -58
- package/src/cluster/SqlMessageStorage.ts +118 -84
- package/src/cluster/SqlRunnerStorage.ts +224 -128
- package/src/cluster/internal/entityManager.ts +151 -55
- package/src/encoding/Sse.ts +69 -79
- package/src/graphql/GraphQL.ts +494 -0
- package/src/graphql/GraphQLClient.ts +912 -0
- package/src/graphql/GraphQLClientError.ts +542 -0
- package/src/graphql/GraphQLGroup.ts +167 -0
- package/src/graphql/GraphQLMiddleware.ts +253 -0
- package/src/graphql/GraphQLProtocol.ts +1286 -0
- package/src/graphql/GraphQLResolver.ts +1010 -0
- package/src/graphql/index.ts +48 -0
- package/src/http/FindMyWay/internal/router.ts +4 -7
- package/src/http/HttpClient.ts +110 -12
- package/src/http/HttpEffect.ts +11 -5
- package/src/http/HttpMiddleware.ts +33 -34
- package/src/http/HttpRouter.ts +35 -0
- package/src/http/HttpServerResponse.ts +28 -16
- package/src/http/HttpTraceContext.ts +8 -2
- package/src/http/Multipart.ts +17 -1
- package/src/http-api/HttpApiScalar.ts +5 -0
- package/src/internal/dateTime.ts +13 -10
- package/src/internal/effect.ts +22 -15
- package/src/internal/graphql.ts +263 -0
- package/src/internal/graphqlHeaders.ts +11 -0
- package/src/internal/request.ts +31 -3
- package/src/internal/schema/toCodeDocument.ts +7 -1
- package/src/internal/schema/toJsonSchemaDocument.ts +34 -2
- package/src/internal/version.ts +1 -1
- package/src/net/AddressResolver.ts +222 -0
- package/src/net/Dns.ts +1035 -0
- package/src/net/Host.ts +544 -0
- package/src/net/IpInterface.ts +117 -7
- package/src/net/IpNetwork.ts +116 -17
- package/src/net/NetAddress.ts +620 -76
- package/src/net/index.ts +18 -0
- package/src/observability/OtlpMetrics.ts +12 -23
- package/src/observability/PrometheusMetrics.ts +1 -0
- package/src/persistence/PersistedQueue.ts +146 -53
- package/src/rpc/RpcClient.ts +41 -19
- package/src/rpc/RpcServer.ts +115 -40
- package/src/socket/DatagramSocket.ts +919 -0
- package/src/socket/Socket.ts +28 -2
- package/src/socket/index.ts +6 -0
- package/src/sql/Migrator.ts +21 -5
- package/src/sql/SqlClient.ts +39 -15
- package/src/testing/TestCrypto.ts +94 -0
- package/src/testing/index.ts +6 -0
- package/src/workflow/DurableDeferred.ts +160 -47
- package/src/workflow/WorkflowEngine.ts +50 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestCrypto.js","names":[],"sources":["../../src/testing/TestCrypto.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;AAWA,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,MAAM,MAAM,cAAc;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BA,OAAO,MAAM,IAAI,gBAEyC,MAAM,CAAC,UAAU,CACzE,WAAU,KAAsB;EAC9B,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,MAAM;EACnC,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,MAAM;EACzC,OAAO,MAAM,CAAC,IAAI,CAAC;IACjB,WAAW,EAAG,IAAI,IAAI;MACpB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC;MAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;QAC7B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,GAAG,GAAG,CAAC;MAC9D;MACA,OAAO,KAAK;IACd,CAAC;IACD,MAAM,EAAE,MAAM,CAAC;GAChB,CAAC;AACJ,CAAC,EACD,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAChD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAM,KAAK,GAAI,IAAqB,IACzC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC","ignoreList":[]}
|
package/dist/testing/index.d.ts
CHANGED
|
@@ -12,6 +12,11 @@ export * as TestClock from "./TestClock.ts";
|
|
|
12
12
|
* @since 4.0.0
|
|
13
13
|
*/
|
|
14
14
|
export * as TestConsole from "./TestConsole.ts";
|
|
15
|
+
/**
|
|
16
|
+
* @stability unstable
|
|
17
|
+
* @since 4.0.0
|
|
18
|
+
*/
|
|
19
|
+
export * as TestCrypto from "./TestCrypto.ts";
|
|
15
20
|
/**
|
|
16
21
|
* @stability unstable
|
|
17
22
|
* @since 4.0.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;GAGG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;GAGG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;GAGG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;GAGG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;;GAGG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
|
package/dist/testing/index.js
CHANGED
|
@@ -13,6 +13,11 @@ export * as TestClock from "./TestClock.js";
|
|
|
13
13
|
* @since 4.0.0
|
|
14
14
|
*/
|
|
15
15
|
export * as TestConsole from "./TestConsole.js";
|
|
16
|
+
/**
|
|
17
|
+
* @stability unstable
|
|
18
|
+
* @since 4.0.0
|
|
19
|
+
*/
|
|
20
|
+
export * as TestCrypto from "./TestCrypto.js";
|
|
16
21
|
/**
|
|
17
22
|
* @stability unstable
|
|
18
23
|
* @since 4.0.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/testing/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA;AAEA;;;;AAIA,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,KAAK,WAAW,MAAM,kBAAkB;AAE/C;;;;AAIA,OAAO,KAAK,UAAU,MAAM,iBAAiB","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/testing/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA;AAEA;;;;AAIA,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,KAAK,WAAW,MAAM,kBAAkB;AAE/C;;;;AAIA,OAAO,KAAK,UAAU,MAAM,iBAAiB;AAE7C;;;;AAIA,OAAO,KAAK,UAAU,MAAM,iBAAiB","ignoreList":[]}
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines named wait points for durable workflow executions.
|
|
3
|
+
*
|
|
4
|
+
* A `DurableDeferred` has a stable name and schemas for the value that will be
|
|
5
|
+
* recorded later. Workflows can await it, suspend when no result exists yet, and
|
|
6
|
+
* resume after its result is recorded. Tokens identify the workflow name,
|
|
7
|
+
* execution id, and deferred name so external code can complete the correct
|
|
8
|
+
* wait point later.
|
|
9
|
+
*
|
|
10
|
+
* @stability unstable
|
|
11
|
+
* @since 4.0.0
|
|
12
|
+
*/
|
|
1
13
|
import type { NonEmptyReadonlyArray } from "../Array.ts";
|
|
2
14
|
import type * as Brand from "../Brand.ts";
|
|
3
15
|
import * as Cause from "../Cause.ts";
|
|
@@ -80,6 +92,20 @@ await_ as await };
|
|
|
80
92
|
* Runs an effect and records its exit into the durable deferred, resuming
|
|
81
93
|
* workflows that are waiting on that deferred.
|
|
82
94
|
*
|
|
95
|
+
* **Details**
|
|
96
|
+
*
|
|
97
|
+
* The effect and the write of its exit count as one in-flight activity of the
|
|
98
|
+
* workflow, so concurrent branches parked on durable waits do not suspend the
|
|
99
|
+
* run until the exit is recorded. This applies even when the effect itself is
|
|
100
|
+
* not an activity. If the effect parks on a durable wait, the run suspends
|
|
101
|
+
* once the other in-flight activities finish, and nothing is recorded.
|
|
102
|
+
*
|
|
103
|
+
* **Gotchas**
|
|
104
|
+
*
|
|
105
|
+
* A long-running effect keeps the run active instead of letting a parked
|
|
106
|
+
* sibling suspend it. Completing a deferred the run is waiting on still
|
|
107
|
+
* interrupts and replays the run.
|
|
108
|
+
*
|
|
83
109
|
* @stability unstable
|
|
84
110
|
* @category combinators
|
|
85
111
|
* @since 4.0.0
|
|
@@ -89,6 +115,20 @@ export declare const into: {
|
|
|
89
115
|
* Runs an effect and records its exit into the durable deferred, resuming
|
|
90
116
|
* workflows that are waiting on that deferred.
|
|
91
117
|
*
|
|
118
|
+
* **Details**
|
|
119
|
+
*
|
|
120
|
+
* The effect and the write of its exit count as one in-flight activity of the
|
|
121
|
+
* workflow, so concurrent branches parked on durable waits do not suspend the
|
|
122
|
+
* run until the exit is recorded. This applies even when the effect itself is
|
|
123
|
+
* not an activity. If the effect parks on a durable wait, the run suspends
|
|
124
|
+
* once the other in-flight activities finish, and nothing is recorded.
|
|
125
|
+
*
|
|
126
|
+
* **Gotchas**
|
|
127
|
+
*
|
|
128
|
+
* A long-running effect keeps the run active instead of letting a parked
|
|
129
|
+
* sibling suspend it. Completing a deferred the run is waiting on still
|
|
130
|
+
* interrupts and replays the run.
|
|
131
|
+
*
|
|
92
132
|
* @stability unstable
|
|
93
133
|
* @category combinators
|
|
94
134
|
* @since 4.0.0
|
|
@@ -98,6 +138,20 @@ export declare const into: {
|
|
|
98
138
|
* Runs an effect and records its exit into the durable deferred, resuming
|
|
99
139
|
* workflows that are waiting on that deferred.
|
|
100
140
|
*
|
|
141
|
+
* **Details**
|
|
142
|
+
*
|
|
143
|
+
* The effect and the write of its exit count as one in-flight activity of the
|
|
144
|
+
* workflow, so concurrent branches parked on durable waits do not suspend the
|
|
145
|
+
* run until the exit is recorded. This applies even when the effect itself is
|
|
146
|
+
* not an activity. If the effect parks on a durable wait, the run suspends
|
|
147
|
+
* once the other in-flight activities finish, and nothing is recorded.
|
|
148
|
+
*
|
|
149
|
+
* **Gotchas**
|
|
150
|
+
*
|
|
151
|
+
* A long-running effect keeps the run active instead of letting a parked
|
|
152
|
+
* sibling suspend it. Completing a deferred the run is waiting on still
|
|
153
|
+
* interrupts and replays the run.
|
|
154
|
+
*
|
|
101
155
|
* @stability unstable
|
|
102
156
|
* @category combinators
|
|
103
157
|
* @since 4.0.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableDeferred.d.ts","sourceRoot":"","sources":["../../src/workflow/DurableDeferred.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DurableDeferred.d.ts","sourceRoot":"","sources":["../../src/workflow/DurableDeferred.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AAEtC,OAAO,KAAK,IAAI,MAAM,YAAY,CAAA;AAKlC,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AAGtC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,QAAA,MAAM,MAAM,qCAAqC,CAAA;AAEjD;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe,CAC9B,OAAO,SAAS,MAAM,CAAC,UAAU,EACjC,KAAK,SAAS,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK;IAE9C,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;IACpE,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;CAC7E;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG;IAClB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAA;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAChD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,GACf,OAAO,SAAS,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,EAC/C,KAAK,SAAS,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,QAExC,MAAM,YACF;IACR,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CACnC,KACA,eAAe,CAAC,OAAO,EAAE,KAAK,CAqBhC,CAAA;AAqCD,QAAA,MAAM,MAAM,EAAE,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EAC/E,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAChB,OAAO,CAAC,MAAM,CAAC,EACf,KAAK,CAAC,MAAM,CAAC,EACX,cAAc,GACd,gBAAgB,GAChB,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,CAiB3B,CAAA;AAEF;;GAEG;AACH,OAAO;AACL;;;;;;;GAOG;AACH,MAAM,IAAI,KAAK,EAChB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAC7G,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KACrD,MAAM,CAAC,MAAM,CAChB,OAAO,CAAC,MAAM,CAAC,EACf,KAAK,CAAC,MAAM,CAAC,EACX,CAAC,GACD,cAAc,GACd,gBAAgB,GAChB,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,GACzB,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,CAC5B,CAAA;IACD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EAAE,CAAC,EACpE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EACxD,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,GACpC,MAAM,CAAC,MAAM,CACd,OAAO,CAAC,MAAM,CAAC,EACf,KAAK,CAAC,MAAM,CAAC,EACX,CAAC,GACD,cAAc,GACd,gBAAgB,GAChB,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,GACzB,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,CAC5B,CAAA;CAiBF,CAAA;AAkGD;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,GAClB,KAAK,CAAC,OAAO,SAAS,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EACzE,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAC9D,KAAK,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WACjD;IACT,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,CACf,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAC/B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAC3B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAChC,OAAO,CAAC,kBAAkB,CAAC,GAC3B,OAAO,CAAC,kBAAkB,CAAC,GAC3B,KAAK,CAAC,kBAAkB,CAAC,GACzB,KAAK,CAAC,kBAAkB,CAAC,GACzB,cAAc,GACd,gBAAgB,CAOnB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,2CAA2C,CAAA;AAEnE;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAA;AAE5C;;;;;;;GAOG;AACH,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;AAEtD;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAiD,CAAA;;;;;;AAE5G;;;;;;;GAOG;AACH,qBAAa,WAAY,SAAQ,gBAM/B;IACA;;;;;OAKG;IACH,IAAI,OAAO,IAAI,KAAK,CAInB;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,+LA4BzB;IAED;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,mFAA4C;IAEtE;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,mFAA4C;CACnE;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,EAAE,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACrF,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAOhD,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE;IACjC;;;;;;;OAOG;IACH,CACE,OAAO,EAAE;QACP,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAA;QAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAC7B,GACA,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACpE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,KAAK,CAAA;IACV;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GACzE,KAAK,CAAA;CAeT,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAC7B;;;;;;;OAOG;IACH,CAAC,CAAC,SAAS,QAAQ,CAAC,GAAG,EACrB,OAAO,EAAE;QACP,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;QACpB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;KAC7D,GACA,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACpE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACzB;;;;;;;OAOG;IACH,CACE,OAAO,SAAS,MAAM,CAAC,UAAU,EACjC,KAAK,SAAS,MAAM,CAAC,UAAU,EAC/B,CAAC,SAAS,QAAQ,CAAC,GAAG,EAEtB,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QACP,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;QACpB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;KAC7D,GACA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;CAmBxB,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;KACzD,GACA,CACD,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAChB,IAAI,EACJ,KAAK,EACL,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CACzE,CAAA;IACD;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;KACzD,GACA,MAAM,CAAC,MAAM,CACd,IAAI,EACJ,KAAK,EACL,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CACzE,CAAA;CAsBF,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;KAChC,GACA,CACD,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC7E;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;KAChC,GACA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAA;CAc5E,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB;;;;;;OAMG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAC9B,GACA,CACD,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC3E;;;;;;OAMG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAC9B,GACA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;CAc1E,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB;;;;;;OAMG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;KAC3C,GACA,CACD,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,KAClC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC3E;;;;;;OAMG;IACH,CAAC,OAAO,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,EACjE,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE;QACP,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;QACrB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;KAC3C,GACA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;CAc1E,CAAA"}
|
|
@@ -1,23 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Defines named wait points for durable workflow executions.
|
|
3
|
-
*
|
|
4
|
-
* A `DurableDeferred` has a stable name and schemas for the value that will be
|
|
5
|
-
* recorded later. Workflows can await it, suspend when no result exists yet, and
|
|
6
|
-
* resume after its result is recorded. Tokens identify the workflow name,
|
|
7
|
-
* execution id, and deferred name so external code can complete the correct
|
|
8
|
-
* wait point later.
|
|
9
|
-
*
|
|
10
|
-
* @stability unstable
|
|
11
|
-
* @since 4.0.0
|
|
12
|
-
*/
|
|
13
|
-
import * as Arr from "../Array.js";
|
|
14
1
|
import * as Cause from "../Cause.js";
|
|
15
2
|
import * as Context from "../Context.js";
|
|
16
3
|
import * as Effect from "../Effect.js";
|
|
17
4
|
import * as Base64Url from "../encoding/Base64Url.js";
|
|
18
5
|
import * as Exit from "../Exit.js";
|
|
19
|
-
import * as
|
|
6
|
+
import * as Fiber from "../Fiber.js";
|
|
20
7
|
import { dual } from "../Function.js";
|
|
8
|
+
import * as Latch from "../Latch.js";
|
|
21
9
|
import * as Option from "../Option.js";
|
|
22
10
|
import * as Schema from "../Schema.js";
|
|
23
11
|
import * as SchemaGetter from "../SchemaGetter.js";
|
|
@@ -54,11 +42,27 @@ const InstanceTag = /*#__PURE__*/Context.Service("effect/workflow/WorkflowEngine
|
|
|
54
42
|
const CurrentAttempt = /*#__PURE__*/Context.Reference("effect/workflow/Activity/CurrentAttempt", {
|
|
55
43
|
defaultValue: () => 1
|
|
56
44
|
});
|
|
45
|
+
/** Awaits registered under the instance copy of a `recordHeld` body. */
|
|
46
|
+
const awaitOwners = /*#__PURE__*/new WeakMap();
|
|
47
|
+
const registerAwait = (instance, name) => {
|
|
48
|
+
instance.awaitedDeferreds.set(name, (instance.awaitedDeferreds.get(name) ?? 0) + 1);
|
|
49
|
+
awaitOwners.get(instance)?.push(name);
|
|
50
|
+
};
|
|
51
|
+
const releaseAwaits = (instance, names) => {
|
|
52
|
+
for (const name of names) {
|
|
53
|
+
const count = instance.awaitedDeferreds.get(name) - 1;
|
|
54
|
+
if (count === 0) {
|
|
55
|
+
instance.awaitedDeferreds.delete(name);
|
|
56
|
+
} else {
|
|
57
|
+
instance.awaitedDeferreds.set(name, count);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
};
|
|
57
61
|
const await_ = /*#__PURE__*/Effect.fnUntraced(function* (self) {
|
|
58
62
|
const engine = yield* EngineTag;
|
|
59
63
|
const instance = yield* InstanceTag;
|
|
60
64
|
// Register before the read so any later completion can preempt the run.
|
|
61
|
-
instance
|
|
65
|
+
registerAwait(instance, self.name);
|
|
62
66
|
const exit = yield* Workflow.wrapActivityResult(engine.deferredResult(self), Option.isNone);
|
|
63
67
|
if (Option.isNone(exit)) {
|
|
64
68
|
return yield* Workflow.suspend(instance);
|
|
@@ -82,38 +86,99 @@ await_ as await };
|
|
|
82
86
|
* Runs an effect and records its exit into the durable deferred, resuming
|
|
83
87
|
* workflows that are waiting on that deferred.
|
|
84
88
|
*
|
|
89
|
+
* **Details**
|
|
90
|
+
*
|
|
91
|
+
* The effect and the write of its exit count as one in-flight activity of the
|
|
92
|
+
* workflow, so concurrent branches parked on durable waits do not suspend the
|
|
93
|
+
* run until the exit is recorded. This applies even when the effect itself is
|
|
94
|
+
* not an activity. If the effect parks on a durable wait, the run suspends
|
|
95
|
+
* once the other in-flight activities finish, and nothing is recorded.
|
|
96
|
+
*
|
|
97
|
+
* **Gotchas**
|
|
98
|
+
*
|
|
99
|
+
* A long-running effect keeps the run active instead of letting a parked
|
|
100
|
+
* sibling suspend it. Completing a deferred the run is waiting on still
|
|
101
|
+
* interrupts and replays the run.
|
|
102
|
+
*
|
|
85
103
|
* @stability unstable
|
|
86
104
|
* @category combinators
|
|
87
105
|
* @since 4.0.0
|
|
88
106
|
*/
|
|
89
|
-
export const into = /*#__PURE__*/dual(2, (effect, self) =>
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
// suspended, preempted or interrupted, so record nothing.
|
|
101
|
-
if (instance.suspended) {
|
|
102
|
-
parentInstance.suspended = true;
|
|
103
|
-
}
|
|
104
|
-
return;
|
|
105
|
-
} else if (interrupts.length > 0) {
|
|
106
|
-
exit = Exit.failCause(Cause.fromReasons(reasons));
|
|
107
|
-
}
|
|
107
|
+
export const into = /*#__PURE__*/dual(2, (effect, self) => recordHeld(effect, self, false));
|
|
108
|
+
/**
|
|
109
|
+
* Records `exit` into `self`. An interrupt-only exit is never a result: the
|
|
110
|
+
* effect was suspended, preempted or interrupted, so nothing is recorded.
|
|
111
|
+
* Interrupts mixed into a failure are dropped from the recorded cause.
|
|
112
|
+
*/
|
|
113
|
+
const recordExit = (engine, instance, self, exit) => {
|
|
114
|
+
if (Exit.isFailure(exit)) {
|
|
115
|
+
if (Cause.hasInterruptsOnly(exit.cause)) return Effect.void;
|
|
116
|
+
if (Cause.hasInterrupts(exit.cause)) {
|
|
117
|
+
exit = Exit.failCause(Cause.fromReasons(exit.cause.reasons.filter(reason => !Cause.isInterruptReason(reason))));
|
|
108
118
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
})
|
|
116
|
-
}
|
|
119
|
+
}
|
|
120
|
+
return engine.deferredDone(self, {
|
|
121
|
+
workflowName: instance.workflow._tag,
|
|
122
|
+
executionId: instance.executionId,
|
|
123
|
+
deferredName: self.name,
|
|
124
|
+
exit
|
|
125
|
+
});
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* Runs `effect` as one activity of the enclosing workflow and records its exit
|
|
129
|
+
* into `self`, returning a previously recorded exit instead when `checkCache`
|
|
130
|
+
* is set. The hold spans the lookup, `effect` and the write, so a parked
|
|
131
|
+
* sibling cannot suspend the run before the continuation starts.
|
|
132
|
+
*/
|
|
133
|
+
const recordHeld = /*#__PURE__*/Effect.fnUntraced(function* (effect, self, checkCache) {
|
|
134
|
+
const engine = yield* EngineTag;
|
|
135
|
+
const instance = yield* InstanceTag;
|
|
136
|
+
const exit = yield* Workflow.wrapActivityResult(Effect.gen(function* () {
|
|
137
|
+
if (checkCache) {
|
|
138
|
+
const cached = yield* engine.deferredResult(self);
|
|
139
|
+
if (Option.isSome(cached)) return cached;
|
|
140
|
+
}
|
|
141
|
+
// `effect` counts on its own activity state, so a durable await inside
|
|
142
|
+
// it waits for its own siblings and not for the hold above. The copy
|
|
143
|
+
// starts unsuspended: a parked arm of an enclosing race leaves that
|
|
144
|
+
// copy marked suspended while only interrupting its own fiber.
|
|
145
|
+
const local = {
|
|
146
|
+
...instance,
|
|
147
|
+
suspended: false,
|
|
148
|
+
activityState: {
|
|
149
|
+
count: 0,
|
|
150
|
+
latch: Latch.makeUnsafe()
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
// A losing branch parked on a durable wait has already exited when the
|
|
154
|
+
// race settles, so this body owns the waits registered beneath it.
|
|
155
|
+
const owned = [];
|
|
156
|
+
awaitOwners.set(local, owned);
|
|
157
|
+
// A parked `effect` interrupts the fiber it runs on. The child fiber
|
|
158
|
+
// keeps that from skipping the suspension handling below.
|
|
159
|
+
const fiber = yield* effect.pipe(Effect.provideService(InstanceTag, local), Effect.onExit(exit => recordExit(engine, instance, self, exit)), Effect.forkChild({
|
|
160
|
+
startImmediately: true
|
|
161
|
+
}));
|
|
162
|
+
return yield* Effect.onInterrupt(Fiber.await(fiber), () => Fiber.interrupt(fiber)).pipe(Effect.map(exit => local.suspended && Exit.isFailure(exit) && Cause.hasInterruptsOnly(exit.cause) ? Option.none() : Option.some(exit)),
|
|
163
|
+
// The waits are over once the body has a result. Otherwise every branch
|
|
164
|
+
// parked, or an enclosing race interrupted the body, and the waits move
|
|
165
|
+
// to the enclosing owner, if any, to be released when that race settles.
|
|
166
|
+
Effect.onExit(result => Effect.sync(() => {
|
|
167
|
+
if (Exit.isSuccess(result) && Option.isSome(result.value)) {
|
|
168
|
+
releaseAwaits(instance, owned);
|
|
169
|
+
} else {
|
|
170
|
+
awaitOwners.get(instance)?.push(...owned);
|
|
171
|
+
}
|
|
172
|
+
})));
|
|
173
|
+
}),
|
|
174
|
+
// Every branch of `effect` parked: release the hold and let the enclosing
|
|
175
|
+
// activities finish before suspending. External preemption does not wait.
|
|
176
|
+
Option.isNone);
|
|
177
|
+
if (Option.isNone(exit)) {
|
|
178
|
+
return yield* Workflow.suspend(instance);
|
|
179
|
+
}
|
|
180
|
+
return yield* exit.value;
|
|
181
|
+
});
|
|
117
182
|
/**
|
|
118
183
|
* Runs effects as a durable race, returning a previously persisted result when
|
|
119
184
|
* present or completing a named deferred with the first result.
|
|
@@ -127,14 +192,7 @@ export const raceAll = options => {
|
|
|
127
192
|
success: options.success,
|
|
128
193
|
error: options.error
|
|
129
194
|
});
|
|
130
|
-
return Effect.
|
|
131
|
-
const engine = yield* EngineTag;
|
|
132
|
-
const exit = yield* engine.deferredResult(deferred);
|
|
133
|
-
if (Option.isSome(exit)) {
|
|
134
|
-
return yield* exit.value;
|
|
135
|
-
}
|
|
136
|
-
return yield* into(Effect.raceAll(options.effects), deferred);
|
|
137
|
-
});
|
|
195
|
+
return recordHeld(Effect.raceAll(options.effects), deferred, true);
|
|
138
196
|
};
|
|
139
197
|
/**
|
|
140
198
|
* Runtime brand identifier for durable deferred tokens.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableDeferred.js","names":[],"sources":["../../src/workflow/DurableDeferred.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"DurableDeferred.js","names":[],"sources":["../../src/workflow/DurableDeferred.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -31,6 +31,14 @@ declare const WorkflowEngine_base: Context.ServiceClass<WorkflowEngine, "effect/
|
|
|
31
31
|
readonly register: <Name extends string, Payload extends Workflow.AnyStructSchema, Success extends Schema.Top, Error extends Schema.Top, R>(workflow: Workflow.Workflow<Name, Payload, Success, Error>, execute: (payload: Payload["Type"], executionId: string) => Effect.Effect<Success["Type"], Error["Type"], R>) => Effect.Effect<void, never, Scope.Scope | Exclude<R, WorkflowEngine | WorkflowInstance | Workflow.Execution<Name> | Scope.Scope> | Payload["DecodingServices"] | Payload["EncodingServices"] | Success["DecodingServices"] | Success["EncodingServices"] | Error["DecodingServices"] | Error["EncodingServices"]>;
|
|
32
32
|
/**
|
|
33
33
|
* Execute a registered workflow.
|
|
34
|
+
*
|
|
35
|
+
* **Details**
|
|
36
|
+
*
|
|
37
|
+
* Unless `discard` is set, a caller outside any workflow waits for the
|
|
38
|
+
* result. While the execution is suspended, the caller retries on
|
|
39
|
+
* `suspendedRetrySchedule`; engines that observe the final result wake it
|
|
40
|
+
* sooner. `ClusterWorkflowEngine` does so only for callers on the runner
|
|
41
|
+
* that owns the execution.
|
|
34
42
|
*/
|
|
35
43
|
readonly execute: <Name extends string, Payload extends Workflow.AnyStructSchema, Success extends Schema.Top, Error extends Schema.Top, const Discard extends boolean = false>(workflow: Workflow.Workflow<Name, Payload, Success, Error>, options: {
|
|
36
44
|
readonly executionId: string;
|
|
@@ -126,8 +134,11 @@ declare const WorkflowInstance_base: Context.ServiceClass<WorkflowInstance, "eff
|
|
|
126
134
|
* here.
|
|
127
135
|
*/
|
|
128
136
|
cause: Cause.Cause<never> | undefined;
|
|
129
|
-
/**
|
|
130
|
-
|
|
137
|
+
/**
|
|
138
|
+
* Deferred names this run waits on, counted per live wait; their
|
|
139
|
+
* completions preempt the run.
|
|
140
|
+
*/
|
|
141
|
+
readonly awaitedDeferreds: Map<string, number>;
|
|
131
142
|
/** Deferred names this run completed itself; their completions need not wake it. */
|
|
132
143
|
readonly completedDeferreds: Set<string>;
|
|
133
144
|
readonly activityState: {
|
|
@@ -198,6 +209,17 @@ export interface Encoded {
|
|
|
198
209
|
readonly interrupt: (workflow: Workflow.Any, executionId: string) => Effect.Effect<void>;
|
|
199
210
|
readonly interruptUnsafe: (workflow: Workflow.Any, executionId: string) => Effect.Effect<void>;
|
|
200
211
|
readonly resume: (workflow: Workflow.Any, executionId: string) => Effect.Effect<void>;
|
|
212
|
+
/**
|
|
213
|
+
* Waits until a suspended execution has a result other than `Suspended`.
|
|
214
|
+
*
|
|
215
|
+
* **Gotchas**
|
|
216
|
+
*
|
|
217
|
+
* External callers race this with their `suspendedRetrySchedule`, so it may
|
|
218
|
+
* never complete when the engine cannot observe the result. Completing while
|
|
219
|
+
* the execution is still suspended skips the sleep and spends a step of that
|
|
220
|
+
* schedule. A hook that keeps completing early makes the caller spin.
|
|
221
|
+
*/
|
|
222
|
+
readonly awaitComplete?: (workflow: Workflow.Any, executionId: string) => Effect.Effect<void>;
|
|
201
223
|
readonly activityExecute: (activity: Activity.Any, attempt: number) => Effect.Effect<Workflow.Result<unknown, unknown>, never, WorkflowInstance>;
|
|
202
224
|
readonly deferredResult: (deferred: DurableDeferred.Any) => Effect.Effect<Option.Option<Exit.Exit<unknown, unknown>>, never, WorkflowInstance>;
|
|
203
225
|
readonly deferredDone: (options: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowEngine.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AACpC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"WorkflowEngine.d.ts","sourceRoot":"","sources":["../../src/workflow/WorkflowEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import * as Cause from "../Cause.js";
|
|
14
14
|
import * as Context from "../Context.js";
|
|
15
|
+
import * as Deferred from "../Deferred.js";
|
|
15
16
|
import * as Effect from "../Effect.js";
|
|
16
17
|
import * as Exit from "../Exit.js";
|
|
17
18
|
import * as Fiber from "../Fiber.js";
|
|
@@ -62,7 +63,7 @@ export class WorkflowInstance extends /*#__PURE__*/Context.Service()("effect/wor
|
|
|
62
63
|
interrupted: false,
|
|
63
64
|
abandoned: false,
|
|
64
65
|
cause: undefined,
|
|
65
|
-
awaitedDeferreds: new
|
|
66
|
+
awaitedDeferreds: new Map(),
|
|
66
67
|
completedDeferreds: new Set(),
|
|
67
68
|
activityState: {
|
|
68
69
|
count: 0,
|
|
@@ -172,7 +173,8 @@ export const makeUnsafe = options => WorkflowEngine.of({
|
|
|
172
173
|
return yield* wrapped.exit;
|
|
173
174
|
}
|
|
174
175
|
sleep ??= (yield* Schedule.toStepWithSleep(suspendedRetrySchedule))(void 0).pipe(Effect.catch(() => Effect.die(`${self._tag}.execute: suspendedRetrySchedule exhausted`)));
|
|
175
|
-
|
|
176
|
+
// Completion wakes the caller early; the schedule is the fallback.
|
|
177
|
+
yield* options.awaitComplete ? Effect.raceFirst(sleep, options.awaitComplete(self, executionId)) : sleep;
|
|
176
178
|
}
|
|
177
179
|
}),
|
|
178
180
|
poll: options.poll,
|
|
@@ -290,6 +292,8 @@ export const layerMemory = /*#__PURE__*/Layer.effect(WorkflowEngine)(/*#__PURE__
|
|
|
290
292
|
return Effect.void;
|
|
291
293
|
}
|
|
292
294
|
return Effect.forkIn(resume(state.parent), scope);
|
|
295
|
+
}), Effect.onExit(exit => {
|
|
296
|
+
return Exit.isSuccess(exit) && exit.value._tag === "Complete" ? Deferred.succeed(state.done, void 0) : Effect.void;
|
|
293
297
|
}), Effect.forkIn(entry.scope));
|
|
294
298
|
});
|
|
295
299
|
const deferredResults = new Map();
|
|
@@ -316,6 +320,7 @@ export const layerMemory = /*#__PURE__*/Layer.effect(WorkflowEngine)(/*#__PURE__
|
|
|
316
320
|
interrupted: false,
|
|
317
321
|
resumeRequested: false,
|
|
318
322
|
fiber: undefined,
|
|
323
|
+
done: Deferred.makeUnsafe(),
|
|
319
324
|
parent: options.parent?.executionId
|
|
320
325
|
};
|
|
321
326
|
executions.set(options.executionId, state);
|
|
@@ -331,6 +336,10 @@ export const layerMemory = /*#__PURE__*/Layer.effect(WorkflowEngine)(/*#__PURE__
|
|
|
331
336
|
}
|
|
332
337
|
return yield* exit;
|
|
333
338
|
}),
|
|
339
|
+
awaitComplete: (_workflow, executionId) => Effect.suspend(() => {
|
|
340
|
+
const state = executions.get(executionId);
|
|
341
|
+
return state ? Deferred.await(state.done) : Effect.never;
|
|
342
|
+
}),
|
|
334
343
|
interrupt: Effect.fnUntraced(function* (_workflow, executionId) {
|
|
335
344
|
const state = executions.get(executionId);
|
|
336
345
|
if (!state) return;
|
|
@@ -368,7 +377,8 @@ export const layerMemory = /*#__PURE__*/Layer.effect(WorkflowEngine)(/*#__PURE__
|
|
|
368
377
|
const activityInstance = WorkflowInstance.initial(instance.workflow, instance.executionId);
|
|
369
378
|
activityInstance.interrupted = instance.interrupted;
|
|
370
379
|
return yield* activity.executeEncoded.pipe(Workflow.intoResult, Effect.provideService(WorkflowInstance, activityInstance), Effect.onExit(exit => {
|
|
371
|
-
|
|
380
|
+
// A preempted activity must run again on the next replay.
|
|
381
|
+
state.exit = Exit.isFailure(exit) && Cause.hasInterruptsOnly(exit.cause) ? undefined : exit;
|
|
372
382
|
return Effect.void;
|
|
373
383
|
}));
|
|
374
384
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowEngine.js","names":[],"sources":["../../src/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"WorkflowEngine.js","names":[],"sources":["../../src/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|