@decaf-ts/integrations 0.8.0 → 0.9.0
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/README.md +4 -0
- package/dist/integrations.cjs +1 -1
- package/jest.config.cjs +1 -11
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs +25 -0
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +52 -10
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/azure/index.cjs +1 -0
- package/lib/cjs/blob/azure/index.cjs.map +1 -1
- package/lib/cjs/blob/core/BlobEnvironment.cjs +19 -0
- package/lib/cjs/blob/core/BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobStoreService.cjs +6 -3
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/core/index.cjs +1 -0
- package/lib/cjs/blob/core/index.cjs.map +1 -1
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs +26 -0
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +31 -2
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/gcp/index.cjs +1 -0
- package/lib/cjs/blob/gcp/index.cjs.map +1 -1
- package/lib/cjs/blob/ipfs/IpfsBlobEnvironment.cjs +30 -0
- package/lib/cjs/blob/ipfs/IpfsBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +37 -2
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/ipfs/index.cjs +1 -0
- package/lib/cjs/blob/ipfs/index.cjs.map +1 -1
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs +22 -0
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs +29 -2
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/local/index.cjs +1 -0
- package/lib/cjs/blob/local/index.cjs.map +1 -1
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs +21 -0
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +28 -2
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/memory/index.cjs +1 -0
- package/lib/cjs/blob/memory/index.cjs.map +1 -1
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs +32 -0
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +45 -4
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs +32 -0
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs +45 -4
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs +32 -0
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +43 -310
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -1
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +327 -0
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/index.cjs +4 -0
- package/lib/cjs/blob/s3/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/catalog/GraphBuiltInRegistrations.cjs +100 -0
- package/lib/cjs/graph/engine/catalog/GraphBuiltInRegistrations.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/GraphCatalogueErrors.cjs +29 -0
- package/lib/cjs/graph/engine/catalog/GraphCatalogueErrors.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeCatalogue.cjs +270 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeCatalogue.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeManifestResolver.cjs +169 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeManifestResolver.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeMethodRegistry.cjs +64 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeMethodRegistry.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeRegistration.cjs +17 -0
- package/lib/cjs/graph/engine/catalog/GraphNodeRegistration.cjs.map +1 -0
- package/lib/cjs/graph/engine/catalog/index.cjs +24 -0
- package/lib/cjs/graph/engine/catalog/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/constants.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +1 -0
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs.map +1 -1
- package/lib/cjs/graph/engine/errors/GraphRunCancelledError.cjs +18 -0
- package/lib/cjs/graph/engine/errors/GraphRunCancelledError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/index.cjs +1 -0
- package/lib/cjs/graph/engine/errors/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/events/index.cjs +0 -1
- package/lib/cjs/graph/engine/events/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/BreakGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/execution/BreakGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs +10 -6
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +30 -18
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +354 -73
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +3 -3
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs +9 -6
- package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +11 -10
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/index.cjs +8 -11
- package/lib/cjs/graph/engine/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +37 -12
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +38 -13
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +38 -13
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs.map +1 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs.map +1 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +43 -14
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs.map +1 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs.map +1 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +79 -88
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs.map +1 -1
- package/lib/cjs/graph/engine/planning/index.cjs +0 -1
- package/lib/cjs/graph/engine/planning/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +28 -15
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs.map +1 -1
- package/lib/cjs/graph/engine/runs/GraphRunEventPublisher.cjs +69 -0
- package/lib/cjs/graph/engine/runs/GraphRunEventPublisher.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/GraphRunExecutor.cjs +291 -0
- package/lib/cjs/graph/engine/runs/GraphRunExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/GraphRunFingerprint.cjs +29 -0
- package/lib/cjs/graph/engine/runs/GraphRunFingerprint.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/GraphRunService.cjs +259 -0
- package/lib/cjs/graph/engine/runs/GraphRunService.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/InMemoryGraphRunEventStore.cjs +69 -0
- package/lib/cjs/graph/engine/runs/InMemoryGraphRunEventStore.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/InMemoryGraphRunStore.cjs +26 -0
- package/lib/cjs/graph/engine/runs/InMemoryGraphRunStore.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/index.cjs +26 -0
- package/lib/cjs/graph/engine/runs/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/ownership.cjs +34 -0
- package/lib/cjs/graph/engine/runs/ownership.cjs.map +1 -0
- package/lib/cjs/graph/engine/runs/types.cjs.map +1 -0
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +2 -2
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs.map +1 -1
- package/lib/cjs/graph/engine/validation/GraphConnectionPolicyValidator.cjs +142 -0
- package/lib/cjs/graph/engine/validation/GraphConnectionPolicyValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphCredentialReferenceValidator.cjs +160 -0
- package/lib/cjs/graph/engine/validation/GraphCredentialReferenceValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +6 -10
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs.map +1 -1
- package/lib/cjs/graph/engine/validation/GraphEdgeInstanceValidator.cjs +166 -0
- package/lib/cjs/graph/engine/validation/GraphEdgeInstanceValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphNodeInstanceValidator.cjs +86 -0
- package/lib/cjs/graph/engine/validation/GraphNodeInstanceValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphParameterValidator.cjs +423 -0
- package/lib/cjs/graph/engine/validation/GraphParameterValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphResolvedWorkflow.cjs +4 -0
- package/lib/cjs/graph/engine/validation/GraphResolvedWorkflow.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphValidationErrors.cjs +50 -0
- package/lib/cjs/graph/engine/validation/GraphValidationErrors.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphValidationIssue.cjs +4 -0
- package/lib/cjs/graph/engine/validation/GraphValidationIssue.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphWorkflowDocumentValidator.cjs +478 -0
- package/lib/cjs/graph/engine/validation/GraphWorkflowDocumentValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/index.cjs +12 -1
- package/lib/cjs/graph/engine/validation/index.cjs.map +1 -1
- package/lib/cjs/graph/index.cjs +4 -4
- package/lib/cjs/graph/log/GraphRunLogger.cjs +10 -6
- package/lib/cjs/graph/log/GraphRunLogger.cjs.map +1 -1
- package/lib/cjs/graph/log/LogParameters.cjs +13 -13
- package/lib/cjs/graph/log/LogParameters.cjs.map +1 -1
- package/lib/cjs/index.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutionController.cjs +140 -16
- package/lib/cjs/nest/graph/GraphExecutionController.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs +94 -7
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs +11 -0
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +63 -61
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphNodeCatalogueController.cjs +270 -0
- package/lib/cjs/nest/graph/GraphNodeCatalogueController.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphResultService.cjs +16 -1
- package/lib/cjs/nest/graph/GraphResultService.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphRunController.cjs +279 -0
- package/lib/cjs/nest/graph/GraphRunController.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphRunModel.cjs +83 -0
- package/lib/cjs/nest/graph/GraphRunModel.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphRunModelService.cjs +121 -0
- package/lib/cjs/nest/graph/GraphRunModelService.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowBoundaryValidation.cjs +169 -0
- package/lib/cjs/nest/graph/GraphWorkflowBoundaryValidation.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowController.cjs +162 -0
- package/lib/cjs/nest/graph/GraphWorkflowController.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowDocumentLimits.cjs +12 -0
- package/lib/cjs/nest/graph/GraphWorkflowDocumentLimits.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowErrors.cjs +23 -0
- package/lib/cjs/nest/graph/GraphWorkflowErrors.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowModel.cjs +27 -1
- package/lib/cjs/nest/graph/GraphWorkflowModel.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphWorkflowService.cjs +211 -8
- package/lib/cjs/nest/graph/GraphWorkflowService.cjs.map +1 -1
- package/lib/cjs/nest/graph/index.cjs +8 -0
- package/lib/cjs/nest/graph/index.cjs.map +1 -1
- package/lib/cjs/nest/graph/main.cjs +22 -5
- package/lib/cjs/nest/graph/main.cjs.map +1 -1
- package/lib/cjs/nest/keycloakModule.cjs +3 -1
- package/lib/cjs/nest/keycloakModule.cjs.map +1 -1
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs +27 -0
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +53 -19
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/aws/index.cjs +1 -0
- package/lib/cjs/secrets/aws/index.cjs.map +1 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +45 -16
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs +23 -0
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/azure/index.cjs +1 -0
- package/lib/cjs/secrets/azure/index.cjs.map +1 -1
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs +29 -0
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretEnvironment.cjs +19 -0
- package/lib/cjs/secrets/core/SecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/core/index.cjs +2 -0
- package/lib/cjs/secrets/core/index.cjs.map +1 -1
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs +25 -0
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +45 -17
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -1
- package/lib/cjs/secrets/gcp/index.cjs +1 -0
- package/lib/cjs/secrets/gcp/index.cjs.map +1 -1
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs +21 -0
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretService.cjs +29 -3
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/model/index.cjs +1 -0
- package/lib/cjs/secrets/model/index.cjs.map +1 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs +24 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +34 -3
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/onepassword/index.cjs +1 -0
- package/lib/cjs/secrets/onepassword/index.cjs.map +1 -1
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs +24 -0
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +47 -16
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -1
- package/lib/cjs/secrets/vault/index.cjs +1 -0
- package/lib/cjs/secrets/vault/index.cjs.map +1 -1
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs +31 -0
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/aws/AwsSftpService.cjs +55 -5
- package/lib/cjs/sftp/aws/AwsSftpService.cjs.map +1 -1
- package/lib/cjs/sftp/core/SftpEnvironment.cjs +19 -0
- package/lib/cjs/sftp/core/SftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/core/SftpSource.cjs +10 -0
- package/lib/cjs/sftp/core/SftpSource.cjs.map +1 -1
- package/lib/cjs/sftp/core/index.cjs +1 -0
- package/lib/cjs/sftp/core/index.cjs.map +1 -1
- package/lib/cjs/sftp/index.cjs +3 -0
- package/lib/cjs/sftp/index.cjs.map +1 -1
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs +28 -0
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs +46 -5
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs.map +1 -1
- package/lib/cjs/shared/environmentValue.cjs +31 -0
- package/lib/cjs/shared/environmentValue.cjs.map +1 -0
- package/lib/esm/blob/azure/AzureBlobEnvironment.js +21 -0
- package/lib/esm/blob/azure/AzureBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/azure/AzureBlobStoreService.js +51 -12
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -1
- package/lib/esm/blob/azure/index.js +1 -0
- package/lib/esm/blob/azure/index.js.map +1 -1
- package/lib/esm/blob/core/BlobEnvironment.js +15 -0
- package/lib/esm/blob/core/BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/core/BlobStoreService.js +6 -3
- package/lib/esm/blob/core/BlobStoreService.js.map +1 -1
- package/lib/esm/blob/core/index.js +1 -0
- package/lib/esm/blob/core/index.js.map +1 -1
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js +22 -0
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +29 -3
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -1
- package/lib/esm/blob/gcp/index.js +1 -0
- package/lib/esm/blob/gcp/index.js.map +1 -1
- package/lib/esm/blob/ipfs/IpfsBlobEnvironment.js +26 -0
- package/lib/esm/blob/ipfs/IpfsBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +35 -3
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +1 -1
- package/lib/esm/blob/ipfs/index.js +1 -0
- package/lib/esm/blob/ipfs/index.js.map +1 -1
- package/lib/esm/blob/local/LocalBlobEnvironment.js +18 -0
- package/lib/esm/blob/local/LocalBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/local/LocalBlobStoreService.js +27 -3
- package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -1
- package/lib/esm/blob/local/index.js +1 -0
- package/lib/esm/blob/local/index.js.map +1 -1
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js +17 -0
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/memory/MemoryBlobStoreService.js +26 -3
- package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -1
- package/lib/esm/blob/memory/index.js +1 -0
- package/lib/esm/blob/memory/index.js.map +1 -1
- package/lib/esm/blob/s3/MinioBlobEnvironment.js +28 -0
- package/lib/esm/blob/s3/MinioBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/MinioBlobStoreService.js +42 -4
- package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -1
- package/lib/esm/blob/s3/R2BlobEnvironment.js +28 -0
- package/lib/esm/blob/s3/R2BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/R2BlobStoreService.js +42 -4
- package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -1
- package/lib/esm/blob/s3/S3BlobEnvironment.js +28 -0
- package/lib/esm/blob/s3/S3BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/S3BlobStoreService.js +41 -311
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -1
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +322 -0
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/index.js +4 -0
- package/lib/esm/blob/s3/index.js.map +1 -1
- package/lib/esm/graph/engine/catalog/GraphBuiltInRegistrations.js +95 -0
- package/lib/esm/graph/engine/catalog/GraphBuiltInRegistrations.js.map +1 -0
- package/lib/esm/graph/engine/catalog/GraphCatalogueErrors.js +22 -0
- package/lib/esm/graph/engine/catalog/GraphCatalogueErrors.js.map +1 -0
- package/lib/esm/graph/engine/catalog/GraphNodeCatalogue.js +265 -0
- package/lib/esm/graph/engine/catalog/GraphNodeCatalogue.js.map +1 -0
- package/lib/esm/graph/engine/catalog/GraphNodeManifestResolver.js +162 -0
- package/lib/esm/graph/engine/catalog/GraphNodeManifestResolver.js.map +1 -0
- package/lib/esm/graph/engine/catalog/GraphNodeMethodRegistry.js +59 -0
- package/lib/esm/graph/engine/catalog/GraphNodeMethodRegistry.js.map +1 -0
- package/lib/esm/graph/engine/catalog/GraphNodeRegistration.js +12 -0
- package/lib/esm/graph/engine/catalog/GraphNodeRegistration.js.map +1 -0
- package/lib/esm/graph/engine/catalog/index.js +7 -0
- package/lib/esm/graph/engine/catalog/index.js.map +1 -0
- package/lib/esm/graph/engine/constants.js +2 -2
- package/lib/esm/graph/engine/errors/GraphExecutionError.js +1 -0
- package/lib/esm/graph/engine/errors/GraphExecutionError.js.map +1 -1
- package/lib/esm/graph/engine/errors/GraphRunCancelledError.js +13 -0
- package/lib/esm/graph/engine/errors/GraphRunCancelledError.js.map +1 -0
- package/lib/esm/graph/engine/errors/index.js +1 -0
- package/lib/esm/graph/engine/errors/index.js.map +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js.map +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js.map +1 -1
- package/lib/esm/graph/engine/events/index.js +0 -1
- package/lib/esm/graph/engine/events/index.js.map +1 -1
- package/lib/esm/graph/engine/execution/BreakGraphNodeExecutor.js +2 -2
- package/lib/esm/graph/engine/execution/BreakGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js +10 -6
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js +28 -16
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js.map +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +322 -41
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js.map +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionFrame.js.map +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js +3 -3
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js.map +1 -1
- package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js +9 -6
- package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +11 -10
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/index.js +8 -11
- package/lib/esm/graph/engine/index.js.map +1 -1
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +32 -7
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +32 -7
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +32 -7
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js.map +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +2 -2
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js.map +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningService.js +43 -14
- package/lib/esm/graph/engine/pinning/GraphPinningService.js.map +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +3 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js.map +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +79 -88
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js.map +1 -1
- package/lib/esm/graph/engine/planning/index.js +0 -1
- package/lib/esm/graph/engine/planning/index.js.map +1 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +28 -15
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js.map +1 -1
- package/lib/esm/graph/engine/runs/GraphRunEventPublisher.js +64 -0
- package/lib/esm/graph/engine/runs/GraphRunEventPublisher.js.map +1 -0
- package/lib/esm/graph/engine/runs/GraphRunExecutor.js +286 -0
- package/lib/esm/graph/engine/runs/GraphRunExecutor.js.map +1 -0
- package/lib/esm/graph/engine/runs/GraphRunFingerprint.js +25 -0
- package/lib/esm/graph/engine/runs/GraphRunFingerprint.js.map +1 -0
- package/lib/esm/graph/engine/runs/GraphRunService.js +254 -0
- package/lib/esm/graph/engine/runs/GraphRunService.js.map +1 -0
- package/lib/esm/graph/engine/runs/InMemoryGraphRunEventStore.js +64 -0
- package/lib/esm/graph/engine/runs/InMemoryGraphRunEventStore.js.map +1 -0
- package/lib/esm/graph/engine/runs/InMemoryGraphRunStore.js +21 -0
- package/lib/esm/graph/engine/runs/InMemoryGraphRunStore.js.map +1 -0
- package/lib/esm/graph/engine/runs/index.js +9 -0
- package/lib/esm/graph/engine/runs/index.js.map +1 -0
- package/lib/esm/graph/engine/runs/ownership.js +30 -0
- package/lib/esm/graph/engine/runs/ownership.js.map +1 -0
- package/lib/esm/graph/engine/runs/types.js.map +1 -0
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +1 -1
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js.map +1 -1
- package/lib/esm/graph/engine/validation/GraphConnectionPolicyValidator.js +137 -0
- package/lib/esm/graph/engine/validation/GraphConnectionPolicyValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphCredentialReferenceValidator.js +155 -0
- package/lib/esm/graph/engine/validation/GraphCredentialReferenceValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +6 -10
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js.map +1 -1
- package/lib/esm/graph/engine/validation/GraphEdgeInstanceValidator.js +161 -0
- package/lib/esm/graph/engine/validation/GraphEdgeInstanceValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphNodeInstanceValidator.js +81 -0
- package/lib/esm/graph/engine/validation/GraphNodeInstanceValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphParameterValidator.js +416 -0
- package/lib/esm/graph/engine/validation/GraphParameterValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphResolvedWorkflow.js +2 -0
- package/lib/esm/graph/engine/validation/GraphResolvedWorkflow.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphValidationErrors.js +43 -0
- package/lib/esm/graph/engine/validation/GraphValidationErrors.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphValidationIssue.js +2 -0
- package/lib/esm/graph/engine/validation/GraphValidationIssue.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphWorkflowDocumentValidator.js +472 -0
- package/lib/esm/graph/engine/validation/GraphWorkflowDocumentValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/index.js +12 -1
- package/lib/esm/graph/engine/validation/index.js.map +1 -1
- package/lib/esm/graph/index.js +4 -4
- package/lib/esm/graph/log/GraphRunLogger.js +5 -1
- package/lib/esm/graph/log/GraphRunLogger.js.map +1 -1
- package/lib/esm/graph/log/LogParameters.js +1 -1
- package/lib/esm/graph/log/LogParameters.js.map +1 -1
- package/lib/esm/index.js +2 -2
- package/lib/esm/nest/graph/GraphExecutionController.js +143 -19
- package/lib/esm/nest/graph/GraphExecutionController.js.map +1 -1
- package/lib/esm/nest/graph/GraphExecutionModule.js +97 -10
- package/lib/esm/nest/graph/GraphExecutionModule.js.map +1 -1
- package/lib/esm/nest/graph/GraphExecutionResultModel.js +11 -0
- package/lib/esm/nest/graph/GraphExecutionResultModel.js.map +1 -1
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +62 -62
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +1 -1
- package/lib/esm/nest/graph/GraphNodeCatalogueController.js +261 -0
- package/lib/esm/nest/graph/GraphNodeCatalogueController.js.map +1 -0
- package/lib/esm/nest/graph/GraphResultService.js +16 -1
- package/lib/esm/nest/graph/GraphResultService.js.map +1 -1
- package/lib/esm/nest/graph/GraphRunController.js +270 -0
- package/lib/esm/nest/graph/GraphRunController.js.map +1 -0
- package/lib/esm/nest/graph/GraphRunModel.js +74 -0
- package/lib/esm/nest/graph/GraphRunModel.js.map +1 -0
- package/lib/esm/nest/graph/GraphRunModelService.js +112 -0
- package/lib/esm/nest/graph/GraphRunModelService.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowBoundaryValidation.js +164 -0
- package/lib/esm/nest/graph/GraphWorkflowBoundaryValidation.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowController.js +153 -0
- package/lib/esm/nest/graph/GraphWorkflowController.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowDocumentLimits.js +8 -0
- package/lib/esm/nest/graph/GraphWorkflowDocumentLimits.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowErrors.js +18 -0
- package/lib/esm/nest/graph/GraphWorkflowErrors.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowModel.js +27 -1
- package/lib/esm/nest/graph/GraphWorkflowModel.js.map +1 -1
- package/lib/esm/nest/graph/GraphWorkflowService.js +210 -8
- package/lib/esm/nest/graph/GraphWorkflowService.js.map +1 -1
- package/lib/esm/nest/graph/index.js +8 -0
- package/lib/esm/nest/graph/index.js.map +1 -1
- package/lib/esm/nest/graph/main.js +22 -5
- package/lib/esm/nest/graph/main.js.map +1 -1
- package/lib/esm/nest/keycloakModule.js +3 -1
- package/lib/esm/nest/keycloakModule.js.map +1 -1
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js +23 -0
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretService.js +39 -8
- package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -1
- package/lib/esm/secrets/aws/index.js +1 -0
- package/lib/esm/secrets/aws/index.js.map +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +30 -4
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -1
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js +19 -0
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/azure/index.js +1 -0
- package/lib/esm/secrets/azure/index.js.map +1 -1
- package/lib/esm/secrets/core/ClientBasedSecretService.js +24 -0
- package/lib/esm/secrets/core/ClientBasedSecretService.js.map +1 -0
- package/lib/esm/secrets/core/SecretEnvironment.js +15 -0
- package/lib/esm/secrets/core/SecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/core/index.js +2 -0
- package/lib/esm/secrets/core/index.js.map +1 -1
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js +21 -0
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +30 -5
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -1
- package/lib/esm/secrets/gcp/index.js +1 -0
- package/lib/esm/secrets/gcp/index.js.map +1 -1
- package/lib/esm/secrets/model/ModelSecretEnvironment.js +17 -0
- package/lib/esm/secrets/model/ModelSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretService.js +28 -5
- package/lib/esm/secrets/model/ModelSecretService.js.map +1 -1
- package/lib/esm/secrets/model/index.js +1 -0
- package/lib/esm/secrets/model/index.js.map +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js +20 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +33 -5
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -1
- package/lib/esm/secrets/onepassword/index.js +1 -0
- package/lib/esm/secrets/onepassword/index.js.map +1 -1
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js +20 -0
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretService.js +33 -5
- package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -1
- package/lib/esm/secrets/vault/index.js +1 -0
- package/lib/esm/secrets/vault/index.js.map +1 -1
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js +27 -0
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/aws/AwsSftpService.js +52 -6
- package/lib/esm/sftp/aws/AwsSftpService.js.map +1 -1
- package/lib/esm/sftp/core/SftpEnvironment.js +15 -0
- package/lib/esm/sftp/core/SftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/core/SftpSource.js +12 -2
- package/lib/esm/sftp/core/SftpSource.js.map +1 -1
- package/lib/esm/sftp/core/index.js +1 -0
- package/lib/esm/sftp/core/index.js.map +1 -1
- package/lib/esm/sftp/index.js +3 -0
- package/lib/esm/sftp/index.js.map +1 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js +24 -0
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js +43 -6
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js.map +1 -1
- package/lib/esm/shared/environmentValue.js +25 -0
- package/lib/esm/shared/environmentValue.js.map +1 -0
- package/lib/types/blob/azure/AzureBlobEnvironment.d.cts +25 -0
- package/lib/types/blob/azure/AzureBlobEnvironment.d.mts +25 -0
- package/lib/types/blob/azure/AzureBlobStoreService.d.cts +1 -0
- package/lib/types/blob/azure/AzureBlobStoreService.d.mts +1 -0
- package/lib/types/blob/azure/index.d.cts +1 -0
- package/lib/types/blob/azure/index.d.mts +1 -0
- package/lib/types/blob/core/BlobEnvironment.d.cts +11 -0
- package/lib/types/blob/core/BlobEnvironment.d.mts +11 -0
- package/lib/types/blob/core/BlobStoreService.d.cts +6 -0
- package/lib/types/blob/core/BlobStoreService.d.mts +6 -0
- package/lib/types/blob/core/index.d.cts +1 -0
- package/lib/types/blob/core/index.d.mts +1 -0
- package/lib/types/blob/gcp/GcsBlobEnvironment.d.cts +17 -0
- package/lib/types/blob/gcp/GcsBlobEnvironment.d.mts +17 -0
- package/lib/types/blob/gcp/GcsBlobStoreService.d.cts +1 -0
- package/lib/types/blob/gcp/GcsBlobStoreService.d.mts +1 -0
- package/lib/types/blob/gcp/index.d.cts +1 -0
- package/lib/types/blob/gcp/index.d.mts +1 -0
- package/lib/types/blob/ipfs/IpfsBlobEnvironment.d.cts +24 -0
- package/lib/types/blob/ipfs/IpfsBlobEnvironment.d.mts +24 -0
- package/lib/types/blob/ipfs/IpfsBlobStoreService.d.cts +1 -0
- package/lib/types/blob/ipfs/IpfsBlobStoreService.d.mts +1 -0
- package/lib/types/blob/ipfs/index.d.cts +1 -0
- package/lib/types/blob/ipfs/index.d.mts +1 -0
- package/lib/types/blob/local/LocalBlobEnvironment.d.cts +15 -0
- package/lib/types/blob/local/LocalBlobEnvironment.d.mts +15 -0
- package/lib/types/blob/local/LocalBlobStoreService.d.cts +1 -0
- package/lib/types/blob/local/LocalBlobStoreService.d.mts +1 -0
- package/lib/types/blob/local/index.d.cts +1 -0
- package/lib/types/blob/local/index.d.mts +1 -0
- package/lib/types/blob/memory/MemoryBlobEnvironment.d.cts +14 -0
- package/lib/types/blob/memory/MemoryBlobEnvironment.d.mts +14 -0
- package/lib/types/blob/memory/MemoryBlobStoreService.d.cts +1 -0
- package/lib/types/blob/memory/MemoryBlobStoreService.d.mts +1 -0
- package/lib/types/blob/memory/index.d.cts +1 -0
- package/lib/types/blob/memory/index.d.mts +1 -0
- package/lib/types/blob/s3/MinioBlobEnvironment.d.cts +11 -0
- package/lib/types/blob/s3/MinioBlobEnvironment.d.mts +11 -0
- package/lib/types/blob/s3/MinioBlobStoreService.d.cts +4 -7
- package/lib/types/blob/s3/MinioBlobStoreService.d.mts +4 -7
- package/lib/types/blob/s3/R2BlobEnvironment.d.cts +11 -0
- package/lib/types/blob/s3/R2BlobEnvironment.d.mts +11 -0
- package/lib/types/blob/s3/R2BlobStoreService.d.cts +4 -7
- package/lib/types/blob/s3/R2BlobStoreService.d.mts +4 -7
- package/lib/types/blob/s3/S3BlobEnvironment.d.cts +26 -0
- package/lib/types/blob/s3/S3BlobEnvironment.d.mts +26 -0
- package/lib/types/blob/s3/S3BlobStoreService.d.cts +4 -24
- package/lib/types/blob/s3/S3BlobStoreService.d.mts +4 -24
- package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.cts +30 -0
- package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.mts +30 -0
- package/lib/types/blob/s3/index.d.cts +4 -0
- package/lib/types/blob/s3/index.d.mts +4 -0
- package/lib/types/graph/engine/catalog/GraphBuiltInRegistrations.d.cts +17 -0
- package/lib/types/graph/engine/catalog/GraphBuiltInRegistrations.d.mts +17 -0
- package/lib/types/graph/engine/catalog/GraphCatalogueErrors.d.cts +13 -0
- package/lib/types/graph/engine/catalog/GraphCatalogueErrors.d.mts +13 -0
- package/lib/types/graph/engine/catalog/GraphNodeCatalogue.d.cts +71 -0
- package/lib/types/graph/engine/catalog/GraphNodeCatalogue.d.mts +71 -0
- package/lib/types/graph/engine/catalog/GraphNodeManifestResolver.d.cts +42 -0
- package/lib/types/graph/engine/catalog/GraphNodeManifestResolver.d.mts +42 -0
- package/lib/types/graph/engine/catalog/GraphNodeMethodRegistry.d.cts +22 -0
- package/lib/types/graph/engine/catalog/GraphNodeMethodRegistry.d.mts +22 -0
- package/lib/types/graph/engine/catalog/GraphNodeRegistration.d.cts +68 -0
- package/lib/types/graph/engine/catalog/GraphNodeRegistration.d.mts +68 -0
- package/lib/types/graph/engine/catalog/index.d.cts +6 -0
- package/lib/types/graph/engine/catalog/index.d.mts +6 -0
- package/lib/types/graph/engine/constants.d.cts +2 -2
- package/lib/types/graph/engine/constants.d.mts +2 -2
- package/lib/types/graph/engine/errors/GraphRunCancelledError.d.cts +9 -0
- package/lib/types/graph/engine/errors/GraphRunCancelledError.d.mts +9 -0
- package/lib/types/graph/engine/errors/index.d.cts +1 -0
- package/lib/types/graph/engine/errors/index.d.mts +1 -0
- package/lib/types/graph/engine/events/GraphExecutionEventEmitter.d.cts +1 -1
- package/lib/types/graph/engine/events/GraphExecutionEventEmitter.d.mts +1 -1
- package/lib/types/graph/engine/events/GraphExecutionEventFactory.d.cts +1 -1
- package/lib/types/graph/engine/events/GraphExecutionEventFactory.d.mts +1 -1
- package/lib/types/graph/engine/events/GraphExecutionObserver.d.cts +1 -1
- package/lib/types/graph/engine/events/GraphExecutionObserver.d.mts +1 -1
- package/lib/types/graph/engine/events/index.d.cts +0 -1
- package/lib/types/graph/engine/events/index.d.mts +0 -1
- package/lib/types/graph/engine/execution/BreakGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/execution/BreakGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/execution/GraphExecutionContext.d.cts +28 -14
- package/lib/types/graph/engine/execution/GraphExecutionContext.d.mts +28 -14
- package/lib/types/graph/engine/execution/GraphExecutionEngine.d.cts +106 -23
- package/lib/types/graph/engine/execution/GraphExecutionEngine.d.mts +106 -23
- package/lib/types/graph/engine/execution/GraphExecutionFrame.d.cts +2 -1
- package/lib/types/graph/engine/execution/GraphExecutionFrame.d.mts +2 -1
- package/lib/types/graph/engine/execution/GraphExecutionResult.d.cts +3 -3
- package/lib/types/graph/engine/execution/GraphExecutionResult.d.mts +3 -3
- package/lib/types/graph/engine/execution/GraphNodeExecutor.d.cts +17 -9
- package/lib/types/graph/engine/execution/GraphNodeExecutor.d.mts +17 -9
- package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.cts +3 -3
- package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.mts +3 -3
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/index.d.cts +6 -9
- package/lib/types/graph/engine/index.d.mts +6 -9
- package/lib/types/graph/engine/loops/ConditionExpressionEvaluator.d.cts +1 -1
- package/lib/types/graph/engine/loops/ConditionExpressionEvaluator.d.mts +1 -1
- package/lib/types/graph/engine/loops/ForeachGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/loops/ForeachGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/loops/GraphConditionEvaluator.d.cts +1 -1
- package/lib/types/graph/engine/loops/GraphConditionEvaluator.d.mts +1 -1
- package/lib/types/graph/engine/loops/UntilGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/loops/UntilGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/loops/WhileGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/loops/WhileGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/engine/pinning/GraphPinningService.d.cts +16 -5
- package/lib/types/graph/engine/pinning/GraphPinningService.d.mts +16 -5
- package/lib/types/graph/engine/planning/GraphExecutionPlan.d.cts +8 -4
- package/lib/types/graph/engine/planning/GraphExecutionPlan.d.mts +8 -4
- package/lib/types/graph/engine/planning/GraphExecutionPlanEdge.d.cts +9 -4
- package/lib/types/graph/engine/planning/GraphExecutionPlanEdge.d.mts +9 -4
- package/lib/types/graph/engine/planning/GraphExecutionPlanNode.d.cts +17 -9
- package/lib/types/graph/engine/planning/GraphExecutionPlanNode.d.mts +17 -9
- package/lib/types/graph/engine/planning/GraphExecutionPlanner.d.cts +21 -33
- package/lib/types/graph/engine/planning/GraphExecutionPlanner.d.mts +21 -33
- package/lib/types/graph/engine/planning/index.d.cts +0 -1
- package/lib/types/graph/engine/planning/index.d.mts +0 -1
- package/lib/types/graph/engine/registry/GraphNodeExecutorRegistry.d.cts +22 -8
- package/lib/types/graph/engine/registry/GraphNodeExecutorRegistry.d.mts +22 -8
- package/lib/types/graph/engine/runs/GraphRunEventPublisher.d.cts +26 -0
- package/lib/types/graph/engine/runs/GraphRunEventPublisher.d.mts +26 -0
- package/lib/types/graph/engine/runs/GraphRunExecutor.d.cts +75 -0
- package/lib/types/graph/engine/runs/GraphRunExecutor.d.mts +75 -0
- package/lib/types/graph/engine/runs/GraphRunFingerprint.d.cts +8 -0
- package/lib/types/graph/engine/runs/GraphRunFingerprint.d.mts +8 -0
- package/lib/types/graph/engine/runs/GraphRunService.d.cts +93 -0
- package/lib/types/graph/engine/runs/GraphRunService.d.mts +93 -0
- package/lib/types/graph/engine/runs/InMemoryGraphRunEventStore.d.cts +28 -0
- package/lib/types/graph/engine/runs/InMemoryGraphRunEventStore.d.mts +28 -0
- package/lib/types/graph/engine/runs/InMemoryGraphRunStore.d.cts +12 -0
- package/lib/types/graph/engine/runs/InMemoryGraphRunStore.d.mts +12 -0
- package/lib/types/graph/engine/runs/index.d.cts +8 -0
- package/lib/types/graph/engine/runs/index.d.mts +8 -0
- package/lib/types/graph/engine/runs/ownership.d.cts +25 -0
- package/lib/types/graph/engine/runs/ownership.d.mts +25 -0
- package/lib/types/graph/engine/runs/types.d.cts +83 -0
- package/lib/types/graph/engine/runs/types.d.mts +83 -0
- package/lib/types/graph/engine/types.d.cts +37 -12
- package/lib/types/graph/engine/types.d.mts +37 -12
- package/lib/types/graph/engine/validation/GraphConnectionPolicyValidator.d.cts +32 -0
- package/lib/types/graph/engine/validation/GraphConnectionPolicyValidator.d.mts +32 -0
- package/lib/types/graph/engine/validation/GraphCredentialReferenceValidator.d.cts +62 -0
- package/lib/types/graph/engine/validation/GraphCredentialReferenceValidator.d.mts +62 -0
- package/lib/types/graph/engine/validation/GraphDefinitionValidator.d.cts +11 -9
- package/lib/types/graph/engine/validation/GraphDefinitionValidator.d.mts +11 -9
- package/lib/types/graph/engine/validation/GraphEdgeInstanceValidator.d.cts +32 -0
- package/lib/types/graph/engine/validation/GraphEdgeInstanceValidator.d.mts +32 -0
- package/lib/types/graph/engine/validation/GraphNodeInstanceValidator.d.cts +37 -0
- package/lib/types/graph/engine/validation/GraphNodeInstanceValidator.d.mts +37 -0
- package/lib/types/graph/engine/validation/GraphParameterValidator.d.cts +92 -0
- package/lib/types/graph/engine/validation/GraphParameterValidator.d.mts +92 -0
- package/lib/types/graph/engine/validation/GraphResolvedWorkflow.d.cts +66 -0
- package/lib/types/graph/engine/validation/GraphResolvedWorkflow.d.mts +66 -0
- package/lib/types/graph/engine/validation/GraphValidationErrors.d.cts +34 -0
- package/lib/types/graph/engine/validation/GraphValidationErrors.d.mts +34 -0
- package/lib/types/graph/engine/validation/GraphValidationIssue.d.cts +39 -0
- package/lib/types/graph/engine/validation/GraphValidationIssue.d.mts +39 -0
- package/lib/types/graph/engine/validation/GraphWorkflowDocumentValidator.d.cts +162 -0
- package/lib/types/graph/engine/validation/GraphWorkflowDocumentValidator.d.mts +162 -0
- package/lib/types/graph/engine/validation/index.d.cts +12 -1
- package/lib/types/graph/engine/validation/index.d.mts +12 -1
- package/lib/types/graph/index.d.cts +4 -4
- package/lib/types/graph/index.d.mts +4 -4
- package/lib/types/graph/log/GraphRunLogger.d.cts +3 -1
- package/lib/types/graph/log/GraphRunLogger.d.mts +3 -1
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/lib/types/nest/graph/GraphExecutionController.d.cts +83 -4
- package/lib/types/nest/graph/GraphExecutionController.d.mts +83 -4
- package/lib/types/nest/graph/GraphExecutionModule.d.cts +64 -0
- package/lib/types/nest/graph/GraphExecutionModule.d.mts +64 -0
- package/lib/types/nest/graph/GraphExecutionResultModel.d.cts +12 -0
- package/lib/types/nest/graph/GraphExecutionResultModel.d.mts +12 -0
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.cts +42 -28
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.mts +42 -28
- package/lib/types/nest/graph/GraphNodeCatalogueController.d.cts +70 -0
- package/lib/types/nest/graph/GraphNodeCatalogueController.d.mts +70 -0
- package/lib/types/nest/graph/GraphResultService.d.cts +12 -0
- package/lib/types/nest/graph/GraphResultService.d.mts +12 -0
- package/lib/types/nest/graph/GraphRunController.d.cts +87 -0
- package/lib/types/nest/graph/GraphRunController.d.mts +87 -0
- package/lib/types/nest/graph/GraphRunModel.d.cts +22 -0
- package/lib/types/nest/graph/GraphRunModel.d.mts +22 -0
- package/lib/types/nest/graph/GraphRunModelService.d.cts +21 -0
- package/lib/types/nest/graph/GraphRunModelService.d.mts +21 -0
- package/lib/types/nest/graph/GraphWorkflowBoundaryValidation.d.cts +28 -0
- package/lib/types/nest/graph/GraphWorkflowBoundaryValidation.d.mts +28 -0
- package/lib/types/nest/graph/GraphWorkflowController.d.cts +62 -0
- package/lib/types/nest/graph/GraphWorkflowController.d.mts +62 -0
- package/lib/types/nest/graph/GraphWorkflowDocumentLimits.d.cts +33 -0
- package/lib/types/nest/graph/GraphWorkflowDocumentLimits.d.mts +33 -0
- package/lib/types/nest/graph/GraphWorkflowErrors.d.cts +13 -0
- package/lib/types/nest/graph/GraphWorkflowErrors.d.mts +13 -0
- package/lib/types/nest/graph/GraphWorkflowModel.d.cts +19 -1
- package/lib/types/nest/graph/GraphWorkflowModel.d.mts +19 -1
- package/lib/types/nest/graph/GraphWorkflowService.d.cts +48 -1
- package/lib/types/nest/graph/GraphWorkflowService.d.mts +48 -1
- package/lib/types/nest/graph/index.d.cts +8 -0
- package/lib/types/nest/graph/index.d.mts +8 -0
- package/lib/types/nest/keycloakModule.d.cts +9 -1
- package/lib/types/nest/keycloakModule.d.mts +9 -1
- package/lib/types/secrets/aws/AwsSecretEnvironment.d.cts +21 -0
- package/lib/types/secrets/aws/AwsSecretEnvironment.d.mts +21 -0
- package/lib/types/secrets/aws/AwsSecretService.d.cts +4 -3
- package/lib/types/secrets/aws/AwsSecretService.d.mts +4 -3
- package/lib/types/secrets/aws/index.d.cts +1 -0
- package/lib/types/secrets/aws/index.d.mts +1 -0
- package/lib/types/secrets/azure/AzureKeyVaultSecretService.d.cts +4 -3
- package/lib/types/secrets/azure/AzureKeyVaultSecretService.d.mts +4 -3
- package/lib/types/secrets/azure/AzureSecretEnvironment.d.cts +14 -0
- package/lib/types/secrets/azure/AzureSecretEnvironment.d.mts +14 -0
- package/lib/types/secrets/azure/index.d.cts +1 -0
- package/lib/types/secrets/azure/index.d.mts +1 -0
- package/lib/types/secrets/core/ClientBasedSecretService.d.cts +20 -0
- package/lib/types/secrets/core/ClientBasedSecretService.d.mts +20 -0
- package/lib/types/secrets/core/SecretEnvironment.d.cts +11 -0
- package/lib/types/secrets/core/SecretEnvironment.d.mts +11 -0
- package/lib/types/secrets/core/index.d.cts +2 -0
- package/lib/types/secrets/core/index.d.mts +2 -0
- package/lib/types/secrets/gcp/GcpSecretEnvironment.d.cts +16 -0
- package/lib/types/secrets/gcp/GcpSecretEnvironment.d.mts +16 -0
- package/lib/types/secrets/gcp/GcpSecretManagerService.d.cts +4 -3
- package/lib/types/secrets/gcp/GcpSecretManagerService.d.mts +4 -3
- package/lib/types/secrets/gcp/index.d.cts +1 -0
- package/lib/types/secrets/gcp/index.d.mts +1 -0
- package/lib/types/secrets/model/ModelSecretEnvironment.d.cts +14 -0
- package/lib/types/secrets/model/ModelSecretEnvironment.d.mts +14 -0
- package/lib/types/secrets/model/ModelSecretService.d.cts +4 -3
- package/lib/types/secrets/model/ModelSecretService.d.mts +4 -3
- package/lib/types/secrets/model/ModelSecretServiceConfig.d.cts +2 -1
- package/lib/types/secrets/model/ModelSecretServiceConfig.d.mts +2 -1
- package/lib/types/secrets/model/index.d.cts +1 -0
- package/lib/types/secrets/model/index.d.mts +1 -0
- package/lib/types/secrets/onepassword/OnePasswordSecretEnvironment.d.cts +17 -0
- package/lib/types/secrets/onepassword/OnePasswordSecretEnvironment.d.mts +17 -0
- package/lib/types/secrets/onepassword/OnePasswordSecretService.d.cts +4 -3
- package/lib/types/secrets/onepassword/OnePasswordSecretService.d.mts +4 -3
- package/lib/types/secrets/onepassword/index.d.cts +1 -0
- package/lib/types/secrets/onepassword/index.d.mts +1 -0
- package/lib/types/secrets/vault/VaultSecretEnvironment.d.cts +17 -0
- package/lib/types/secrets/vault/VaultSecretEnvironment.d.mts +17 -0
- package/lib/types/secrets/vault/VaultSecretService.d.cts +4 -3
- package/lib/types/secrets/vault/VaultSecretService.d.mts +4 -3
- package/lib/types/secrets/vault/index.d.cts +1 -0
- package/lib/types/secrets/vault/index.d.mts +1 -0
- package/lib/types/sftp/aws/AwsSftpEnvironment.d.cts +24 -0
- package/lib/types/sftp/aws/AwsSftpEnvironment.d.mts +24 -0
- package/lib/types/sftp/aws/AwsSftpService.d.cts +1 -0
- package/lib/types/sftp/aws/AwsSftpService.d.mts +1 -0
- package/lib/types/sftp/core/SftpEnvironment.d.cts +11 -0
- package/lib/types/sftp/core/SftpEnvironment.d.mts +11 -0
- package/lib/types/sftp/core/SftpSource.d.cts +7 -0
- package/lib/types/sftp/core/SftpSource.d.mts +7 -0
- package/lib/types/sftp/core/index.d.cts +1 -0
- package/lib/types/sftp/core/index.d.mts +1 -0
- package/lib/types/sftp/index.d.cts +3 -0
- package/lib/types/sftp/index.d.mts +3 -0
- package/lib/types/sftp/ssh2/Ssh2SftpEnvironment.d.cts +21 -0
- package/lib/types/sftp/ssh2/Ssh2SftpEnvironment.d.mts +21 -0
- package/lib/types/sftp/ssh2/Ssh2SftpService.d.cts +1 -0
- package/lib/types/sftp/ssh2/Ssh2SftpService.d.mts +1 -0
- package/lib/types/shared/environmentValue.d.cts +16 -0
- package/lib/types/shared/environmentValue.d.mts +16 -0
- package/package.json +6 -16
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +0 -4
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +0 -172
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs.map +0 -1
- package/lib/cjs/graph/shared/GraphExecutionStateMapper.cjs +0 -97
- package/lib/cjs/graph/shared/GraphExecutionStateMapper.cjs.map +0 -1
- package/lib/cjs/graph/shared/constants.cjs +0 -99
- package/lib/cjs/graph/shared/constants.cjs.map +0 -1
- package/lib/cjs/graph/shared/index.cjs +0 -46
- package/lib/cjs/graph/shared/index.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/agent.cjs +0 -110
- package/lib/cjs/graph/shared/nodes/agent.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/base.cjs +0 -36
- package/lib/cjs/graph/shared/nodes/base.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/category-styles.cjs +0 -38
- package/lib/cjs/graph/shared/nodes/category-styles.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/flow-control.cjs +0 -630
- package/lib/cjs/graph/shared/nodes/flow-control.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/index.cjs +0 -35
- package/lib/cjs/graph/shared/nodes/index.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/triggers.cjs +0 -250
- package/lib/cjs/graph/shared/nodes/triggers.cjs.map +0 -1
- package/lib/cjs/graph/shared/types.cjs.map +0 -1
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js +0 -2
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js +0 -167
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js.map +0 -1
- package/lib/esm/graph/shared/GraphExecutionStateMapper.js +0 -91
- package/lib/esm/graph/shared/GraphExecutionStateMapper.js.map +0 -1
- package/lib/esm/graph/shared/constants.js +0 -135
- package/lib/esm/graph/shared/constants.js.map +0 -1
- package/lib/esm/graph/shared/index.js +0 -25
- package/lib/esm/graph/shared/index.js.map +0 -1
- package/lib/esm/graph/shared/nodes/agent.js +0 -101
- package/lib/esm/graph/shared/nodes/agent.js.map +0 -1
- package/lib/esm/graph/shared/nodes/base.js +0 -31
- package/lib/esm/graph/shared/nodes/base.js.map +0 -1
- package/lib/esm/graph/shared/nodes/category-styles.js +0 -34
- package/lib/esm/graph/shared/nodes/category-styles.js.map +0 -1
- package/lib/esm/graph/shared/nodes/flow-control.js +0 -621
- package/lib/esm/graph/shared/nodes/flow-control.js.map +0 -1
- package/lib/esm/graph/shared/nodes/index.js +0 -18
- package/lib/esm/graph/shared/nodes/index.js.map +0 -1
- package/lib/esm/graph/shared/nodes/triggers.js +0 -241
- package/lib/esm/graph/shared/nodes/triggers.js.map +0 -1
- package/lib/esm/graph/shared/types.js.map +0 -1
- package/lib/types/graph/engine/events/GraphExecutionEvent.d.cts +0 -6
- package/lib/types/graph/engine/events/GraphExecutionEvent.d.mts +0 -6
- package/lib/types/graph/engine/planning/GraphRelationResolver.d.cts +0 -62
- package/lib/types/graph/engine/planning/GraphRelationResolver.d.mts +0 -62
- package/lib/types/graph/shared/GraphExecutionStateMapper.d.cts +0 -66
- package/lib/types/graph/shared/GraphExecutionStateMapper.d.mts +0 -66
- package/lib/types/graph/shared/constants.d.cts +0 -120
- package/lib/types/graph/shared/constants.d.mts +0 -120
- package/lib/types/graph/shared/index.d.cts +0 -21
- package/lib/types/graph/shared/index.d.mts +0 -21
- package/lib/types/graph/shared/nodes/agent.d.cts +0 -44
- package/lib/types/graph/shared/nodes/agent.d.mts +0 -44
- package/lib/types/graph/shared/nodes/base.d.cts +0 -28
- package/lib/types/graph/shared/nodes/base.d.mts +0 -28
- package/lib/types/graph/shared/nodes/category-styles.d.cts +0 -8
- package/lib/types/graph/shared/nodes/category-styles.d.mts +0 -8
- package/lib/types/graph/shared/nodes/flow-control.d.cts +0 -163
- package/lib/types/graph/shared/nodes/flow-control.d.mts +0 -163
- package/lib/types/graph/shared/nodes/index.d.cts +0 -17
- package/lib/types/graph/shared/nodes/index.d.mts +0 -17
- package/lib/types/graph/shared/nodes/triggers.d.cts +0 -53
- package/lib/types/graph/shared/nodes/triggers.d.mts +0 -53
- package/lib/types/graph/shared/types.d.cts +0 -257
- package/lib/types/graph/shared/types.d.mts +0 -257
- /package/lib/cjs/graph/{shared → engine/runs}/types.cjs +0 -0
- /package/lib/esm/graph/{shared → engine/runs}/types.js +0 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module integrations/nest/graph/GraphRunController
|
|
3
|
+
* @summary Asynchronous run lifecycle HTTP API (DECAF-50 §4.14–§4.15).
|
|
4
|
+
* @description Creates (`POST /graph/runs`), reads
|
|
5
|
+
* (`GET /graph/runs/:runId`), cancels (`DELETE /graph/runs/:runId`), and
|
|
6
|
+
* replays (`SSE /graph/runs/:runId/events`) graph runs on top of
|
|
7
|
+
* {@link GraphRunService}, enforcing authentication, run limits, and
|
|
8
|
+
* ownership; engine errors surface as `500` with their message while Nest
|
|
9
|
+
* {@link HttpException}s pass through unchanged.
|
|
10
|
+
*/
|
|
11
|
+
import { MessageEvent } from "@nestjs/common";
|
|
12
|
+
import { Observable } from "rxjs";
|
|
13
|
+
import type { GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
14
|
+
import { DecafRequestContext } from "@decaf-ts/for-nest";
|
|
15
|
+
import type { GraphRunLimits } from "@decaf-ts/ui-decorators/graph";
|
|
16
|
+
import type { GraphExecutionValues } from "../../graph/index.d.mts";
|
|
17
|
+
import { GraphRunService } from "../../graph/index.d.mts";
|
|
18
|
+
/** DI token for {@link GraphRunControllerOptions}. */
|
|
19
|
+
export declare const GRAPH_RUN_OPTIONS = "GRAPH_RUN_OPTIONS";
|
|
20
|
+
/** Options for the run lifecycle HTTP API (DECAF-50 §4.14–§4.15): authentication mode and run limits. */
|
|
21
|
+
export interface GraphRunControllerOptions {
|
|
22
|
+
/**
|
|
23
|
+
* Whether an authenticated request context is required (default
|
|
24
|
+
* `"required"`, SAA-595 secure-defaults alignment). `"optional"` admits
|
|
25
|
+
* anonymous requests for standalone module runs (DECAF-48 §4.15) — pair it
|
|
26
|
+
* with an explicit `allowAnonymousAccess` decision.
|
|
27
|
+
*/
|
|
28
|
+
auth?: "required" | "optional";
|
|
29
|
+
/**
|
|
30
|
+
* Explicit DECAF-48 §4.15 standalone tolerance: when `true`, anonymous
|
|
31
|
+
* callers are tolerated on owned runs. Defaults to `false` — ownership
|
|
32
|
+
* checks fail closed for absent identities (SAA-595 F3).
|
|
33
|
+
*/
|
|
34
|
+
allowAnonymousAccess?: boolean;
|
|
35
|
+
/** Run limits forwarded to {@link GraphRunService}. */
|
|
36
|
+
limits?: GraphRunLimits;
|
|
37
|
+
}
|
|
38
|
+
/** Response of `POST /graph/runs`: the queued run's identity and its event/result URLs. */
|
|
39
|
+
export interface GraphRunCreatedResponse {
|
|
40
|
+
runId: string;
|
|
41
|
+
workflowId: string;
|
|
42
|
+
status: "queued";
|
|
43
|
+
eventsUrl: string;
|
|
44
|
+
resultUrl: string;
|
|
45
|
+
}
|
|
46
|
+
/** Request body for creating a run: an inline workflow document or a saved `workflowId`, plus optional inputs. */
|
|
47
|
+
export interface GraphRunRequestBody {
|
|
48
|
+
workflow?: GraphWorkflowDocument;
|
|
49
|
+
workflowId?: string;
|
|
50
|
+
inputs?: GraphExecutionValues;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Asynchronous run lifecycle HTTP API (DECAF-50 §4.14–§4.15):
|
|
54
|
+
* `POST /graph/runs` creates and schedules a run (202 Accepted), run
|
|
55
|
+
* read/cancel endpoints expose lifecycle state, and
|
|
56
|
+
* `GET /graph/runs/:runId/events` streams the run's sequenced event
|
|
57
|
+
* envelopes over SSE until a terminal event closes the stream. Every
|
|
58
|
+
* operation is ownership-checked against the requesting user.
|
|
59
|
+
*/
|
|
60
|
+
export declare class GraphRunController {
|
|
61
|
+
private readonly runService;
|
|
62
|
+
private readonly requestContext?;
|
|
63
|
+
private readonly options;
|
|
64
|
+
constructor(runService: GraphRunService, requestContext?: DecafRequestContext | undefined, options?: GraphRunControllerOptions);
|
|
65
|
+
/**
|
|
66
|
+
* Enforces the configured authentication mode: `auth` defaults to
|
|
67
|
+
* `"required"` (SAA-595 secure-defaults alignment) and rejects
|
|
68
|
+
* unauthenticated calls with `401`; `"optional"` admits anonymous
|
|
69
|
+
* requests for standalone module runs (DECAF-48 §4.15).
|
|
70
|
+
*/
|
|
71
|
+
private requireAuthenticatedContext;
|
|
72
|
+
private ownerUserOf;
|
|
73
|
+
/** Concurrency-bucket key for the per-caller run cap: the owner, else the request IP, else a shared anonymous bucket. */
|
|
74
|
+
private concurrencyKeyOf;
|
|
75
|
+
/**
|
|
76
|
+
* Creates and schedules a run (DECAF-50 §4.14): accepts an inline workflow
|
|
77
|
+
* document or a saved `workflowId` plus optional inputs, answers
|
|
78
|
+
* `202 Accepted` with the queued run's identity and its event/result URLs.
|
|
79
|
+
* The per-caller concurrency cap buckets by owner user, then request IP,
|
|
80
|
+
* then a shared anonymous bucket (SAA-595 F4).
|
|
81
|
+
*/
|
|
82
|
+
createRun(body: GraphRunRequestBody): Promise<GraphRunCreatedResponse>;
|
|
83
|
+
getRun(runId: string): Promise<Record<string, unknown>>;
|
|
84
|
+
cancelRun(runId: string): Promise<Record<string, unknown>>;
|
|
85
|
+
events(runId: string, afterSequence?: string): Promise<Observable<MessageEvent>>;
|
|
86
|
+
private parseAfterSequence;
|
|
87
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseModel } from "@decaf-ts/core";
|
|
2
|
+
/**
|
|
3
|
+
* Persistent run record for the graph run lifecycle (DECAF-50 §4.14): one
|
|
4
|
+
* row per {@link GraphRun}, storing lifecycle status, the executed
|
|
5
|
+
* document's fingerprint, inputs, result, and error payloads. Written and
|
|
6
|
+
* read through {@link GraphRunModelService}, which adapts it to the
|
|
7
|
+
* engine-side {@link GraphRun} shape.
|
|
8
|
+
*/
|
|
9
|
+
export declare class GraphRunModel extends BaseModel {
|
|
10
|
+
runId: string;
|
|
11
|
+
workflowId: string;
|
|
12
|
+
owner?: string;
|
|
13
|
+
status: string;
|
|
14
|
+
documentFingerprint?: string;
|
|
15
|
+
inputs?: Record<string, unknown>;
|
|
16
|
+
result?: Record<string, unknown>;
|
|
17
|
+
error?: Record<string, unknown>;
|
|
18
|
+
createdAt: Date;
|
|
19
|
+
startedAt?: Date;
|
|
20
|
+
finishedAt?: Date;
|
|
21
|
+
constructor(arg?: Partial<GraphRunModel>);
|
|
22
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseModel } from "@decaf-ts/core";
|
|
2
|
+
/**
|
|
3
|
+
* Persistent run record for the graph run lifecycle (DECAF-50 §4.14): one
|
|
4
|
+
* row per {@link GraphRun}, storing lifecycle status, the executed
|
|
5
|
+
* document's fingerprint, inputs, result, and error payloads. Written and
|
|
6
|
+
* read through {@link GraphRunModelService}, which adapts it to the
|
|
7
|
+
* engine-side {@link GraphRun} shape.
|
|
8
|
+
*/
|
|
9
|
+
export declare class GraphRunModel extends BaseModel {
|
|
10
|
+
runId: string;
|
|
11
|
+
workflowId: string;
|
|
12
|
+
owner?: string;
|
|
13
|
+
status: string;
|
|
14
|
+
documentFingerprint?: string;
|
|
15
|
+
inputs?: Record<string, unknown>;
|
|
16
|
+
result?: Record<string, unknown>;
|
|
17
|
+
error?: Record<string, unknown>;
|
|
18
|
+
createdAt: Date;
|
|
19
|
+
startedAt?: Date;
|
|
20
|
+
finishedAt?: Date;
|
|
21
|
+
constructor(arg?: Partial<GraphRunModel>);
|
|
22
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module integrations/nest/graph/GraphRunModelService
|
|
3
|
+
* @summary Persistent run store on the Decaf model layer.
|
|
4
|
+
* @description Persists {@link GraphRun} rows as {@link GraphRunModel} via
|
|
5
|
+
* the Decaf {@link ModelService}, implementing the engine-side
|
|
6
|
+
* {@link GraphRunStore} and converting between the engine run shape and the
|
|
7
|
+
* JSON-safe persisted columns.
|
|
8
|
+
*/
|
|
9
|
+
import { ModelService, type Context, type MaybeContextualArg } from "@decaf-ts/core";
|
|
10
|
+
import type { GraphRun, GraphRunStore } from "../../graph/engine/runs/types.d.cts";
|
|
11
|
+
import { GraphRunModel } from "./GraphRunModel.d.cts";
|
|
12
|
+
/**
|
|
13
|
+
* Model-backed {@link GraphRunStore}: persists runs as {@link GraphRunModel}
|
|
14
|
+
* rows via the Decaf ModelService, converting between the engine-side
|
|
15
|
+
* {@link GraphRun} shape and the JSON-safe persisted columns.
|
|
16
|
+
*/
|
|
17
|
+
export declare class GraphRunModelService extends ModelService<GraphRunModel> implements GraphRunStore {
|
|
18
|
+
constructor();
|
|
19
|
+
saveRun(run: GraphRun, ...args: MaybeContextualArg<Context>): Promise<void>;
|
|
20
|
+
readRun(runId: string, ...args: MaybeContextualArg<Context>): Promise<GraphRun | null>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module integrations/nest/graph/GraphRunModelService
|
|
3
|
+
* @summary Persistent run store on the Decaf model layer.
|
|
4
|
+
* @description Persists {@link GraphRun} rows as {@link GraphRunModel} via
|
|
5
|
+
* the Decaf {@link ModelService}, implementing the engine-side
|
|
6
|
+
* {@link GraphRunStore} and converting between the engine run shape and the
|
|
7
|
+
* JSON-safe persisted columns.
|
|
8
|
+
*/
|
|
9
|
+
import { ModelService, type Context, type MaybeContextualArg } from "@decaf-ts/core";
|
|
10
|
+
import type { GraphRun, GraphRunStore } from "../../graph/engine/runs/types.d.mts";
|
|
11
|
+
import { GraphRunModel } from "./GraphRunModel.d.mts";
|
|
12
|
+
/**
|
|
13
|
+
* Model-backed {@link GraphRunStore}: persists runs as {@link GraphRunModel}
|
|
14
|
+
* rows via the Decaf ModelService, converting between the engine-side
|
|
15
|
+
* {@link GraphRun} shape and the JSON-safe persisted columns.
|
|
16
|
+
*/
|
|
17
|
+
export declare class GraphRunModelService extends ModelService<GraphRunModel> implements GraphRunStore {
|
|
18
|
+
constructor();
|
|
19
|
+
saveRun(run: GraphRun, ...args: MaybeContextualArg<Context>): Promise<void>;
|
|
20
|
+
readRun(runId: string, ...args: MaybeContextualArg<Context>): Promise<GraphRun | null>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
2
|
+
import type { GraphNodeCatalogue } from "../../graph/index.d.cts";
|
|
3
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.cts";
|
|
4
|
+
import { type GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.cts";
|
|
5
|
+
/**
|
|
6
|
+
* Field keys that must never appear on a submitted workflow document or any
|
|
7
|
+
* of its structural records (DECAF-50 §4.16): client input resembling node,
|
|
8
|
+
* definition, executor, authoritative ports, or frontend component
|
|
9
|
+
* definitions is rejected at the boundary.
|
|
10
|
+
*/
|
|
11
|
+
export declare const GRAPH_WORKFLOW_FORBIDDEN_FIELD_KEYS: readonly string[];
|
|
12
|
+
/** Options for boundary validation: document resource limits and the trusted catalogue to resolve kinds against. */
|
|
13
|
+
export interface GraphWorkflowBoundaryValidationOptions {
|
|
14
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
15
|
+
catalogue?: GraphNodeCatalogue;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Validates a submitted canonical workflow document at the persistence
|
|
19
|
+
* boundary (DECAF-50 §4.10/§4.16): document shape, JSON safety, forbidden
|
|
20
|
+
* definition/executor/component fields, duplicate ids, backend-enforced
|
|
21
|
+
* resource limits, structural validity (via the shared document contract
|
|
22
|
+
* assertions) and catalogue kind existence. Issues accumulate as structured
|
|
23
|
+
* {@link GraphValidationIssue}s instead of failing abruptly.
|
|
24
|
+
*
|
|
25
|
+
* Full nine-stage document/catalogue validation (DECAF-50 §4.8) is owned by
|
|
26
|
+
* the engine validation phase; this boundary pass is the persistence gate.
|
|
27
|
+
*/
|
|
28
|
+
export declare function validateGraphWorkflowDocumentAtBoundary(document: GraphWorkflowDocument, options?: GraphWorkflowBoundaryValidationOptions): GraphWorkflowValidationResult;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
2
|
+
import type { GraphNodeCatalogue } from "../../graph/index.d.mts";
|
|
3
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.mts";
|
|
4
|
+
import { type GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.mts";
|
|
5
|
+
/**
|
|
6
|
+
* Field keys that must never appear on a submitted workflow document or any
|
|
7
|
+
* of its structural records (DECAF-50 §4.16): client input resembling node,
|
|
8
|
+
* definition, executor, authoritative ports, or frontend component
|
|
9
|
+
* definitions is rejected at the boundary.
|
|
10
|
+
*/
|
|
11
|
+
export declare const GRAPH_WORKFLOW_FORBIDDEN_FIELD_KEYS: readonly string[];
|
|
12
|
+
/** Options for boundary validation: document resource limits and the trusted catalogue to resolve kinds against. */
|
|
13
|
+
export interface GraphWorkflowBoundaryValidationOptions {
|
|
14
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
15
|
+
catalogue?: GraphNodeCatalogue;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Validates a submitted canonical workflow document at the persistence
|
|
19
|
+
* boundary (DECAF-50 §4.10/§4.16): document shape, JSON safety, forbidden
|
|
20
|
+
* definition/executor/component fields, duplicate ids, backend-enforced
|
|
21
|
+
* resource limits, structural validity (via the shared document contract
|
|
22
|
+
* assertions) and catalogue kind existence. Issues accumulate as structured
|
|
23
|
+
* {@link GraphValidationIssue}s instead of failing abruptly.
|
|
24
|
+
*
|
|
25
|
+
* Full nine-stage document/catalogue validation (DECAF-50 §4.8) is owned by
|
|
26
|
+
* the engine validation phase; this boundary pass is the persistence gate.
|
|
27
|
+
*/
|
|
28
|
+
export declare function validateGraphWorkflowDocumentAtBoundary(document: GraphWorkflowDocument, options?: GraphWorkflowBoundaryValidationOptions): GraphWorkflowValidationResult;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
2
|
+
import { DecafRequestContext } from "@decaf-ts/for-nest";
|
|
3
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.cts";
|
|
4
|
+
import { GraphWorkflowService } from "./GraphWorkflowService.d.cts";
|
|
5
|
+
import type { GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.cts";
|
|
6
|
+
/** Options for the workflow persistence HTTP API (DECAF-50 §4.10): authentication mode and document resource limits. */
|
|
7
|
+
export interface GraphWorkflowControllerOptions {
|
|
8
|
+
/**
|
|
9
|
+
* `"required"` rejects unauthenticated calls with `401` (default,
|
|
10
|
+
* SAA-595 secure-defaults alignment); `"optional"` tolerates
|
|
11
|
+
* anonymous/system callers for standalone module runs (DECAF-48 §4.15)
|
|
12
|
+
* while still enforcing ownership between distinct users — pair it with an
|
|
13
|
+
* explicit `allowAnonymousAccess` decision.
|
|
14
|
+
*/
|
|
15
|
+
auth?: "required" | "optional";
|
|
16
|
+
/**
|
|
17
|
+
* Explicit DECAF-48 §4.15 standalone tolerance: when `true`, anonymous
|
|
18
|
+
* callers are tolerated on owned workflows. Defaults to `false` —
|
|
19
|
+
* ownership checks fail closed for absent identities (SAA-595 F3).
|
|
20
|
+
*/
|
|
21
|
+
allowAnonymousAccess?: boolean;
|
|
22
|
+
/** Backend-enforced resource limits (DECAF-50 §4.16). */
|
|
23
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
24
|
+
}
|
|
25
|
+
/** Response of a successful workflow save: persisted identity and timestamp. */
|
|
26
|
+
export interface GraphWorkflowSaveResponse {
|
|
27
|
+
workflowId: string;
|
|
28
|
+
name?: string;
|
|
29
|
+
savedAt: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Canonical workflow document persistence endpoints (DECAF-50 §4.10):
|
|
33
|
+
*
|
|
34
|
+
* - `PUT /graph/workflows/{workflowId}` — validate and persist a canonical
|
|
35
|
+
* document (or a `{ document, editor, metadata }` snapshot wrapper, whose
|
|
36
|
+
* editor state is preserved verbatim for lossless round trips).
|
|
37
|
+
* - `GET /graph/workflows/{workflowId}` — load the canonical document;
|
|
38
|
+
* legacy persisted snapshots are converted losslessly on the read path.
|
|
39
|
+
* - `POST /graph/workflows/validate` — run boundary validation and return
|
|
40
|
+
* structured issues (`code`, `path`, `nodeId`, `edgeId`, `message`,
|
|
41
|
+
* safe `details`).
|
|
42
|
+
*
|
|
43
|
+
* @class GraphWorkflowController
|
|
44
|
+
*/
|
|
45
|
+
export declare class GraphWorkflowController {
|
|
46
|
+
private readonly workflowService;
|
|
47
|
+
private readonly requestContext?;
|
|
48
|
+
private readonly options;
|
|
49
|
+
constructor(workflowService: GraphWorkflowService, requestContext?: DecafRequestContext | undefined, options?: GraphWorkflowControllerOptions);
|
|
50
|
+
/**
|
|
51
|
+
* Enforces the configured authentication mode: `auth` defaults to
|
|
52
|
+
* `"required"` (SAA-595 secure-defaults alignment) and rejects
|
|
53
|
+
* unauthenticated calls with `401`; `"optional"` admits anonymous
|
|
54
|
+
* requests for standalone module runs (DECAF-48 §4.15).
|
|
55
|
+
*/
|
|
56
|
+
private requireAuthenticatedContext;
|
|
57
|
+
saveWorkflow(workflowId: string, body: unknown): Promise<GraphWorkflowSaveResponse>;
|
|
58
|
+
getWorkflow(workflowId: string): Promise<GraphWorkflowDocument>;
|
|
59
|
+
validateWorkflow(body: unknown): Promise<GraphWorkflowValidationResult>;
|
|
60
|
+
private isCanonicalWrapper;
|
|
61
|
+
private documentOf;
|
|
62
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
2
|
+
import { DecafRequestContext } from "@decaf-ts/for-nest";
|
|
3
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.mts";
|
|
4
|
+
import { GraphWorkflowService } from "./GraphWorkflowService.d.mts";
|
|
5
|
+
import type { GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.mts";
|
|
6
|
+
/** Options for the workflow persistence HTTP API (DECAF-50 §4.10): authentication mode and document resource limits. */
|
|
7
|
+
export interface GraphWorkflowControllerOptions {
|
|
8
|
+
/**
|
|
9
|
+
* `"required"` rejects unauthenticated calls with `401` (default,
|
|
10
|
+
* SAA-595 secure-defaults alignment); `"optional"` tolerates
|
|
11
|
+
* anonymous/system callers for standalone module runs (DECAF-48 §4.15)
|
|
12
|
+
* while still enforcing ownership between distinct users — pair it with an
|
|
13
|
+
* explicit `allowAnonymousAccess` decision.
|
|
14
|
+
*/
|
|
15
|
+
auth?: "required" | "optional";
|
|
16
|
+
/**
|
|
17
|
+
* Explicit DECAF-48 §4.15 standalone tolerance: when `true`, anonymous
|
|
18
|
+
* callers are tolerated on owned workflows. Defaults to `false` —
|
|
19
|
+
* ownership checks fail closed for absent identities (SAA-595 F3).
|
|
20
|
+
*/
|
|
21
|
+
allowAnonymousAccess?: boolean;
|
|
22
|
+
/** Backend-enforced resource limits (DECAF-50 §4.16). */
|
|
23
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
24
|
+
}
|
|
25
|
+
/** Response of a successful workflow save: persisted identity and timestamp. */
|
|
26
|
+
export interface GraphWorkflowSaveResponse {
|
|
27
|
+
workflowId: string;
|
|
28
|
+
name?: string;
|
|
29
|
+
savedAt: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Canonical workflow document persistence endpoints (DECAF-50 §4.10):
|
|
33
|
+
*
|
|
34
|
+
* - `PUT /graph/workflows/{workflowId}` — validate and persist a canonical
|
|
35
|
+
* document (or a `{ document, editor, metadata }` snapshot wrapper, whose
|
|
36
|
+
* editor state is preserved verbatim for lossless round trips).
|
|
37
|
+
* - `GET /graph/workflows/{workflowId}` — load the canonical document;
|
|
38
|
+
* legacy persisted snapshots are converted losslessly on the read path.
|
|
39
|
+
* - `POST /graph/workflows/validate` — run boundary validation and return
|
|
40
|
+
* structured issues (`code`, `path`, `nodeId`, `edgeId`, `message`,
|
|
41
|
+
* safe `details`).
|
|
42
|
+
*
|
|
43
|
+
* @class GraphWorkflowController
|
|
44
|
+
*/
|
|
45
|
+
export declare class GraphWorkflowController {
|
|
46
|
+
private readonly workflowService;
|
|
47
|
+
private readonly requestContext?;
|
|
48
|
+
private readonly options;
|
|
49
|
+
constructor(workflowService: GraphWorkflowService, requestContext?: DecafRequestContext | undefined, options?: GraphWorkflowControllerOptions);
|
|
50
|
+
/**
|
|
51
|
+
* Enforces the configured authentication mode: `auth` defaults to
|
|
52
|
+
* `"required"` (SAA-595 secure-defaults alignment) and rejects
|
|
53
|
+
* unauthenticated calls with `401`; `"optional"` admits anonymous
|
|
54
|
+
* requests for standalone module runs (DECAF-48 §4.15).
|
|
55
|
+
*/
|
|
56
|
+
private requireAuthenticatedContext;
|
|
57
|
+
saveWorkflow(workflowId: string, body: unknown): Promise<GraphWorkflowSaveResponse>;
|
|
58
|
+
getWorkflow(workflowId: string): Promise<GraphWorkflowDocument>;
|
|
59
|
+
validateWorkflow(body: unknown): Promise<GraphWorkflowValidationResult>;
|
|
60
|
+
private isCanonicalWrapper;
|
|
61
|
+
private documentOf;
|
|
62
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend-enforced, configurable resource limits for canonical workflow
|
|
3
|
+
* documents submitted at the persistence boundary (DECAF-50 §4.16).
|
|
4
|
+
*
|
|
5
|
+
* Defaults (technical governance delegates the numbers to implementation):
|
|
6
|
+
* - `maxDocumentBytes: 2_000_000` — a full canonical document serializes to
|
|
7
|
+
* well under 2 MB for realistic graphs; the cap blocks oversized payloads
|
|
8
|
+
* before deep validation runs.
|
|
9
|
+
* - `maxNestingDepth: 10` — nested loop bodies are themselves documents; ten
|
|
10
|
+
* levels of nesting is far beyond any sane workflow while keeping recursive
|
|
11
|
+
* validation cheap.
|
|
12
|
+
* - `maxNodes: 500` — per document level (nested loop bodies are limited
|
|
13
|
+
* independently), generous for editor-built graphs.
|
|
14
|
+
* - `maxEdges: 1_000` — roughly twice the node cap, matching typical
|
|
15
|
+
* fan-out without enabling quadratic edge bombs.
|
|
16
|
+
*
|
|
17
|
+
* Every limit is enforced backend-side before persistence and can be
|
|
18
|
+
* overridden through `GraphExecutionModuleOptions.workflows.limits`.
|
|
19
|
+
*
|
|
20
|
+
* @module integrations/nest/graph/workflow-limits
|
|
21
|
+
*/
|
|
22
|
+
export interface GraphWorkflowDocumentLimits {
|
|
23
|
+
/** Maximum serialized size of the document in bytes. */
|
|
24
|
+
maxDocumentBytes?: number;
|
|
25
|
+
/** Maximum nested loop-body document depth (root document is depth 0). */
|
|
26
|
+
maxNestingDepth?: number;
|
|
27
|
+
/** Maximum node instances per document level. */
|
|
28
|
+
maxNodes?: number;
|
|
29
|
+
/** Maximum edge instances per document level. */
|
|
30
|
+
maxEdges?: number;
|
|
31
|
+
}
|
|
32
|
+
/** Default document resource limits (§4.16): payload size, nesting depth, node and edge counts. */
|
|
33
|
+
export declare const DEFAULT_GRAPH_WORKFLOW_DOCUMENT_LIMITS: Required<GraphWorkflowDocumentLimits>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend-enforced, configurable resource limits for canonical workflow
|
|
3
|
+
* documents submitted at the persistence boundary (DECAF-50 §4.16).
|
|
4
|
+
*
|
|
5
|
+
* Defaults (technical governance delegates the numbers to implementation):
|
|
6
|
+
* - `maxDocumentBytes: 2_000_000` — a full canonical document serializes to
|
|
7
|
+
* well under 2 MB for realistic graphs; the cap blocks oversized payloads
|
|
8
|
+
* before deep validation runs.
|
|
9
|
+
* - `maxNestingDepth: 10` — nested loop bodies are themselves documents; ten
|
|
10
|
+
* levels of nesting is far beyond any sane workflow while keeping recursive
|
|
11
|
+
* validation cheap.
|
|
12
|
+
* - `maxNodes: 500` — per document level (nested loop bodies are limited
|
|
13
|
+
* independently), generous for editor-built graphs.
|
|
14
|
+
* - `maxEdges: 1_000` — roughly twice the node cap, matching typical
|
|
15
|
+
* fan-out without enabling quadratic edge bombs.
|
|
16
|
+
*
|
|
17
|
+
* Every limit is enforced backend-side before persistence and can be
|
|
18
|
+
* overridden through `GraphExecutionModuleOptions.workflows.limits`.
|
|
19
|
+
*
|
|
20
|
+
* @module integrations/nest/graph/workflow-limits
|
|
21
|
+
*/
|
|
22
|
+
export interface GraphWorkflowDocumentLimits {
|
|
23
|
+
/** Maximum serialized size of the document in bytes. */
|
|
24
|
+
maxDocumentBytes?: number;
|
|
25
|
+
/** Maximum nested loop-body document depth (root document is depth 0). */
|
|
26
|
+
maxNestingDepth?: number;
|
|
27
|
+
/** Maximum node instances per document level. */
|
|
28
|
+
maxNodes?: number;
|
|
29
|
+
/** Maximum edge instances per document level. */
|
|
30
|
+
maxEdges?: number;
|
|
31
|
+
}
|
|
32
|
+
/** Default document resource limits (§4.16): payload size, nesting depth, node and edge counts. */
|
|
33
|
+
export declare const DEFAULT_GRAPH_WORKFLOW_DOCUMENT_LIMITS: Required<GraphWorkflowDocumentLimits>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ValidationError } from "@decaf-ts/db-decorators";
|
|
2
|
+
import type { GraphValidationIssue } from "../../graph/index.d.cts";
|
|
3
|
+
/**
|
|
4
|
+
* Raised when a submitted workflow document fails boundary validation and
|
|
5
|
+
* must not be persisted (DECAF-50 §4.10). Carries the structured issues so
|
|
6
|
+
* HTTP transports can surface them without re-running validation.
|
|
7
|
+
*
|
|
8
|
+
* @class GraphWorkflowDocumentRejectedError
|
|
9
|
+
*/
|
|
10
|
+
export declare class GraphWorkflowDocumentRejectedError extends ValidationError {
|
|
11
|
+
readonly issues: GraphValidationIssue[];
|
|
12
|
+
constructor(issues: GraphValidationIssue[]);
|
|
13
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ValidationError } from "@decaf-ts/db-decorators";
|
|
2
|
+
import type { GraphValidationIssue } from "../../graph/index.d.mts";
|
|
3
|
+
/**
|
|
4
|
+
* Raised when a submitted workflow document fails boundary validation and
|
|
5
|
+
* must not be persisted (DECAF-50 §4.10). Carries the structured issues so
|
|
6
|
+
* HTTP transports can surface them without re-running validation.
|
|
7
|
+
*
|
|
8
|
+
* @class GraphWorkflowDocumentRejectedError
|
|
9
|
+
*/
|
|
10
|
+
export declare class GraphWorkflowDocumentRejectedError extends ValidationError {
|
|
11
|
+
readonly issues: GraphValidationIssue[];
|
|
12
|
+
constructor(issues: GraphValidationIssue[]);
|
|
13
|
+
}
|
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
import { BaseModel } from "@decaf-ts/core";
|
|
2
|
+
import type { GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
3
|
+
/**
|
|
4
|
+
* Canonical workflow persistence model (DECAF-50 §4.10).
|
|
5
|
+
*
|
|
6
|
+
* `document` is the executable source of truth. `snapshot` is retained
|
|
7
|
+
* temporarily (DECAF-50 §4.18 transition) so legacy persisted snapshots keep
|
|
8
|
+
* loading through lossless read-path conversion; it must never become the
|
|
9
|
+
* executable source of truth again and is removed at cutover (P7).
|
|
10
|
+
*
|
|
11
|
+
* `owner` implements the DECAF-48 `{ workflowId, ownerUser }` ownership tuple:
|
|
12
|
+
* the authenticated user that created the workflow, or `undefined` for
|
|
13
|
+
* system/standalone saves (tolerated per DECAF-48 §4.15).
|
|
14
|
+
*
|
|
15
|
+
* @class GraphWorkflowModel
|
|
16
|
+
*/
|
|
2
17
|
export declare class GraphWorkflowModel extends BaseModel {
|
|
3
18
|
workflowId: string;
|
|
4
|
-
|
|
19
|
+
name?: string;
|
|
20
|
+
document?: GraphWorkflowDocument;
|
|
21
|
+
owner?: string;
|
|
22
|
+
snapshot?: Record<string, unknown>;
|
|
5
23
|
constructor(arg?: Partial<GraphWorkflowModel>);
|
|
6
24
|
}
|
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
import { BaseModel } from "@decaf-ts/core";
|
|
2
|
+
import type { GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
3
|
+
/**
|
|
4
|
+
* Canonical workflow persistence model (DECAF-50 §4.10).
|
|
5
|
+
*
|
|
6
|
+
* `document` is the executable source of truth. `snapshot` is retained
|
|
7
|
+
* temporarily (DECAF-50 §4.18 transition) so legacy persisted snapshots keep
|
|
8
|
+
* loading through lossless read-path conversion; it must never become the
|
|
9
|
+
* executable source of truth again and is removed at cutover (P7).
|
|
10
|
+
*
|
|
11
|
+
* `owner` implements the DECAF-48 `{ workflowId, ownerUser }` ownership tuple:
|
|
12
|
+
* the authenticated user that created the workflow, or `undefined` for
|
|
13
|
+
* system/standalone saves (tolerated per DECAF-48 §4.15).
|
|
14
|
+
*
|
|
15
|
+
* @class GraphWorkflowModel
|
|
16
|
+
*/
|
|
2
17
|
export declare class GraphWorkflowModel extends BaseModel {
|
|
3
18
|
workflowId: string;
|
|
4
|
-
|
|
19
|
+
name?: string;
|
|
20
|
+
document?: GraphWorkflowDocument;
|
|
21
|
+
owner?: string;
|
|
22
|
+
snapshot?: Record<string, unknown>;
|
|
5
23
|
constructor(arg?: Partial<GraphWorkflowModel>);
|
|
6
24
|
}
|
|
@@ -1,7 +1,54 @@
|
|
|
1
1
|
import { ModelService, type Context, type MaybeContextualArg } from "@decaf-ts/core";
|
|
2
|
+
import { type GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
3
|
+
import { GraphNodeCatalogue } from "../../graph/index.d.cts";
|
|
4
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.cts";
|
|
2
5
|
import { GraphWorkflowModel } from "./GraphWorkflowModel.d.cts";
|
|
6
|
+
import { type GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.cts";
|
|
7
|
+
/** DI token for {@link GraphWorkflowServiceOptions}. */
|
|
8
|
+
export declare const GRAPH_WORKFLOW_OPTIONS = "GRAPH_WORKFLOW_OPTIONS";
|
|
9
|
+
/** Options for {@link GraphWorkflowService}: backend-enforced document resource limits. */
|
|
10
|
+
export interface GraphWorkflowServiceOptions {
|
|
11
|
+
/** Backend-enforced resource limits for submitted documents (§4.16). */
|
|
12
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
13
|
+
/**
|
|
14
|
+
* Explicit DECAF-48 §4.15 standalone tolerance: when `true`, anonymous
|
|
15
|
+
* callers are tolerated on owned workflows. Defaults to `false` —
|
|
16
|
+
* ownership checks fail closed for absent identities (SAA-595 F3).
|
|
17
|
+
*/
|
|
18
|
+
allowAnonymousAccess?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Resolves the authenticated user identifier from a request context
|
|
22
|
+
* (DECAF-36 Req-B5: the auth handler accumulates `{ user, roles, organization }`
|
|
23
|
+
* onto the context). Returns `undefined` for anonymous/system callers, which
|
|
24
|
+
* the explicit DECAF-48 §4.15 standalone tolerance
|
|
25
|
+
* (`allowAnonymousAccess`) may admit on owned resources (SAA-595 F3).
|
|
26
|
+
*/
|
|
27
|
+
export declare function graphWorkflowOwnerOf(ctx: Context | undefined): string | undefined;
|
|
3
28
|
export declare class GraphWorkflowService extends ModelService<GraphWorkflowModel> {
|
|
4
|
-
|
|
29
|
+
protected limits: Required<GraphWorkflowDocumentLimits>;
|
|
30
|
+
protected catalogue: GraphNodeCatalogue | undefined;
|
|
31
|
+
private allowAnonymousAccess;
|
|
32
|
+
constructor(options?: GraphWorkflowServiceOptions, catalogue?: GraphNodeCatalogue);
|
|
33
|
+
/**
|
|
34
|
+
* Applies options to this service instance and returns it.
|
|
35
|
+
*
|
|
36
|
+
* `@service` classes resolve through the injectable-decorators singleton
|
|
37
|
+
* registry, which does not forward constructor arguments reliably (Nest
|
|
38
|
+
* provider options included); the module wiring uses this method to apply
|
|
39
|
+
* {@link GRAPH_WORKFLOW_OPTIONS} deterministically (SAA-595 F3).
|
|
40
|
+
*/
|
|
41
|
+
configure(options: GraphWorkflowServiceOptions): this;
|
|
42
|
+
saveDocument(workflowId: string, document: GraphWorkflowDocument, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel>;
|
|
43
|
+
getDocument(workflowId: string, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowDocument>;
|
|
44
|
+
validateDocument(document: GraphWorkflowDocument, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowValidationResult>;
|
|
5
45
|
saveSnapshot(workflowId: string, snapshot: Record<string, unknown>, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel>;
|
|
6
46
|
loadSnapshot(workflowId: string, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel | null>;
|
|
47
|
+
/**
|
|
48
|
+
* Guards a persisted workflow record with the centralized
|
|
49
|
+
* {@link assertGraphResourceOwnership} check, honouring this service's
|
|
50
|
+
* configured `allowAnonymousAccess` tolerance (SAA-595 F3).
|
|
51
|
+
*/
|
|
52
|
+
private assertOwnership;
|
|
53
|
+
private applyCanonicalWrapper;
|
|
7
54
|
}
|
|
@@ -1,7 +1,54 @@
|
|
|
1
1
|
import { ModelService, type Context, type MaybeContextualArg } from "@decaf-ts/core";
|
|
2
|
+
import { type GraphWorkflowDocument } from "@decaf-ts/ui-decorators/graph";
|
|
3
|
+
import { GraphNodeCatalogue } from "../../graph/index.d.mts";
|
|
4
|
+
import type { GraphWorkflowValidationResult } from "../../graph/index.d.mts";
|
|
2
5
|
import { GraphWorkflowModel } from "./GraphWorkflowModel.d.mts";
|
|
6
|
+
import { type GraphWorkflowDocumentLimits } from "./GraphWorkflowDocumentLimits.d.mts";
|
|
7
|
+
/** DI token for {@link GraphWorkflowServiceOptions}. */
|
|
8
|
+
export declare const GRAPH_WORKFLOW_OPTIONS = "GRAPH_WORKFLOW_OPTIONS";
|
|
9
|
+
/** Options for {@link GraphWorkflowService}: backend-enforced document resource limits. */
|
|
10
|
+
export interface GraphWorkflowServiceOptions {
|
|
11
|
+
/** Backend-enforced resource limits for submitted documents (§4.16). */
|
|
12
|
+
limits?: GraphWorkflowDocumentLimits;
|
|
13
|
+
/**
|
|
14
|
+
* Explicit DECAF-48 §4.15 standalone tolerance: when `true`, anonymous
|
|
15
|
+
* callers are tolerated on owned workflows. Defaults to `false` —
|
|
16
|
+
* ownership checks fail closed for absent identities (SAA-595 F3).
|
|
17
|
+
*/
|
|
18
|
+
allowAnonymousAccess?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Resolves the authenticated user identifier from a request context
|
|
22
|
+
* (DECAF-36 Req-B5: the auth handler accumulates `{ user, roles, organization }`
|
|
23
|
+
* onto the context). Returns `undefined` for anonymous/system callers, which
|
|
24
|
+
* the explicit DECAF-48 §4.15 standalone tolerance
|
|
25
|
+
* (`allowAnonymousAccess`) may admit on owned resources (SAA-595 F3).
|
|
26
|
+
*/
|
|
27
|
+
export declare function graphWorkflowOwnerOf(ctx: Context | undefined): string | undefined;
|
|
3
28
|
export declare class GraphWorkflowService extends ModelService<GraphWorkflowModel> {
|
|
4
|
-
|
|
29
|
+
protected limits: Required<GraphWorkflowDocumentLimits>;
|
|
30
|
+
protected catalogue: GraphNodeCatalogue | undefined;
|
|
31
|
+
private allowAnonymousAccess;
|
|
32
|
+
constructor(options?: GraphWorkflowServiceOptions, catalogue?: GraphNodeCatalogue);
|
|
33
|
+
/**
|
|
34
|
+
* Applies options to this service instance and returns it.
|
|
35
|
+
*
|
|
36
|
+
* `@service` classes resolve through the injectable-decorators singleton
|
|
37
|
+
* registry, which does not forward constructor arguments reliably (Nest
|
|
38
|
+
* provider options included); the module wiring uses this method to apply
|
|
39
|
+
* {@link GRAPH_WORKFLOW_OPTIONS} deterministically (SAA-595 F3).
|
|
40
|
+
*/
|
|
41
|
+
configure(options: GraphWorkflowServiceOptions): this;
|
|
42
|
+
saveDocument(workflowId: string, document: GraphWorkflowDocument, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel>;
|
|
43
|
+
getDocument(workflowId: string, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowDocument>;
|
|
44
|
+
validateDocument(document: GraphWorkflowDocument, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowValidationResult>;
|
|
5
45
|
saveSnapshot(workflowId: string, snapshot: Record<string, unknown>, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel>;
|
|
6
46
|
loadSnapshot(workflowId: string, ...args: MaybeContextualArg<Context>): Promise<GraphWorkflowModel | null>;
|
|
47
|
+
/**
|
|
48
|
+
* Guards a persisted workflow record with the centralized
|
|
49
|
+
* {@link assertGraphResourceOwnership} check, honouring this service's
|
|
50
|
+
* configured `allowAnonymousAccess` tolerance (SAA-595 F3).
|
|
51
|
+
*/
|
|
52
|
+
private assertOwnership;
|
|
53
|
+
private applyCanonicalWrapper;
|
|
7
54
|
}
|
|
@@ -2,6 +2,14 @@ export * from "./GraphExecutionResultModel.d.cts";
|
|
|
2
2
|
export * from "./GraphResultService.d.cts";
|
|
3
3
|
export * from "./GraphWorkflowModel.d.cts";
|
|
4
4
|
export * from "./GraphWorkflowService.d.cts";
|
|
5
|
+
export * from "./GraphWorkflowDocumentLimits.d.cts";
|
|
6
|
+
export * from "./GraphWorkflowBoundaryValidation.d.cts";
|
|
7
|
+
export * from "./GraphWorkflowErrors.d.cts";
|
|
8
|
+
export * from "./GraphWorkflowController.d.cts";
|
|
9
|
+
export * from "./GraphRunModel.d.cts";
|
|
10
|
+
export * from "./GraphRunModelService.d.cts";
|
|
11
|
+
export * from "./GraphRunController.d.cts";
|
|
5
12
|
export * from "./GraphExecutorRegistryFactory.d.cts";
|
|
6
13
|
export * from "./GraphExecutionController.d.cts";
|
|
14
|
+
export * from "./GraphNodeCatalogueController.d.cts";
|
|
7
15
|
export * from "./GraphExecutionModule.d.cts";
|