@smthrs/flow 0.0.0-stage → 1.0.0-rc.13
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/CHANGELOG.md +161 -0
- package/LICENSE +21 -0
- package/README.md +212 -2
- package/THIRD_PARTY_NOTICES.md +52 -0
- package/dist/cjs/Action/Action.d.ts +250 -0
- package/dist/cjs/Action/Action.d.ts.map +1 -0
- package/dist/cjs/Action/Action.js +42 -0
- package/dist/cjs/Action/Action.js.map +7 -0
- package/dist/cjs/Action/AttemptTimedOut.d.ts +33 -0
- package/dist/cjs/Action/AttemptTimedOut.d.ts.map +1 -0
- package/dist/cjs/Action/AttemptTimedOut.js +51 -0
- package/dist/cjs/Action/AttemptTimedOut.js.map +7 -0
- package/dist/cjs/Action/BoundaryMode.d.ts +29 -0
- package/dist/cjs/Action/BoundaryMode.d.ts.map +1 -0
- package/dist/cjs/Action/BoundaryMode.js +36 -0
- package/dist/cjs/Action/BoundaryMode.js.map +7 -0
- package/dist/cjs/Action/CacheEnvironment.d.ts +158 -0
- package/dist/cjs/Action/CacheEnvironment.d.ts.map +1 -0
- package/dist/cjs/Action/CacheEnvironment.js +57 -0
- package/dist/cjs/Action/CacheEnvironment.js.map +7 -0
- package/dist/cjs/Action/ConcurrentKeylessDispatch.d.ts +34 -0
- package/dist/cjs/Action/ConcurrentKeylessDispatch.d.ts.map +1 -0
- package/dist/cjs/Action/ConcurrentKeylessDispatch.js +46 -0
- package/dist/cjs/Action/ConcurrentKeylessDispatch.js.map +7 -0
- package/dist/cjs/Action/Context.d.ts +131 -0
- package/dist/cjs/Action/Context.d.ts.map +1 -0
- package/dist/cjs/Action/Context.js +68 -0
- package/dist/cjs/Action/Context.js.map +7 -0
- package/dist/cjs/Action/DuplicateImplementation.d.ts +20 -0
- package/dist/cjs/Action/DuplicateImplementation.d.ts.map +1 -0
- package/dist/cjs/Action/DuplicateImplementation.js +46 -0
- package/dist/cjs/Action/DuplicateImplementation.js.map +7 -0
- package/dist/cjs/Action/FileBoundary.d.ts +59 -0
- package/dist/cjs/Action/FileBoundary.d.ts.map +1 -0
- package/dist/cjs/Action/FileBoundary.js +81 -0
- package/dist/cjs/Action/FileBoundary.js.map +7 -0
- package/dist/cjs/Action/FileInput.d.ts +28 -0
- package/dist/cjs/Action/FileInput.d.ts.map +1 -0
- package/dist/cjs/Action/FileInput.js +42 -0
- package/dist/cjs/Action/FileInput.js.map +7 -0
- package/dist/cjs/Action/Filegroup.d.ts +16 -0
- package/dist/cjs/Action/Filegroup.d.ts.map +1 -0
- package/dist/cjs/Action/Filegroup.js +27 -0
- package/dist/cjs/Action/Filegroup.js.map +7 -0
- package/dist/cjs/Action/Glob.d.ts +8 -0
- package/dist/cjs/Action/Glob.d.ts.map +1 -0
- package/dist/cjs/Action/Glob.js +28 -0
- package/dist/cjs/Action/Glob.js.map +7 -0
- package/dist/cjs/Action/ImplementationVersionMismatch.d.ts +26 -0
- package/dist/cjs/Action/ImplementationVersionMismatch.d.ts.map +1 -0
- package/dist/cjs/Action/ImplementationVersionMismatch.js +45 -0
- package/dist/cjs/Action/ImplementationVersionMismatch.js.map +7 -0
- package/dist/cjs/Action/Implementations.d.ts +114 -0
- package/dist/cjs/Action/Implementations.d.ts.map +1 -0
- package/dist/cjs/Action/Implementations.js +65 -0
- package/dist/cjs/Action/Implementations.js.map +7 -0
- package/dist/cjs/Action/InfraInterrupt.d.ts +26 -0
- package/dist/cjs/Action/InfraInterrupt.d.ts.map +1 -0
- package/dist/cjs/Action/InfraInterrupt.js +46 -0
- package/dist/cjs/Action/InfraInterrupt.js.map +7 -0
- package/dist/cjs/Action/InfraInterruptRetriesExhausted.d.ts +33 -0
- package/dist/cjs/Action/InfraInterruptRetriesExhausted.d.ts.map +1 -0
- package/dist/cjs/Action/InfraInterruptRetriesExhausted.js +54 -0
- package/dist/cjs/Action/InfraInterruptRetriesExhausted.js.map +7 -0
- package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts +26 -0
- package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts.map +1 -0
- package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.js +47 -0
- package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.js.map +7 -0
- package/dist/cjs/Action/StepIdentity.d.ts +153 -0
- package/dist/cjs/Action/StepIdentity.d.ts.map +1 -0
- package/dist/cjs/Action/StepIdentity.js +75 -0
- package/dist/cjs/Action/StepIdentity.js.map +7 -0
- package/dist/cjs/Action/TreeArtifact.d.ts +8 -0
- package/dist/cjs/Action/TreeArtifact.d.ts.map +1 -0
- package/dist/cjs/Action/TreeArtifact.js +25 -0
- package/dist/cjs/Action/TreeArtifact.js.map +7 -0
- package/dist/cjs/Action/TypeId.d.ts +8 -0
- package/dist/cjs/Action/TypeId.d.ts.map +1 -0
- package/dist/cjs/Action/TypeId.js +25 -0
- package/dist/cjs/Action/TypeId.js.map +7 -0
- package/dist/cjs/Action/UncanonicalIdempotencyKey.d.ts +32 -0
- package/dist/cjs/Action/UncanonicalIdempotencyKey.d.ts.map +1 -0
- package/dist/cjs/Action/UncanonicalIdempotencyKey.js +51 -0
- package/dist/cjs/Action/UncanonicalIdempotencyKey.js.map +7 -0
- package/dist/cjs/Action/idempotencyKey.d.ts +21 -0
- package/dist/cjs/Action/idempotencyKey.d.ts.map +1 -0
- package/dist/cjs/Action/idempotencyKey.js +59 -0
- package/dist/cjs/Action/idempotencyKey.js.map +7 -0
- package/dist/cjs/Action/index.d.ts +29 -0
- package/dist/cjs/Action/index.d.ts.map +1 -0
- package/dist/cjs/Action/index.js +60 -0
- package/dist/cjs/Action/index.js.map +7 -0
- package/dist/cjs/Action/make.d.ts +128 -0
- package/dist/cjs/Action/make.d.ts.map +1 -0
- package/dist/cjs/Action/make.js +387 -0
- package/dist/cjs/Action/make.js.map +7 -0
- package/dist/cjs/Action/raceAll.d.ts +21 -0
- package/dist/cjs/Action/raceAll.d.ts.map +1 -0
- package/dist/cjs/Action/raceAll.js +46 -0
- package/dist/cjs/Action/raceAll.js.map +7 -0
- package/dist/cjs/Action/retry.d.ts +19 -0
- package/dist/cjs/Action/retry.d.ts.map +1 -0
- package/dist/cjs/Action/retry.js +75 -0
- package/dist/cjs/Action/retry.js.map +7 -0
- package/dist/cjs/Deadline.d.ts +110 -0
- package/dist/cjs/Deadline.d.ts.map +1 -0
- package/dist/cjs/Deadline.js +112 -0
- package/dist/cjs/Deadline.js.map +7 -0
- package/dist/cjs/DurableClock.d.ts +60 -0
- package/dist/cjs/DurableClock.d.ts.map +1 -0
- package/dist/cjs/DurableClock.js +107 -0
- package/dist/cjs/DurableClock.js.map +7 -0
- package/dist/cjs/DurableDeferred.d.ts +311 -0
- package/dist/cjs/DurableDeferred.d.ts.map +1 -0
- package/dist/cjs/DurableDeferred.js +322 -0
- package/dist/cjs/DurableDeferred.js.map +7 -0
- package/dist/cjs/DurableQueue.d.ts +160 -0
- package/dist/cjs/DurableQueue.d.ts.map +1 -0
- package/dist/cjs/DurableQueue.js +229 -0
- package/dist/cjs/DurableQueue.js.map +7 -0
- package/dist/cjs/ExternalJob.d.ts +179 -0
- package/dist/cjs/ExternalJob.d.ts.map +1 -0
- package/dist/cjs/ExternalJob.js +339 -0
- package/dist/cjs/ExternalJob.js.map +7 -0
- package/dist/cjs/Fault.d.ts +131 -0
- package/dist/cjs/Fault.d.ts.map +1 -0
- package/dist/cjs/Fault.js +157 -0
- package/dist/cjs/Fault.js.map +7 -0
- package/dist/cjs/Flow/Annotations.d.ts +245 -0
- package/dist/cjs/Flow/Annotations.d.ts.map +1 -0
- package/dist/cjs/Flow/Annotations.js +72 -0
- package/dist/cjs/Flow/Annotations.js.map +7 -0
- package/dist/cjs/Flow/CapabilityCeiling.d.ts +21 -0
- package/dist/cjs/Flow/CapabilityCeiling.d.ts.map +1 -0
- package/dist/cjs/Flow/CapabilityCeiling.js +49 -0
- package/dist/cjs/Flow/CapabilityCeiling.js.map +7 -0
- package/dist/cjs/Flow/DeadlineExceeded.d.ts +33 -0
- package/dist/cjs/Flow/DeadlineExceeded.d.ts.map +1 -0
- package/dist/cjs/Flow/DeadlineExceeded.js +52 -0
- package/dist/cjs/Flow/DeadlineExceeded.js.map +7 -0
- package/dist/cjs/Flow/ExecutionIdRequired.d.ts +25 -0
- package/dist/cjs/Flow/ExecutionIdRequired.d.ts.map +1 -0
- package/dist/cjs/Flow/ExecutionIdRequired.js +46 -0
- package/dist/cjs/Flow/ExecutionIdRequired.js.map +7 -0
- package/dist/cjs/Flow/ExecutionIds.d.ts +80 -0
- package/dist/cjs/Flow/ExecutionIds.d.ts.map +1 -0
- package/dist/cjs/Flow/ExecutionIds.js +66 -0
- package/dist/cjs/Flow/ExecutionIds.js.map +7 -0
- package/dist/cjs/Flow/Flow.d.ts +422 -0
- package/dist/cjs/Flow/Flow.d.ts.map +1 -0
- package/dist/cjs/Flow/Flow.js +17 -0
- package/dist/cjs/Flow/Flow.js.map +7 -0
- package/dist/cjs/Flow/MaxRoundsExceeded.d.ts +35 -0
- package/dist/cjs/Flow/MaxRoundsExceeded.d.ts.map +1 -0
- package/dist/cjs/Flow/MaxRoundsExceeded.js +50 -0
- package/dist/cjs/Flow/MaxRoundsExceeded.js.map +7 -0
- package/dist/cjs/Flow/Outcome.d.ts +162 -0
- package/dist/cjs/Flow/Outcome.d.ts.map +1 -0
- package/dist/cjs/Flow/Outcome.js +80 -0
- package/dist/cjs/Flow/Outcome.js.map +7 -0
- package/dist/cjs/Flow/Result.d.ts +186 -0
- package/dist/cjs/Flow/Result.d.ts.map +1 -0
- package/dist/cjs/Flow/Result.js +159 -0
- package/dist/cjs/Flow/Result.js.map +7 -0
- package/dist/cjs/Flow/Runtime.d.ts +98 -0
- package/dist/cjs/Flow/Runtime.d.ts.map +1 -0
- package/dist/cjs/Flow/Runtime.js +186 -0
- package/dist/cjs/Flow/Runtime.js.map +7 -0
- package/dist/cjs/Flow/TypeId.d.ts +8 -0
- package/dist/cjs/Flow/TypeId.d.ts.map +1 -0
- package/dist/cjs/Flow/TypeId.js +25 -0
- package/dist/cjs/Flow/TypeId.js.map +7 -0
- package/dist/cjs/Flow/index.d.ts +17 -0
- package/dist/cjs/Flow/index.d.ts.map +1 -0
- package/dist/cjs/Flow/index.js +29 -0
- package/dist/cjs/Flow/index.js.map +7 -0
- package/dist/cjs/Flow/internal.d.ts +34 -0
- package/dist/cjs/Flow/internal.d.ts.map +1 -0
- package/dist/cjs/Flow/internal.js +187 -0
- package/dist/cjs/Flow/internal.js.map +7 -0
- package/dist/cjs/Flow/make.d.ts +149 -0
- package/dist/cjs/Flow/make.d.ts.map +1 -0
- package/dist/cjs/Flow/make.js +107 -0
- package/dist/cjs/Flow/make.js.map +7 -0
- package/dist/cjs/FlowRuntime/CancelRequestFailed.d.ts +55 -0
- package/dist/cjs/FlowRuntime/CancelRequestFailed.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/CancelRequestFailed.js +51 -0
- package/dist/cjs/FlowRuntime/CancelRequestFailed.js.map +7 -0
- package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.d.ts +23 -0
- package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.js +55 -0
- package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.js.map +7 -0
- package/dist/cjs/FlowRuntime/FlowCycleDetected.d.ts +28 -0
- package/dist/cjs/FlowRuntime/FlowCycleDetected.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/FlowCycleDetected.js +49 -0
- package/dist/cjs/FlowRuntime/FlowCycleDetected.js.map +7 -0
- package/dist/cjs/FlowRuntime/FlowExecutionNotFound.d.ts +38 -0
- package/dist/cjs/FlowRuntime/FlowExecutionNotFound.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/FlowExecutionNotFound.js +53 -0
- package/dist/cjs/FlowRuntime/FlowExecutionNotFound.js.map +7 -0
- package/dist/cjs/FlowRuntime/FlowInstance.d.ts +115 -0
- package/dist/cjs/FlowRuntime/FlowInstance.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/FlowInstance.js +37 -0
- package/dist/cjs/FlowRuntime/FlowInstance.js.map +7 -0
- package/dist/cjs/FlowRuntime/FlowRuntime.d.ts +204 -0
- package/dist/cjs/FlowRuntime/FlowRuntime.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/FlowRuntime.js +37 -0
- package/dist/cjs/FlowRuntime/FlowRuntime.js.map +7 -0
- package/dist/cjs/FlowRuntime/NodeRecord.d.ts +177 -0
- package/dist/cjs/FlowRuntime/NodeRecord.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/NodeRecord.js +17 -0
- package/dist/cjs/FlowRuntime/NodeRecord.js.map +7 -0
- package/dist/cjs/FlowRuntime/WaitingAnnotation.d.ts +69 -0
- package/dist/cjs/FlowRuntime/WaitingAnnotation.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/WaitingAnnotation.js +53 -0
- package/dist/cjs/FlowRuntime/WaitingAnnotation.js.map +7 -0
- package/dist/cjs/FlowRuntime/index.d.ts +14 -0
- package/dist/cjs/FlowRuntime/index.d.ts.map +1 -0
- package/dist/cjs/FlowRuntime/index.js +26 -0
- package/dist/cjs/FlowRuntime/index.js.map +7 -0
- package/dist/cjs/Graph.d.ts +325 -0
- package/dist/cjs/Graph.d.ts.map +1 -0
- package/dist/cjs/Graph.js +1020 -0
- package/dist/cjs/Graph.js.map +7 -0
- package/dist/cjs/HumanTask.d.ts +442 -0
- package/dist/cjs/HumanTask.d.ts.map +1 -0
- package/dist/cjs/HumanTask.js +422 -0
- package/dist/cjs/HumanTask.js.map +7 -0
- package/dist/cjs/Interpreter.d.ts +223 -0
- package/dist/cjs/Interpreter.d.ts.map +1 -0
- package/dist/cjs/Interpreter.js +919 -0
- package/dist/cjs/Interpreter.js.map +7 -0
- package/dist/cjs/Poll.d.ts +240 -0
- package/dist/cjs/Poll.d.ts.map +1 -0
- package/dist/cjs/Poll.js +154 -0
- package/dist/cjs/Poll.js.map +7 -0
- package/dist/cjs/RetryPolicy.d.ts +273 -0
- package/dist/cjs/RetryPolicy.d.ts.map +1 -0
- package/dist/cjs/RetryPolicy.js +251 -0
- package/dist/cjs/RetryPolicy.js.map +7 -0
- package/dist/cjs/Sleep.d.ts +98 -0
- package/dist/cjs/Sleep.d.ts.map +1 -0
- package/dist/cjs/Sleep.js +141 -0
- package/dist/cjs/Sleep.js.map +7 -0
- package/dist/cjs/Stall.d.ts +173 -0
- package/dist/cjs/Stall.d.ts.map +1 -0
- package/dist/cjs/Stall.js +92 -0
- package/dist/cjs/Stall.js.map +7 -0
- package/dist/cjs/WaitFor.d.ts +109 -0
- package/dist/cjs/WaitFor.d.ts.map +1 -0
- package/dist/cjs/WaitFor.js +117 -0
- package/dist/cjs/WaitFor.js.map +7 -0
- package/dist/cjs/index.d.ts +107 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +69 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/internal/BoundedJson.d.ts +48 -0
- package/dist/cjs/internal/BoundedJson.d.ts.map +1 -0
- package/dist/cjs/internal/BoundedJson.js +96 -0
- package/dist/cjs/internal/BoundedJson.js.map +7 -0
- package/dist/cjs/internal/DeclarationSite.d.ts +135 -0
- package/dist/cjs/internal/DeclarationSite.d.ts.map +1 -0
- package/dist/cjs/internal/DeclarationSite.js +89 -0
- package/dist/cjs/internal/DeclarationSite.js.map +7 -0
- package/dist/cjs/internal/Declarations.d.ts +35 -0
- package/dist/cjs/internal/Declarations.d.ts.map +1 -0
- package/dist/cjs/internal/Declarations.js +50 -0
- package/dist/cjs/internal/Declarations.js.map +7 -0
- package/dist/cjs/internal/ExecutionMiddleware.d.ts +21 -0
- package/dist/cjs/internal/ExecutionMiddleware.d.ts.map +1 -0
- package/dist/cjs/internal/ExecutionMiddleware.js +39 -0
- package/dist/cjs/internal/ExecutionMiddleware.js.map +7 -0
- package/dist/cjs/internal/JsonSchemaSubset.d.ts +133 -0
- package/dist/cjs/internal/JsonSchemaSubset.d.ts.map +1 -0
- package/dist/cjs/internal/JsonSchemaSubset.js +229 -0
- package/dist/cjs/internal/JsonSchemaSubset.js.map +7 -0
- package/dist/cjs/internal/OutcomeMarker.d.ts +18 -0
- package/dist/cjs/internal/OutcomeMarker.d.ts.map +1 -0
- package/dist/cjs/internal/OutcomeMarker.js +27 -0
- package/dist/cjs/internal/OutcomeMarker.js.map +7 -0
- package/dist/cjs/package.json +1 -0
- package/dist/esm/Action/Action.d.ts +250 -0
- package/dist/esm/Action/Action.d.ts.map +1 -0
- package/dist/esm/Action/Action.js +30 -0
- package/dist/esm/Action/Action.js.map +1 -0
- package/dist/esm/Action/AttemptTimedOut.d.ts +33 -0
- package/dist/esm/Action/AttemptTimedOut.d.ts.map +1 -0
- package/dist/esm/Action/AttemptTimedOut.js +32 -0
- package/dist/esm/Action/AttemptTimedOut.js.map +1 -0
- package/dist/esm/Action/BoundaryMode.d.ts +29 -0
- package/dist/esm/Action/BoundaryMode.d.ts.map +1 -0
- package/dist/esm/Action/BoundaryMode.js +23 -0
- package/dist/esm/Action/BoundaryMode.js.map +1 -0
- package/dist/esm/Action/CacheEnvironment.d.ts +158 -0
- package/dist/esm/Action/CacheEnvironment.d.ts.map +1 -0
- package/dist/esm/Action/CacheEnvironment.js +130 -0
- package/dist/esm/Action/CacheEnvironment.js.map +1 -0
- package/dist/esm/Action/ConcurrentKeylessDispatch.d.ts +34 -0
- package/dist/esm/Action/ConcurrentKeylessDispatch.d.ts.map +1 -0
- package/dist/esm/Action/ConcurrentKeylessDispatch.js +33 -0
- package/dist/esm/Action/ConcurrentKeylessDispatch.js.map +1 -0
- package/dist/esm/Action/Context.d.ts +131 -0
- package/dist/esm/Action/Context.d.ts.map +1 -0
- package/dist/esm/Action/Context.js +99 -0
- package/dist/esm/Action/Context.js.map +1 -0
- package/dist/esm/Action/DuplicateImplementation.d.ts +20 -0
- package/dist/esm/Action/DuplicateImplementation.d.ts.map +1 -0
- package/dist/esm/Action/DuplicateImplementation.js +20 -0
- package/dist/esm/Action/DuplicateImplementation.js.map +1 -0
- package/dist/esm/Action/FileBoundary.d.ts +59 -0
- package/dist/esm/Action/FileBoundary.d.ts.map +1 -0
- package/dist/esm/Action/FileBoundary.js +60 -0
- package/dist/esm/Action/FileBoundary.js.map +1 -0
- package/dist/esm/Action/FileInput.d.ts +28 -0
- package/dist/esm/Action/FileInput.d.ts.map +1 -0
- package/dist/esm/Action/FileInput.js +32 -0
- package/dist/esm/Action/FileInput.js.map +1 -0
- package/dist/esm/Action/Filegroup.d.ts +16 -0
- package/dist/esm/Action/Filegroup.d.ts.map +1 -0
- package/dist/esm/Action/Filegroup.js +15 -0
- package/dist/esm/Action/Filegroup.js.map +1 -0
- package/dist/esm/Action/Glob.d.ts +8 -0
- package/dist/esm/Action/Glob.d.ts.map +1 -0
- package/dist/esm/Action/Glob.js +7 -0
- package/dist/esm/Action/Glob.js.map +1 -0
- package/dist/esm/Action/ImplementationVersionMismatch.d.ts +26 -0
- package/dist/esm/Action/ImplementationVersionMismatch.d.ts.map +1 -0
- package/dist/esm/Action/ImplementationVersionMismatch.js +24 -0
- package/dist/esm/Action/ImplementationVersionMismatch.js.map +1 -0
- package/dist/esm/Action/Implementations.d.ts +114 -0
- package/dist/esm/Action/Implementations.d.ts.map +1 -0
- package/dist/esm/Action/Implementations.js +94 -0
- package/dist/esm/Action/Implementations.js.map +1 -0
- package/dist/esm/Action/InfraInterrupt.d.ts +26 -0
- package/dist/esm/Action/InfraInterrupt.d.ts.map +1 -0
- package/dist/esm/Action/InfraInterrupt.js +25 -0
- package/dist/esm/Action/InfraInterrupt.js.map +1 -0
- package/dist/esm/Action/InfraInterruptRetriesExhausted.d.ts +33 -0
- package/dist/esm/Action/InfraInterruptRetriesExhausted.d.ts.map +1 -0
- package/dist/esm/Action/InfraInterruptRetriesExhausted.js +32 -0
- package/dist/esm/Action/InfraInterruptRetriesExhausted.js.map +1 -0
- package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts +26 -0
- package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts.map +1 -0
- package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.js +25 -0
- package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.js.map +1 -0
- package/dist/esm/Action/StepIdentity.d.ts +153 -0
- package/dist/esm/Action/StepIdentity.d.ts.map +1 -0
- package/dist/esm/Action/StepIdentity.js +139 -0
- package/dist/esm/Action/StepIdentity.js.map +1 -0
- package/dist/esm/Action/TreeArtifact.d.ts +8 -0
- package/dist/esm/Action/TreeArtifact.d.ts.map +1 -0
- package/dist/esm/Action/TreeArtifact.js +7 -0
- package/dist/esm/Action/TreeArtifact.js.map +1 -0
- package/dist/esm/Action/TypeId.d.ts +8 -0
- package/dist/esm/Action/TypeId.d.ts.map +1 -0
- package/dist/esm/Action/TypeId.js +9 -0
- package/dist/esm/Action/TypeId.js.map +1 -0
- package/dist/esm/Action/UncanonicalIdempotencyKey.d.ts +32 -0
- package/dist/esm/Action/UncanonicalIdempotencyKey.d.ts.map +1 -0
- package/dist/esm/Action/UncanonicalIdempotencyKey.js +31 -0
- package/dist/esm/Action/UncanonicalIdempotencyKey.js.map +1 -0
- package/dist/esm/Action/idempotencyKey.d.ts +21 -0
- package/dist/esm/Action/idempotencyKey.d.ts.map +1 -0
- package/dist/esm/Action/idempotencyKey.js +50 -0
- package/dist/esm/Action/idempotencyKey.js.map +1 -0
- package/dist/esm/Action/index.d.ts +29 -0
- package/dist/esm/Action/index.d.ts.map +1 -0
- package/dist/esm/Action/index.js +30 -0
- package/dist/esm/Action/index.js.map +1 -0
- package/dist/esm/Action/make.d.ts +128 -0
- package/dist/esm/Action/make.d.ts.map +1 -0
- package/dist/esm/Action/make.js +413 -0
- package/dist/esm/Action/make.js.map +1 -0
- package/dist/esm/Action/raceAll.d.ts +21 -0
- package/dist/esm/Action/raceAll.d.ts.map +1 -0
- package/dist/esm/Action/raceAll.js +20 -0
- package/dist/esm/Action/raceAll.js.map +1 -0
- package/dist/esm/Action/retry.d.ts +19 -0
- package/dist/esm/Action/retry.d.ts.map +1 -0
- package/dist/esm/Action/retry.js +72 -0
- package/dist/esm/Action/retry.js.map +1 -0
- package/dist/esm/Deadline.d.ts +110 -0
- package/dist/esm/Deadline.d.ts.map +1 -0
- package/dist/esm/Deadline.js +164 -0
- package/dist/esm/Deadline.js.map +1 -0
- package/dist/esm/DurableClock.d.ts +60 -0
- package/dist/esm/DurableClock.d.ts.map +1 -0
- package/dist/esm/DurableClock.js +122 -0
- package/dist/esm/DurableClock.js.map +1 -0
- package/dist/esm/DurableDeferred.d.ts +311 -0
- package/dist/esm/DurableDeferred.d.ts.map +1 -0
- package/dist/esm/DurableDeferred.js +357 -0
- package/dist/esm/DurableDeferred.js.map +1 -0
- package/dist/esm/DurableQueue.d.ts +160 -0
- package/dist/esm/DurableQueue.d.ts.map +1 -0
- package/dist/esm/DurableQueue.js +303 -0
- package/dist/esm/DurableQueue.js.map +1 -0
- package/dist/esm/ExternalJob.d.ts +179 -0
- package/dist/esm/ExternalJob.d.ts.map +1 -0
- package/dist/esm/ExternalJob.js +296 -0
- package/dist/esm/ExternalJob.js.map +1 -0
- package/dist/esm/Fault.d.ts +131 -0
- package/dist/esm/Fault.d.ts.map +1 -0
- package/dist/esm/Fault.js +198 -0
- package/dist/esm/Fault.js.map +1 -0
- package/dist/esm/Flow/Annotations.d.ts +245 -0
- package/dist/esm/Flow/Annotations.d.ts.map +1 -0
- package/dist/esm/Flow/Annotations.js +110 -0
- package/dist/esm/Flow/Annotations.js.map +1 -0
- package/dist/esm/Flow/CapabilityCeiling.d.ts +21 -0
- package/dist/esm/Flow/CapabilityCeiling.d.ts.map +1 -0
- package/dist/esm/Flow/CapabilityCeiling.js +27 -0
- package/dist/esm/Flow/CapabilityCeiling.js.map +1 -0
- package/dist/esm/Flow/DeadlineExceeded.d.ts +33 -0
- package/dist/esm/Flow/DeadlineExceeded.d.ts.map +1 -0
- package/dist/esm/Flow/DeadlineExceeded.js +34 -0
- package/dist/esm/Flow/DeadlineExceeded.js.map +1 -0
- package/dist/esm/Flow/ExecutionIdRequired.d.ts +25 -0
- package/dist/esm/Flow/ExecutionIdRequired.d.ts.map +1 -0
- package/dist/esm/Flow/ExecutionIdRequired.js +30 -0
- package/dist/esm/Flow/ExecutionIdRequired.js.map +1 -0
- package/dist/esm/Flow/ExecutionIds.d.ts +80 -0
- package/dist/esm/Flow/ExecutionIds.d.ts.map +1 -0
- package/dist/esm/Flow/ExecutionIds.js +91 -0
- package/dist/esm/Flow/ExecutionIds.js.map +1 -0
- package/dist/esm/Flow/Flow.d.ts +422 -0
- package/dist/esm/Flow/Flow.d.ts.map +1 -0
- package/dist/esm/Flow/Flow.js +3 -0
- package/dist/esm/Flow/Flow.js.map +1 -0
- package/dist/esm/Flow/MaxRoundsExceeded.d.ts +35 -0
- package/dist/esm/Flow/MaxRoundsExceeded.d.ts.map +1 -0
- package/dist/esm/Flow/MaxRoundsExceeded.js +34 -0
- package/dist/esm/Flow/MaxRoundsExceeded.js.map +1 -0
- package/dist/esm/Flow/Outcome.d.ts +162 -0
- package/dist/esm/Flow/Outcome.d.ts.map +1 -0
- package/dist/esm/Flow/Outcome.js +115 -0
- package/dist/esm/Flow/Outcome.js.map +1 -0
- package/dist/esm/Flow/Result.d.ts +186 -0
- package/dist/esm/Flow/Result.d.ts.map +1 -0
- package/dist/esm/Flow/Result.js +171 -0
- package/dist/esm/Flow/Result.js.map +1 -0
- package/dist/esm/Flow/Runtime.d.ts +98 -0
- package/dist/esm/Flow/Runtime.d.ts.map +1 -0
- package/dist/esm/Flow/Runtime.js +252 -0
- package/dist/esm/Flow/Runtime.js.map +1 -0
- package/dist/esm/Flow/TypeId.d.ts +8 -0
- package/dist/esm/Flow/TypeId.d.ts.map +1 -0
- package/dist/esm/Flow/TypeId.js +9 -0
- package/dist/esm/Flow/TypeId.js.map +1 -0
- package/dist/esm/Flow/index.d.ts +17 -0
- package/dist/esm/Flow/index.d.ts.map +1 -0
- package/dist/esm/Flow/index.js +18 -0
- package/dist/esm/Flow/index.js.map +1 -0
- package/dist/esm/Flow/internal.d.ts +34 -0
- package/dist/esm/Flow/internal.d.ts.map +1 -0
- package/dist/esm/Flow/internal.js +149 -0
- package/dist/esm/Flow/internal.js.map +1 -0
- package/dist/esm/Flow/make.d.ts +149 -0
- package/dist/esm/Flow/make.d.ts.map +1 -0
- package/dist/esm/Flow/make.js +111 -0
- package/dist/esm/Flow/make.js.map +1 -0
- package/dist/esm/FlowRuntime/CancelRequestFailed.d.ts +55 -0
- package/dist/esm/FlowRuntime/CancelRequestFailed.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/CancelRequestFailed.js +53 -0
- package/dist/esm/FlowRuntime/CancelRequestFailed.js.map +1 -0
- package/dist/esm/FlowRuntime/ExecutionIdentityConflict.d.ts +23 -0
- package/dist/esm/FlowRuntime/ExecutionIdentityConflict.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/ExecutionIdentityConflict.js +24 -0
- package/dist/esm/FlowRuntime/ExecutionIdentityConflict.js.map +1 -0
- package/dist/esm/FlowRuntime/FlowCycleDetected.d.ts +28 -0
- package/dist/esm/FlowRuntime/FlowCycleDetected.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/FlowCycleDetected.js +35 -0
- package/dist/esm/FlowRuntime/FlowCycleDetected.js.map +1 -0
- package/dist/esm/FlowRuntime/FlowExecutionNotFound.d.ts +38 -0
- package/dist/esm/FlowRuntime/FlowExecutionNotFound.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/FlowExecutionNotFound.js +40 -0
- package/dist/esm/FlowRuntime/FlowExecutionNotFound.js.map +1 -0
- package/dist/esm/FlowRuntime/FlowInstance.d.ts +115 -0
- package/dist/esm/FlowRuntime/FlowInstance.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/FlowInstance.js +24 -0
- package/dist/esm/FlowRuntime/FlowInstance.js.map +1 -0
- package/dist/esm/FlowRuntime/FlowRuntime.d.ts +204 -0
- package/dist/esm/FlowRuntime/FlowRuntime.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/FlowRuntime.js +34 -0
- package/dist/esm/FlowRuntime/FlowRuntime.js.map +1 -0
- package/dist/esm/FlowRuntime/NodeRecord.d.ts +177 -0
- package/dist/esm/FlowRuntime/NodeRecord.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/NodeRecord.js +21 -0
- package/dist/esm/FlowRuntime/NodeRecord.js.map +1 -0
- package/dist/esm/FlowRuntime/WaitingAnnotation.d.ts +69 -0
- package/dist/esm/FlowRuntime/WaitingAnnotation.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/WaitingAnnotation.js +53 -0
- package/dist/esm/FlowRuntime/WaitingAnnotation.js.map +1 -0
- package/dist/esm/FlowRuntime/index.d.ts +14 -0
- package/dist/esm/FlowRuntime/index.d.ts.map +1 -0
- package/dist/esm/FlowRuntime/index.js +15 -0
- package/dist/esm/FlowRuntime/index.js.map +1 -0
- package/dist/esm/Graph.d.ts +325 -0
- package/dist/esm/Graph.d.ts.map +1 -0
- package/dist/esm/Graph.js +1485 -0
- package/dist/esm/Graph.js.map +1 -0
- package/dist/esm/HumanTask.d.ts +442 -0
- package/dist/esm/HumanTask.d.ts.map +1 -0
- package/dist/esm/HumanTask.js +810 -0
- package/dist/esm/HumanTask.js.map +1 -0
- package/dist/esm/Interpreter.d.ts +223 -0
- package/dist/esm/Interpreter.d.ts.map +1 -0
- package/dist/esm/Interpreter.js +1301 -0
- package/dist/esm/Interpreter.js.map +1 -0
- package/dist/esm/Poll.d.ts +240 -0
- package/dist/esm/Poll.d.ts.map +1 -0
- package/dist/esm/Poll.js +289 -0
- package/dist/esm/Poll.js.map +1 -0
- package/dist/esm/RetryPolicy.d.ts +273 -0
- package/dist/esm/RetryPolicy.d.ts.map +1 -0
- package/dist/esm/RetryPolicy.js +429 -0
- package/dist/esm/RetryPolicy.js.map +1 -0
- package/dist/esm/Sleep.d.ts +98 -0
- package/dist/esm/Sleep.d.ts.map +1 -0
- package/dist/esm/Sleep.js +256 -0
- package/dist/esm/Sleep.js.map +1 -0
- package/dist/esm/Stall.d.ts +173 -0
- package/dist/esm/Stall.d.ts.map +1 -0
- package/dist/esm/Stall.js +138 -0
- package/dist/esm/Stall.js.map +1 -0
- package/dist/esm/WaitFor.d.ts +109 -0
- package/dist/esm/WaitFor.d.ts.map +1 -0
- package/dist/esm/WaitFor.js +184 -0
- package/dist/esm/WaitFor.js.map +1 -0
- package/dist/esm/index.d.ts +107 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +108 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/internal/BoundedJson.d.ts +48 -0
- package/dist/esm/internal/BoundedJson.d.ts.map +1 -0
- package/dist/esm/internal/BoundedJson.js +107 -0
- package/dist/esm/internal/BoundedJson.js.map +1 -0
- package/dist/esm/internal/DeclarationSite.d.ts +135 -0
- package/dist/esm/internal/DeclarationSite.d.ts.map +1 -0
- package/dist/esm/internal/DeclarationSite.js +196 -0
- package/dist/esm/internal/DeclarationSite.js.map +1 -0
- package/dist/esm/internal/Declarations.d.ts +35 -0
- package/dist/esm/internal/Declarations.d.ts.map +1 -0
- package/dist/esm/internal/Declarations.js +43 -0
- package/dist/esm/internal/Declarations.js.map +1 -0
- package/dist/esm/internal/ExecutionMiddleware.d.ts +21 -0
- package/dist/esm/internal/ExecutionMiddleware.d.ts.map +1 -0
- package/dist/esm/internal/ExecutionMiddleware.js +13 -0
- package/dist/esm/internal/ExecutionMiddleware.js.map +1 -0
- package/dist/esm/internal/JsonSchemaSubset.d.ts +133 -0
- package/dist/esm/internal/JsonSchemaSubset.d.ts.map +1 -0
- package/dist/esm/internal/JsonSchemaSubset.js +363 -0
- package/dist/esm/internal/JsonSchemaSubset.js.map +1 -0
- package/dist/esm/internal/OutcomeMarker.d.ts +18 -0
- package/dist/esm/internal/OutcomeMarker.d.ts.map +1 -0
- package/dist/esm/internal/OutcomeMarker.js +18 -0
- package/dist/esm/internal/OutcomeMarker.js.map +1 -0
- package/docs/README.md +152 -0
- package/docs/api.md +440 -0
- package/docs/concepts/bodies-and-plans.md +167 -0
- package/docs/concepts/execution-identity.md +142 -0
- package/docs/concepts/flows-and-actions.md +129 -0
- package/docs/concepts/suspension-and-replay.md +130 -0
- package/docs/concepts/the-runtime-port.md +110 -0
- package/docs/concepts/trampoline-rounds.md +151 -0
- package/docs/guides/ask-a-person.md +184 -0
- package/docs/guides/build-a-body.md +164 -0
- package/docs/guides/cancel-and-roll-back.md +112 -0
- package/docs/guides/implement-an-action.md +155 -0
- package/docs/guides/inspect-the-plan.md +235 -0
- package/docs/guides/poll-until-ready.md +169 -0
- package/docs/guides/queue-work-to-a-worker.md +122 -0
- package/docs/guides/retry-a-failing-action.md +243 -0
- package/docs/guides/reuse-a-recorded-result.md +129 -0
- package/docs/guides/run-a-child-flow.md +108 -0
- package/docs/guides/run-an-external-job.md +86 -0
- package/docs/guides/use-a-prompt.md +38 -0
- package/docs/guides/wait-for-a-deadline.md +141 -0
- package/docs/guides/wait-for-an-external-signal.md +151 -0
- package/docs/installation.md +87 -0
- package/docs/quickstart.md +164 -0
- package/docs/reference/flow.md +1835 -0
- package/docs/testing.md +157 -0
- package/docs/troubleshooting.md +286 -0
- package/package.json +327 -3
- package/src/Action/Action.ts +333 -0
- package/src/Action/AttemptTimedOut.ts +37 -0
- package/src/Action/BoundaryMode.ts +33 -0
- package/src/Action/CacheEnvironment.ts +170 -0
- package/src/Action/ConcurrentKeylessDispatch.ts +38 -0
- package/src/Action/Context.ts +156 -0
- package/src/Action/DuplicateImplementation.ts +24 -0
- package/src/Action/FileBoundary.ts +77 -0
- package/src/Action/FileInput.ts +42 -0
- package/src/Action/Filegroup.ts +16 -0
- package/src/Action/Glob.ts +8 -0
- package/src/Action/ImplementationVersionMismatch.ts +27 -0
- package/src/Action/Implementations.ts +149 -0
- package/src/Action/InfraInterrupt.ts +30 -0
- package/src/Action/InfraInterruptRetriesExhausted.ts +37 -0
- package/src/Action/IrreversibleRetryRequiresIdempotencyKey.ts +32 -0
- package/src/Action/StepIdentity.ts +219 -0
- package/src/Action/TreeArtifact.ts +8 -0
- package/src/Action/TypeId.ts +9 -0
- package/src/Action/UncanonicalIdempotencyKey.ts +36 -0
- package/src/Action/idempotencyKey.ts +67 -0
- package/src/Action/index.ts +31 -0
- package/src/Action/make.ts +671 -0
- package/src/Action/raceAll.ts +48 -0
- package/src/Action/retry.ts +92 -0
- package/src/Deadline.ts +201 -0
- package/src/DurableClock.ts +176 -0
- package/src/DurableDeferred.ts +753 -0
- package/src/DurableQueue.ts +519 -0
- package/src/ExternalJob.ts +437 -0
- package/src/Fault.ts +279 -0
- package/src/Flow/Annotations.ts +151 -0
- package/src/Flow/CapabilityCeiling.ts +37 -0
- package/src/Flow/DeadlineExceeded.ts +40 -0
- package/src/Flow/ExecutionIdRequired.ts +36 -0
- package/src/Flow/ExecutionIds.ts +133 -0
- package/src/Flow/Flow.ts +576 -0
- package/src/Flow/MaxRoundsExceeded.ts +39 -0
- package/src/Flow/Outcome.ts +179 -0
- package/src/Flow/Result.ts +284 -0
- package/src/Flow/Runtime.ts +339 -0
- package/src/Flow/TypeId.ts +9 -0
- package/src/Flow/index.ts +19 -0
- package/src/Flow/internal.ts +237 -0
- package/src/Flow/make.ts +299 -0
- package/src/FlowRuntime/CancelRequestFailed.ts +56 -0
- package/src/FlowRuntime/ExecutionIdentityConflict.ts +32 -0
- package/src/FlowRuntime/FlowCycleDetected.ts +41 -0
- package/src/FlowRuntime/FlowExecutionNotFound.ts +46 -0
- package/src/FlowRuntime/FlowInstance.ts +128 -0
- package/src/FlowRuntime/FlowRuntime.ts +339 -0
- package/src/FlowRuntime/NodeRecord.ts +185 -0
- package/src/FlowRuntime/WaitingAnnotation.ts +85 -0
- package/src/FlowRuntime/index.ts +17 -0
- package/src/Graph.ts +1865 -0
- package/src/HumanTask.ts +1021 -0
- package/src/Interpreter.ts +1635 -0
- package/src/Poll.ts +420 -0
- package/src/RetryPolicy.ts +550 -0
- package/src/Sleep.ts +296 -0
- package/src/Stall.ts +217 -0
- package/src/WaitFor.ts +228 -0
- package/src/index.ts +125 -0
- package/src/internal/BoundedJson.ts +109 -0
- package/src/internal/DeclarationSite.ts +214 -0
- package/src/internal/Declarations.ts +49 -0
- package/src/internal/ExecutionMiddleware.ts +29 -0
- package/src/internal/JsonSchemaSubset.ts +392 -0
- package/src/internal/OutcomeMarker.ts +19 -0
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines the schemas and interfaces of a durable action.
|
|
3
|
+
*
|
|
4
|
+
* @since 0.1.0
|
|
5
|
+
*/
|
|
6
|
+
import * as Effects from "@smthrs/plan/Effects";
|
|
7
|
+
import type * as Node from "@smthrs/plan/Node";
|
|
8
|
+
import type * as Planned from "@smthrs/plan/Planned";
|
|
9
|
+
import type * as Context from "effect/Context";
|
|
10
|
+
import type * as Crypto from "effect/Crypto";
|
|
11
|
+
import type * as Effect from "effect/Effect";
|
|
12
|
+
import type * as Layer from "effect/Layer";
|
|
13
|
+
import * as Schema from "effect/Schema";
|
|
14
|
+
import type { Scope } from "effect/Scope";
|
|
15
|
+
import type { AnyStructSchema } from "../Flow/Flow.ts";
|
|
16
|
+
import type { FlowInstance, FlowRuntime } from "../FlowRuntime/index.ts";
|
|
17
|
+
import type * as RetryPolicy from "../RetryPolicy.ts";
|
|
18
|
+
import type { FileBoundary } from "./FileBoundary.ts";
|
|
19
|
+
import type { Implementation } from "./Implementations.ts";
|
|
20
|
+
import type { TypeId } from "./TypeId.ts";
|
|
21
|
+
/**
|
|
22
|
+
* The durability and retry semantics of an action.
|
|
23
|
+
*
|
|
24
|
+
* The schema is `@smthrs/plan`'s `Effects.Tier`: an action's durability, a
|
|
25
|
+
* declared envelope's ceiling and `KeyMaterial.kind` are the same three words,
|
|
26
|
+
* and they are declared once.
|
|
27
|
+
*
|
|
28
|
+
* @category models
|
|
29
|
+
* @since 0.1.0
|
|
30
|
+
*/
|
|
31
|
+
export declare const Tier: Schema.Literals<readonly ["sealed", "compensable", "irreversible"]>;
|
|
32
|
+
/**
|
|
33
|
+
* The durability and retry semantics of an action.
|
|
34
|
+
*
|
|
35
|
+
* @category models
|
|
36
|
+
* @since 0.1.0
|
|
37
|
+
*/
|
|
38
|
+
export type Tier = Effects.Tier;
|
|
39
|
+
/**
|
|
40
|
+
* Schema for caller-declared sealed action identity.
|
|
41
|
+
*
|
|
42
|
+
* @category models
|
|
43
|
+
* @since 0.1.0
|
|
44
|
+
*/
|
|
45
|
+
export declare const IdempotencyKey: Schema.Union<readonly [Schema.String, Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>;
|
|
46
|
+
/**
|
|
47
|
+
* Caller-declared sealed action identity.
|
|
48
|
+
*
|
|
49
|
+
* A string is namespaced by the action declaration. A JSON object is
|
|
50
|
+
* caller-owned and remains stable across action renames. Runtime
|
|
51
|
+
* environment and filesystem facts are always added by the engine. An explicit
|
|
52
|
+
* implementation version is also separate engine key material; a caller-owned
|
|
53
|
+
* object cannot mask it with a field of the same name.
|
|
54
|
+
*
|
|
55
|
+
* @category models
|
|
56
|
+
* @since 0.1.0
|
|
57
|
+
*/
|
|
58
|
+
export type IdempotencyKey = typeof IdempotencyKey.Type;
|
|
59
|
+
/**
|
|
60
|
+
* Recursively permits planned references wherever a declared action payload
|
|
61
|
+
* accepts a concrete value.
|
|
62
|
+
*
|
|
63
|
+
* @category models
|
|
64
|
+
* @since 0.1.0
|
|
65
|
+
*/
|
|
66
|
+
export type PlannedPayload<T> = Planned.Planned<T> | ([T] extends [ReadonlyArray<infer Value>] ? ReadonlyArray<PlannedPayload<Value>> : [T] extends [object] ? {
|
|
67
|
+
readonly [Key in keyof T]: PlannedPayload<T[Key]>;
|
|
68
|
+
} : T);
|
|
69
|
+
/**
|
|
70
|
+
* The requirement one declared action mints for itself, identified by its
|
|
71
|
+
* tag.
|
|
72
|
+
*
|
|
73
|
+
* A declaration is data that travels everywhere and carries no code, so a body
|
|
74
|
+
* that calls it names an implementation it does not hold. This type is that
|
|
75
|
+
* "does not hold", stated to the compiler: `Charge.call(...)` produces a node
|
|
76
|
+
* requiring `Requirement<"payments/Charge">`, `Charge.toLayer(...)` produces a
|
|
77
|
+
* layer providing it, and `Flow.execute` is where the two have to meet. It is
|
|
78
|
+
* phantom — nothing reads it, and nothing about planning, keying, or replay
|
|
79
|
+
* changes with it.
|
|
80
|
+
*
|
|
81
|
+
* @category models
|
|
82
|
+
* @since 0.1.0
|
|
83
|
+
*/
|
|
84
|
+
export interface Requirement<Tag extends string> {
|
|
85
|
+
readonly _: unique symbol;
|
|
86
|
+
readonly _tag: Tag;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* A named action declaration whose implementation is supplied separately
|
|
90
|
+
* through a layer and whose calls only add nodes to a plan.
|
|
91
|
+
*
|
|
92
|
+
* `Requires` is what `.call()` puts in the requirement channel of the node it
|
|
93
|
+
* records. It is this action's own {@link Requirement} for an ordinary
|
|
94
|
+
* declaration, and `never` for a system declaration the engine itself
|
|
95
|
+
* implements ({@link module:make.makeSystem}).
|
|
96
|
+
*
|
|
97
|
+
* @category models
|
|
98
|
+
* @since 0.1.0
|
|
99
|
+
*/
|
|
100
|
+
export interface Declared<Tag extends string, Payload extends AnyStructSchema, Success extends Schema.Top, Error extends Schema.Top, Requires = Requirement<Tag>> {
|
|
101
|
+
readonly [TypeId]: typeof TypeId;
|
|
102
|
+
readonly name: Tag;
|
|
103
|
+
/**
|
|
104
|
+
* Semantic implementation identity. Changing it requires a newly planned
|
|
105
|
+
* execution; it is not an in-place upgrade of a persisted run. Canonical
|
|
106
|
+
* composition requires it for sealed actions with an idempotency key.
|
|
107
|
+
* Invocation-scoped actions may omit it; low-level keyed legacy callers
|
|
108
|
+
* retain their old handler-reuse contract when it is absent.
|
|
109
|
+
*/
|
|
110
|
+
readonly implementationVersion: string | undefined;
|
|
111
|
+
readonly payloadSchema: Payload;
|
|
112
|
+
readonly successSchema: Success;
|
|
113
|
+
readonly errorSchema: Error;
|
|
114
|
+
readonly tier: Tier;
|
|
115
|
+
readonly idempotencyKey: IdempotencyKey | ((payload: Payload["Type"]) => IdempotencyKey) | undefined;
|
|
116
|
+
/** Allows multiple legitimate sealed results to race under one cache key. */
|
|
117
|
+
readonly nondeterministic: true | undefined;
|
|
118
|
+
/** Durable retry policy applied to every implementation invocation. */
|
|
119
|
+
readonly retryPolicy: RetryPolicy.RetryPolicy | undefined;
|
|
120
|
+
/** Milliseconds one attempt may run before it fails with `AttemptTimedOut`. */
|
|
121
|
+
readonly attemptTimeoutMs: number | undefined;
|
|
122
|
+
/** Milliseconds one attempt may go without `Action.heartbeat` before it fails. */
|
|
123
|
+
readonly heartbeatTimeoutMs: number | undefined;
|
|
124
|
+
/** Filesystem declaration, optionally derived from the decoded payload. */
|
|
125
|
+
readonly fileBoundary: FileBoundary | ((payload: Payload["Type"]) => FileBoundary) | undefined;
|
|
126
|
+
readonly annotations: Context.Context<never>;
|
|
127
|
+
/**
|
|
128
|
+
* The context key this declaration's implementation is provided under, and
|
|
129
|
+
* the identity behind {@link Requirement}.
|
|
130
|
+
*
|
|
131
|
+
* `toLayer` provides it; a composition that would rather hand the runtime an
|
|
132
|
+
* implementation directly can provide it itself with `Layer.succeed`. Its
|
|
133
|
+
* string key is derived from the action tag, so two declarations of one tag
|
|
134
|
+
* name one slot.
|
|
135
|
+
*/
|
|
136
|
+
readonly requirement: Context.Service<Requirement<Tag>, Implementation>;
|
|
137
|
+
annotate<I, S>(key: Context.Key<I, S>, value: S): Declared<Tag, Payload, Success, Error, Requires>;
|
|
138
|
+
annotateMerge<I>(annotations: Context.Context<I>): Declared<Tag, Payload, Success, Error, Requires>;
|
|
139
|
+
readonly call: (payload: PlannedPayload<Payload["~type.make.in"]>) => Node.Node<Success["Type"], Error["Type"], Requires>;
|
|
140
|
+
/**
|
|
141
|
+
* Attaches the implementation and yields the layer that provides this
|
|
142
|
+
* declaration's {@link Requirement}. A versioned declaration requires the
|
|
143
|
+
* same `implementationVersion` here; a mismatch throws
|
|
144
|
+
* `ImplementationVersionMismatch` before registration. The version must cover
|
|
145
|
+
* handler semantics and semantic service/configuration changes, not merely a
|
|
146
|
+
* package publication label. Source text is never inferred as that identity.
|
|
147
|
+
*
|
|
148
|
+
* Let inference name the returned layer's requirements. The requirement
|
|
149
|
+
* channel is what a composition trusts: a layer type that under-declares it
|
|
150
|
+
* still typechecks at `Effect.provide` and dies at runtime as a missing
|
|
151
|
+
* service. A concrete hand annotation cannot lie — dropping a service from
|
|
152
|
+
* it is a compile error — but a GENERIC one can: when the annotated
|
|
153
|
+
* requirement union keeps a deferred member such as
|
|
154
|
+
* `Output["DecodingServices"]` (constrained only as `unknown` through
|
|
155
|
+
* `Schema.Top`), TypeScript lets that member absorb every concrete service
|
|
156
|
+
* the annotation dropped, and the drop compiles. A wrapper that must
|
|
157
|
+
* annotate — a public interface naming its layer's type, say — therefore
|
|
158
|
+
* pins the set at a concrete instantiation, where the check works again:
|
|
159
|
+
*
|
|
160
|
+
* ```ts
|
|
161
|
+
* // Wrapped.layer is the wrapper's hand-annotated toLayer result, held
|
|
162
|
+
* // here with every schema argument concrete.
|
|
163
|
+
* type Needed = Layer.Services<typeof Wrapped.layer>
|
|
164
|
+
* expectTypeOf<Meter extends Needed ? true : false>().toEqualTypeOf<true>()
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
readonly toLayer: <R>(execute: (payload: Payload["Type"]) => Effect.Effect<Success["Type"], Error["Type"], R>, options?: {
|
|
168
|
+
readonly override?: boolean;
|
|
169
|
+
/** Must exactly match the declaration, including absence on legacy declarations. */
|
|
170
|
+
readonly implementationVersion?: string | undefined;
|
|
171
|
+
}) => Layer.Layer<Requires, never, FlowRuntime | Exclude<R, FlowRuntime | FlowInstance | Scope> | Payload["DecodingServices"] | Payload["EncodingServices"] | Success["DecodingServices"] | Success["EncodingServices"] | Error["DecodingServices"] | Error["EncodingServices"]>;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Durable flow action that behaves as an `Effect` and records its name,
|
|
175
|
+
* result schemas, annotations, and encoded execution form for the flow
|
|
176
|
+
* engine.
|
|
177
|
+
*
|
|
178
|
+
* @category models
|
|
179
|
+
* @since 0.1.0
|
|
180
|
+
*/
|
|
181
|
+
export interface Action<Success extends Schema.Constraint = Schema.Void, Error extends Schema.Constraint = Schema.Never, R = never> extends Effect.Effect<Success["Type"], Error["Type"], Success["DecodingServices"] | Error["DecodingServices"] | R | Crypto.Crypto | FlowRuntime | FlowInstance> {
|
|
182
|
+
readonly [TypeId]: typeof TypeId;
|
|
183
|
+
readonly name: string;
|
|
184
|
+
readonly implementationVersion?: string | undefined;
|
|
185
|
+
readonly successSchema: Success;
|
|
186
|
+
readonly errorSchema: Error;
|
|
187
|
+
readonly exitSchema: Schema.Exit<Success, Error, Schema.Defect>;
|
|
188
|
+
readonly exitSchemaPartial: Schema.Exit<Success, Error, Schema.Unknown>;
|
|
189
|
+
readonly annotations: Context.Context<never>;
|
|
190
|
+
readonly tier: Tier;
|
|
191
|
+
readonly idempotencyKey: IdempotencyKey | undefined;
|
|
192
|
+
/** Allows multiple legitimate sealed results to race under one cache key. */
|
|
193
|
+
readonly nondeterministic: true | undefined;
|
|
194
|
+
readonly metadata: unknown;
|
|
195
|
+
/** Typed filesystem boundary used by the durable engine. */
|
|
196
|
+
readonly fileBoundary: FileBoundary | undefined;
|
|
197
|
+
readonly retryPolicy: RetryPolicy.RetryPolicy | undefined;
|
|
198
|
+
/** Milliseconds one attempt may run before it fails with `AttemptTimedOut`. */
|
|
199
|
+
readonly attemptTimeoutMs: number | undefined;
|
|
200
|
+
/** Milliseconds one attempt may go without `Action.heartbeat` before it fails. */
|
|
201
|
+
readonly heartbeatTimeoutMs: number | undefined;
|
|
202
|
+
annotate<I, S>(key: Context.Key<I, S>, value: S): Action<Success, Error, R>;
|
|
203
|
+
annotateMerge<I>(annotations: Context.Context<I>): Action<Success, Error, R>;
|
|
204
|
+
readonly execute: Effect.Effect<Success["Type"], Error["Type"], Success["DecodingServices"] | Success["EncodingServices"] | Error["DecodingServices"] | Error["EncodingServices"] | R | Crypto.Crypto | Scope | FlowRuntime | FlowInstance>;
|
|
205
|
+
readonly executeEncoded: Effect.Effect<unknown, unknown, Success["DecodingServices"] | Success["EncodingServices"] | Error["DecodingServices"] | Error["EncodingServices"] | R | Crypto.Crypto | Scope | FlowRuntime | FlowInstance>;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Type-erased action shape for APIs that only need the action identity,
|
|
209
|
+
* name, annotations, and encoded execution.
|
|
210
|
+
*
|
|
211
|
+
* @category models
|
|
212
|
+
* @since 0.1.0
|
|
213
|
+
*/
|
|
214
|
+
export interface Any {
|
|
215
|
+
readonly [TypeId]: typeof TypeId;
|
|
216
|
+
readonly name: string;
|
|
217
|
+
readonly implementationVersion?: string | undefined;
|
|
218
|
+
readonly executeEncoded: Effect.Effect<any, any, any>;
|
|
219
|
+
readonly annotations: Context.Context<never>;
|
|
220
|
+
readonly tier: Tier;
|
|
221
|
+
readonly idempotencyKey: IdempotencyKey | undefined;
|
|
222
|
+
readonly nondeterministic: true | undefined;
|
|
223
|
+
readonly metadata: unknown;
|
|
224
|
+
/** Typed filesystem boundary used by the durable engine. */
|
|
225
|
+
readonly fileBoundary: FileBoundary | undefined;
|
|
226
|
+
readonly retryPolicy: RetryPolicy.RetryPolicy | undefined;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Type-erased action shape that also exposes success and error schemas for
|
|
230
|
+
* derived flow APIs.
|
|
231
|
+
*
|
|
232
|
+
* @category models
|
|
233
|
+
* @since 0.1.0
|
|
234
|
+
*/
|
|
235
|
+
export interface AnyWithProps {
|
|
236
|
+
readonly [TypeId]: typeof TypeId;
|
|
237
|
+
readonly name: string;
|
|
238
|
+
readonly implementationVersion?: string | undefined;
|
|
239
|
+
readonly successSchema: Schema.Top;
|
|
240
|
+
readonly errorSchema: Schema.Top;
|
|
241
|
+
readonly executeEncoded: Effect.Effect<any, any, any>;
|
|
242
|
+
readonly tier: Tier;
|
|
243
|
+
readonly idempotencyKey: IdempotencyKey | undefined;
|
|
244
|
+
readonly nondeterministic: true | undefined;
|
|
245
|
+
readonly metadata: unknown;
|
|
246
|
+
/** Typed filesystem boundary used by the durable engine. */
|
|
247
|
+
readonly fileBoundary: FileBoundary | undefined;
|
|
248
|
+
readonly retryPolicy: RetryPolicy.RetryPolicy | undefined;
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=Action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Action.d.ts","sourceRoot":"","sources":["../../../src/Action/Action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var Action_exports = {};
|
|
30
|
+
__export(Action_exports, {
|
|
31
|
+
IdempotencyKey: () => IdempotencyKey,
|
|
32
|
+
Tier: () => Tier
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(Action_exports);
|
|
35
|
+
var Effects = __toESM(require("@smthrs/plan/Effects"), 1);
|
|
36
|
+
var Schema = __toESM(require("effect/Schema"), 1);
|
|
37
|
+
const Tier = Effects.Tier;
|
|
38
|
+
const IdempotencyKey = Schema.Union([
|
|
39
|
+
Schema.String,
|
|
40
|
+
Schema.Record(Schema.String, Schema.Json)
|
|
41
|
+
]);
|
|
42
|
+
//# sourceMappingURL=Action.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/Action/Action.ts"],
|
|
4
|
+
"sourcesContent": ["// Deep reviewed and polished by a human on 2026-08-10.\n\n/**\n * Defines the schemas and interfaces of a durable action.\n *\n * @since 0.1.0\n */\n\nimport * as Effects from \"@smthrs/plan/Effects\"\nimport type * as Node from \"@smthrs/plan/Node\"\nimport type * as Planned from \"@smthrs/plan/Planned\"\nimport type * as Context from \"effect/Context\"\nimport type * as Crypto from \"effect/Crypto\"\nimport type * as Effect from \"effect/Effect\"\nimport type * as Layer from \"effect/Layer\"\nimport * as Schema from \"effect/Schema\"\nimport type { Scope } from \"effect/Scope\"\nimport type { AnyStructSchema } from \"../Flow/Flow.ts\"\nimport type { FlowInstance, FlowRuntime } from \"../FlowRuntime/index.ts\"\nimport type * as RetryPolicy from \"../RetryPolicy.ts\"\nimport type { FileBoundary } from \"./FileBoundary.ts\"\nimport type { Implementation } from \"./Implementations.ts\"\nimport type { TypeId } from \"./TypeId.ts\"\n\n/**\n * The durability and retry semantics of an action.\n *\n * The schema is `@smthrs/plan`'s `Effects.Tier`: an action's durability, a\n * declared envelope's ceiling and `KeyMaterial.kind` are the same three words,\n * and they are declared once.\n *\n * @category models\n * @since 0.1.0\n */\nexport const Tier = Effects.Tier\n\n/**\n * The durability and retry semantics of an action.\n *\n * @category models\n * @since 0.1.0\n */\nexport type Tier = Effects.Tier\n\n/**\n * Schema for caller-declared sealed action identity.\n *\n * @category models\n * @since 0.1.0\n */\nexport const IdempotencyKey = Schema.Union([\n Schema.String,\n Schema.Record(Schema.String, Schema.Json)\n])\n\n/**\n * Caller-declared sealed action identity.\n *\n * A string is namespaced by the action declaration. A JSON object is\n * caller-owned and remains stable across action renames. Runtime\n * environment and filesystem facts are always added by the engine. An explicit\n * implementation version is also separate engine key material; a caller-owned\n * object cannot mask it with a field of the same name.\n *\n * @category models\n * @since 0.1.0\n */\nexport type IdempotencyKey = typeof IdempotencyKey.Type\n\n/**\n * Recursively permits planned references wherever a declared action payload\n * accepts a concrete value.\n *\n * @category models\n * @since 0.1.0\n */\nexport type PlannedPayload<T> =\n | Planned.Planned<T>\n | ([T] extends [ReadonlyArray<infer Value>] ? ReadonlyArray<PlannedPayload<Value>>\n : [T] extends [object] ? { readonly [Key in keyof T]: PlannedPayload<T[Key]> }\n : T)\n\n/**\n * The requirement one declared action mints for itself, identified by its\n * tag.\n *\n * A declaration is data that travels everywhere and carries no code, so a body\n * that calls it names an implementation it does not hold. This type is that\n * \"does not hold\", stated to the compiler: `Charge.call(...)` produces a node\n * requiring `Requirement<\"payments/Charge\">`, `Charge.toLayer(...)` produces a\n * layer providing it, and `Flow.execute` is where the two have to meet. It is\n * phantom \u2014 nothing reads it, and nothing about planning, keying, or replay\n * changes with it.\n *\n * @category models\n * @since 0.1.0\n */\nexport interface Requirement<Tag extends string> {\n readonly _: unique symbol\n readonly _tag: Tag\n}\n\n/**\n * A named action declaration whose implementation is supplied separately\n * through a layer and whose calls only add nodes to a plan.\n *\n * `Requires` is what `.call()` puts in the requirement channel of the node it\n * records. It is this action's own {@link Requirement} for an ordinary\n * declaration, and `never` for a system declaration the engine itself\n * implements ({@link module:make.makeSystem}).\n *\n * @category models\n * @since 0.1.0\n */\nexport interface Declared<\n Tag extends string,\n Payload extends AnyStructSchema,\n Success extends Schema.Top,\n Error extends Schema.Top,\n Requires = Requirement<Tag>\n> {\n readonly [TypeId]: typeof TypeId\n readonly name: Tag\n /**\n * Semantic implementation identity. Changing it requires a newly planned\n * execution; it is not an in-place upgrade of a persisted run. Canonical\n * composition requires it for sealed actions with an idempotency key.\n * Invocation-scoped actions may omit it; low-level keyed legacy callers\n * retain their old handler-reuse contract when it is absent.\n */\n readonly implementationVersion: string | undefined\n readonly payloadSchema: Payload\n readonly successSchema: Success\n readonly errorSchema: Error\n readonly tier: Tier\n readonly idempotencyKey: IdempotencyKey | ((payload: Payload[\"Type\"]) => IdempotencyKey) | undefined\n /** Allows multiple legitimate sealed results to race under one cache key. */\n readonly nondeterministic: true | undefined\n /** Durable retry policy applied to every implementation invocation. */\n readonly retryPolicy: RetryPolicy.RetryPolicy | undefined\n /** Milliseconds one attempt may run before it fails with `AttemptTimedOut`. */\n readonly attemptTimeoutMs: number | undefined\n /** Milliseconds one attempt may go without `Action.heartbeat` before it fails. */\n readonly heartbeatTimeoutMs: number | undefined\n /** Filesystem declaration, optionally derived from the decoded payload. */\n readonly fileBoundary: FileBoundary | ((payload: Payload[\"Type\"]) => FileBoundary) | undefined\n readonly annotations: Context.Context<never>\n /**\n * The context key this declaration's implementation is provided under, and\n * the identity behind {@link Requirement}.\n *\n * `toLayer` provides it; a composition that would rather hand the runtime an\n * implementation directly can provide it itself with `Layer.succeed`. Its\n * string key is derived from the action tag, so two declarations of one tag\n * name one slot.\n */\n readonly requirement: Context.Service<Requirement<Tag>, Implementation>\n annotate<I, S>(key: Context.Key<I, S>, value: S): Declared<Tag, Payload, Success, Error, Requires>\n annotateMerge<I>(annotations: Context.Context<I>): Declared<Tag, Payload, Success, Error, Requires>\n readonly call: (\n payload: PlannedPayload<Payload[\"~type.make.in\"]>\n ) => Node.Node<Success[\"Type\"], Error[\"Type\"], Requires>\n /**\n * Attaches the implementation and yields the layer that provides this\n * declaration's {@link Requirement}. A versioned declaration requires the\n * same `implementationVersion` here; a mismatch throws\n * `ImplementationVersionMismatch` before registration. The version must cover\n * handler semantics and semantic service/configuration changes, not merely a\n * package publication label. Source text is never inferred as that identity.\n *\n * Let inference name the returned layer's requirements. The requirement\n * channel is what a composition trusts: a layer type that under-declares it\n * still typechecks at `Effect.provide` and dies at runtime as a missing\n * service. A concrete hand annotation cannot lie \u2014 dropping a service from\n * it is a compile error \u2014 but a GENERIC one can: when the annotated\n * requirement union keeps a deferred member such as\n * `Output[\"DecodingServices\"]` (constrained only as `unknown` through\n * `Schema.Top`), TypeScript lets that member absorb every concrete service\n * the annotation dropped, and the drop compiles. A wrapper that must\n * annotate \u2014 a public interface naming its layer's type, say \u2014 therefore\n * pins the set at a concrete instantiation, where the check works again:\n *\n * ```ts\n * // Wrapped.layer is the wrapper's hand-annotated toLayer result, held\n * // here with every schema argument concrete.\n * type Needed = Layer.Services<typeof Wrapped.layer>\n * expectTypeOf<Meter extends Needed ? true : false>().toEqualTypeOf<true>()\n * ```\n */\n readonly toLayer: <R>(\n execute: (payload: Payload[\"Type\"]) => Effect.Effect<Success[\"Type\"], Error[\"Type\"], R>,\n options?: {\n readonly override?: boolean\n /** Must exactly match the declaration, including absence on legacy declarations. */\n readonly implementationVersion?: string | undefined\n }\n ) => Layer.Layer<\n Requires,\n never,\n | FlowRuntime\n | Exclude<R, FlowRuntime | FlowInstance | Scope>\n | Payload[\"DecodingServices\"]\n | Payload[\"EncodingServices\"]\n | Success[\"DecodingServices\"]\n | Success[\"EncodingServices\"]\n | Error[\"DecodingServices\"]\n | Error[\"EncodingServices\"]\n >\n}\n\n/**\n * Durable flow action that behaves as an `Effect` and records its name,\n * result schemas, annotations, and encoded execution form for the flow\n * engine.\n *\n * @category models\n * @since 0.1.0\n */\nexport interface Action<\n Success extends Schema.Constraint = Schema.Void,\n Error extends Schema.Constraint = Schema.Never,\n R = never\n> extends\n Effect.Effect<\n Success[\"Type\"],\n Error[\"Type\"],\n | Success[\"DecodingServices\"]\n | Error[\"DecodingServices\"]\n | R\n | Crypto.Crypto\n | FlowRuntime\n | FlowInstance\n >\n{\n readonly [TypeId]: typeof TypeId\n readonly name: string\n readonly implementationVersion?: string | undefined\n readonly successSchema: Success\n readonly errorSchema: Error\n readonly exitSchema: Schema.Exit<Success, Error, Schema.Defect>\n readonly exitSchemaPartial: Schema.Exit<Success, Error, Schema.Unknown>\n readonly annotations: Context.Context<never>\n readonly tier: Tier\n readonly idempotencyKey: IdempotencyKey | undefined\n /** Allows multiple legitimate sealed results to race under one cache key. */\n readonly nondeterministic: true | undefined\n readonly metadata: unknown\n /** Typed filesystem boundary used by the durable engine. */\n readonly fileBoundary: FileBoundary | undefined\n readonly retryPolicy: RetryPolicy.RetryPolicy | undefined\n /** Milliseconds one attempt may run before it fails with `AttemptTimedOut`. */\n readonly attemptTimeoutMs: number | undefined\n /** Milliseconds one attempt may go without `Action.heartbeat` before it fails. */\n readonly heartbeatTimeoutMs: number | undefined\n annotate<I, S>(\n key: Context.Key<I, S>,\n value: S\n ): Action<Success, Error, R>\n annotateMerge<I>(\n annotations: Context.Context<I>\n ): Action<Success, Error, R>\n readonly execute: Effect.Effect<\n Success[\"Type\"],\n Error[\"Type\"],\n | Success[\"DecodingServices\"]\n | Success[\"EncodingServices\"]\n | Error[\"DecodingServices\"]\n | Error[\"EncodingServices\"]\n | R\n | Crypto.Crypto\n | Scope\n | FlowRuntime\n | FlowInstance\n >\n readonly executeEncoded: Effect.Effect<\n unknown,\n unknown,\n | Success[\"DecodingServices\"]\n | Success[\"EncodingServices\"]\n | Error[\"DecodingServices\"]\n | Error[\"EncodingServices\"]\n | R\n | Crypto.Crypto\n | Scope\n | FlowRuntime\n | FlowInstance\n >\n}\n\n/**\n * Type-erased action shape for APIs that only need the action identity,\n * name, annotations, and encoded execution.\n *\n * @category models\n * @since 0.1.0\n */\nexport interface Any {\n readonly [TypeId]: typeof TypeId\n readonly name: string\n readonly implementationVersion?: string | undefined\n readonly executeEncoded: Effect.Effect<any, any, any>\n readonly annotations: Context.Context<never>\n readonly tier: Tier\n readonly idempotencyKey: IdempotencyKey | undefined\n readonly nondeterministic: true | undefined\n readonly metadata: unknown\n /** Typed filesystem boundary used by the durable engine. */\n readonly fileBoundary: FileBoundary | undefined\n readonly retryPolicy: RetryPolicy.RetryPolicy | undefined\n}\n\n/**\n * Type-erased action shape that also exposes success and error schemas for\n * derived flow APIs.\n *\n * @category models\n * @since 0.1.0\n */\nexport interface AnyWithProps {\n readonly [TypeId]: typeof TypeId\n readonly name: string\n readonly implementationVersion?: string | undefined\n readonly successSchema: Schema.Top\n readonly errorSchema: Schema.Top\n readonly executeEncoded: Effect.Effect<any, any, any>\n readonly tier: Tier\n readonly idempotencyKey: IdempotencyKey | undefined\n readonly nondeterministic: true | undefined\n readonly metadata: unknown\n /** Typed filesystem boundary used by the durable engine. */\n readonly fileBoundary: FileBoundary | undefined\n readonly retryPolicy: RetryPolicy.RetryPolicy | undefined\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,cAAyB;AAOzB,aAAwB;AAmBjB,MAAM,OAAO,QAAQ;AAgBrB,MAAM,iBAAiB,OAAO,MAAM;AAAA,EACzC,OAAO;AAAA,EACP,OAAO,OAAO,OAAO,QAAQ,OAAO,IAAI;AAC1C,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines the defect an action attempt settles with when it outlives its
|
|
3
|
+
* declared `attemptTimeoutMs` or misses its `heartbeatTimeoutMs`.
|
|
4
|
+
*
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
*/
|
|
7
|
+
import * as Schema from "effect/Schema";
|
|
8
|
+
declare const AttemptTimedOut_base: Schema.Class<AttemptTimedOut, Schema.TaggedStruct<"@smthrs/flow/AttemptTimedOut", {
|
|
9
|
+
readonly code: Schema.withConstructorDefault<Schema.Literal<"attempt_timed_out">>;
|
|
10
|
+
readonly actionName: Schema.String;
|
|
11
|
+
readonly attempt: Schema.Number;
|
|
12
|
+
/** Which bound expired: the whole attempt, or the gap between heartbeats. */
|
|
13
|
+
readonly bound: Schema.Literals<readonly ["attempt", "heartbeat"]>;
|
|
14
|
+
readonly timeoutMs: Schema.Number;
|
|
15
|
+
readonly message: Schema.String;
|
|
16
|
+
}>, import("effect/Cause").YieldableError>;
|
|
17
|
+
/**
|
|
18
|
+
* One attempt of an action ran past a declared time bound and was
|
|
19
|
+
* interrupted.
|
|
20
|
+
*
|
|
21
|
+
* It is a defect rather than a typed failure because the bound belongs to the
|
|
22
|
+
* dispatch, not to the action's declared error channel. The engine's retry
|
|
23
|
+
* decision point still counts it as a retryable attempt failure under the
|
|
24
|
+
* action's `retryPolicy`, and a policy can refuse it by listing this tag in
|
|
25
|
+
* `nonRetryable`.
|
|
26
|
+
*
|
|
27
|
+
* @category errors
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
*/
|
|
30
|
+
export declare class AttemptTimedOut extends AttemptTimedOut_base {
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=AttemptTimedOut.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AttemptTimedOut.d.ts","sourceRoot":"","sources":["../../../src/Action/AttemptTimedOut.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;;;;;IAuBnC,6EAA6E;;;;;AArBjF;;;;;;;;;;;;GAYG;AACH,qBAAa,eAAgB,SAAQ,oBAapC;CAAG"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var AttemptTimedOut_exports = {};
|
|
30
|
+
__export(AttemptTimedOut_exports, {
|
|
31
|
+
AttemptTimedOut: () => AttemptTimedOut
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(AttemptTimedOut_exports);
|
|
34
|
+
var Effect = __toESM(require("effect/Effect"), 1);
|
|
35
|
+
var Schema = __toESM(require("effect/Schema"), 1);
|
|
36
|
+
class AttemptTimedOut extends Schema.TaggedError()(
|
|
37
|
+
"@smthrs/flow/AttemptTimedOut",
|
|
38
|
+
{
|
|
39
|
+
code: Schema.Literal("attempt_timed_out").pipe(
|
|
40
|
+
Schema.withConstructorDefault(Effect.succeed("attempt_timed_out"))
|
|
41
|
+
),
|
|
42
|
+
actionName: Schema.String,
|
|
43
|
+
attempt: Schema.Number,
|
|
44
|
+
/** Which bound expired: the whole attempt, or the gap between heartbeats. */
|
|
45
|
+
bound: Schema.Literals(["attempt", "heartbeat"]),
|
|
46
|
+
timeoutMs: Schema.Number,
|
|
47
|
+
message: Schema.String
|
|
48
|
+
}
|
|
49
|
+
) {
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=AttemptTimedOut.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/Action/AttemptTimedOut.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Defines the defect an action attempt settles with when it outlives its\n * declared `attemptTimeoutMs` or misses its `heartbeatTimeoutMs`.\n *\n * @since 1.0.0\n */\n\nimport * as Effect from \"effect/Effect\"\nimport * as Schema from \"effect/Schema\"\n\n/**\n * One attempt of an action ran past a declared time bound and was\n * interrupted.\n *\n * It is a defect rather than a typed failure because the bound belongs to the\n * dispatch, not to the action's declared error channel. The engine's retry\n * decision point still counts it as a retryable attempt failure under the\n * action's `retryPolicy`, and a policy can refuse it by listing this tag in\n * `nonRetryable`.\n *\n * @category errors\n * @since 1.0.0\n */\nexport class AttemptTimedOut extends Schema.TaggedError<AttemptTimedOut>()(\n \"@smthrs/flow/AttemptTimedOut\",\n {\n code: Schema.Literal(\"attempt_timed_out\").pipe(\n Schema.withConstructorDefault(Effect.succeed(\"attempt_timed_out\"))\n ),\n actionName: Schema.String,\n attempt: Schema.Number,\n /** Which bound expired: the whole attempt, or the gap between heartbeats. */\n bound: Schema.Literals([\"attempt\", \"heartbeat\"]),\n timeoutMs: Schema.Number,\n message: Schema.String\n }\n) {}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,aAAwB;AACxB,aAAwB;AAejB,MAAM,wBAAwB,OAAO,YAA6B;AAAA,EACvE;AAAA,EACA;AAAA,IACE,MAAM,OAAO,QAAQ,mBAAmB,EAAE;AAAA,MACxC,OAAO,uBAAuB,OAAO,QAAQ,mBAAmB,CAAC;AAAA,IACnE;AAAA,IACA,YAAY,OAAO;AAAA,IACnB,SAAS,OAAO;AAAA;AAAA,IAEhB,OAAO,OAAO,SAAS,CAAC,WAAW,WAAW,CAAC;AAAA,IAC/C,WAAW,OAAO;AAAA,IAClB,SAAS,OAAO;AAAA,EAClB;AACF,EAAE;AAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines filesystem boundary enforcement modes.
|
|
3
|
+
*
|
|
4
|
+
* The schema itself is `@smthrs/plan`'s `FileSet.BoundaryMode`, because the
|
|
5
|
+
* same two words are what a plan node's `effects.boundaryMode` carries. This
|
|
6
|
+
* module is the name an action reaches for; there is one declaration behind
|
|
7
|
+
* both.
|
|
8
|
+
*
|
|
9
|
+
* @since 0.1.0
|
|
10
|
+
*/
|
|
11
|
+
import * as FileSet from "@smthrs/plan/FileSet";
|
|
12
|
+
/**
|
|
13
|
+
* Schema for how strictly an action's filesystem boundary is enforced.
|
|
14
|
+
*
|
|
15
|
+
* `hard` rejects undeclared access. `expected` records access for validation
|
|
16
|
+
* after execution without requiring the sandbox to reject it immediately.
|
|
17
|
+
*
|
|
18
|
+
* @category models
|
|
19
|
+
* @since 0.1.0
|
|
20
|
+
*/
|
|
21
|
+
export declare const BoundaryMode: import("effect/Schema").Literals<readonly ["hard", "expected"]>;
|
|
22
|
+
/**
|
|
23
|
+
* How strictly an action's filesystem boundary is enforced.
|
|
24
|
+
*
|
|
25
|
+
* @category models
|
|
26
|
+
* @since 0.1.0
|
|
27
|
+
*/
|
|
28
|
+
export type BoundaryMode = FileSet.BoundaryMode;
|
|
29
|
+
//# sourceMappingURL=BoundaryMode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BoundaryMode.d.ts","sourceRoot":"","sources":["../../../src/Action/BoundaryMode.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,iEAAuB,CAAA;AAEhD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var BoundaryMode_exports = {};
|
|
30
|
+
__export(BoundaryMode_exports, {
|
|
31
|
+
BoundaryMode: () => BoundaryMode
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(BoundaryMode_exports);
|
|
34
|
+
var FileSet = __toESM(require("@smthrs/plan/FileSet"), 1);
|
|
35
|
+
const BoundaryMode = FileSet.BoundaryMode;
|
|
36
|
+
//# sourceMappingURL=BoundaryMode.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/Action/BoundaryMode.ts"],
|
|
4
|
+
"sourcesContent": ["// Deep reviewed and polished by a human on 2026-08-10.\n\n/**\n * Defines filesystem boundary enforcement modes.\n *\n * The schema itself is `@smthrs/plan`'s `FileSet.BoundaryMode`, because the\n * same two words are what a plan node's `effects.boundaryMode` carries. This\n * module is the name an action reaches for; there is one declaration behind\n * both.\n *\n * @since 0.1.0\n */\n\nimport * as FileSet from \"@smthrs/plan/FileSet\"\n\n/**\n * Schema for how strictly an action's filesystem boundary is enforced.\n *\n * `hard` rejects undeclared access. `expected` records access for validation\n * after execution without requiring the sandbox to reject it immediately.\n *\n * @category models\n * @since 0.1.0\n */\nexport const BoundaryMode = FileSet.BoundaryMode\n\n/**\n * How strictly an action's filesystem boundary is enforced.\n *\n * @category models\n * @since 0.1.0\n */\nexport type BoundaryMode = FileSet.BoundaryMode\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,cAAyB;AAWlB,MAAM,eAAe,QAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|