codika 3.0.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/LICENSE +21 -0
- package/README.md +68 -0
- package/dist/cli/commands/completion.d.ts +15 -0
- package/dist/cli/commands/completion.d.ts.map +1 -0
- package/dist/cli/commands/completion.js +810 -0
- package/dist/cli/commands/completion.js.map +1 -0
- package/dist/cli/commands/config/clear.d.ts +12 -0
- package/dist/cli/commands/config/clear.d.ts.map +1 -0
- package/dist/cli/commands/config/clear.js +35 -0
- package/dist/cli/commands/config/clear.js.map +1 -0
- package/dist/cli/commands/config/index.d.ts +15 -0
- package/dist/cli/commands/config/index.d.ts.map +1 -0
- package/dist/cli/commands/config/index.js +21 -0
- package/dist/cli/commands/config/index.js.map +1 -0
- package/dist/cli/commands/config/set.d.ts +41 -0
- package/dist/cli/commands/config/set.d.ts.map +1 -0
- package/dist/cli/commands/config/set.js +185 -0
- package/dist/cli/commands/config/set.js.map +1 -0
- package/dist/cli/commands/config/show.d.ts +12 -0
- package/dist/cli/commands/config/show.d.ts.map +1 -0
- package/dist/cli/commands/config/show.js +45 -0
- package/dist/cli/commands/config/show.js.map +1 -0
- package/dist/cli/commands/deploy/documents.d.ts +12 -0
- package/dist/cli/commands/deploy/documents.d.ts.map +1 -0
- package/dist/cli/commands/deploy/documents.js +217 -0
- package/dist/cli/commands/deploy/documents.js.map +1 -0
- package/dist/cli/commands/deploy/index.d.ts +14 -0
- package/dist/cli/commands/deploy/index.d.ts.map +1 -0
- package/dist/cli/commands/deploy/index.js +21 -0
- package/dist/cli/commands/deploy/index.js.map +1 -0
- package/dist/cli/commands/deploy/process-data-ingestion.d.ts +13 -0
- package/dist/cli/commands/deploy/process-data-ingestion.d.ts.map +1 -0
- package/dist/cli/commands/deploy/process-data-ingestion.js +226 -0
- package/dist/cli/commands/deploy/process-data-ingestion.js.map +1 -0
- package/dist/cli/commands/deploy/use-case.d.ts +9 -0
- package/dist/cli/commands/deploy/use-case.d.ts.map +1 -0
- package/dist/cli/commands/deploy/use-case.js +212 -0
- package/dist/cli/commands/deploy/use-case.js.map +1 -0
- package/dist/cli/commands/get/execution.d.ts +9 -0
- package/dist/cli/commands/get/execution.d.ts.map +1 -0
- package/dist/cli/commands/get/execution.js +159 -0
- package/dist/cli/commands/get/execution.js.map +1 -0
- package/dist/cli/commands/get/index.d.ts +13 -0
- package/dist/cli/commands/get/index.d.ts.map +1 -0
- package/dist/cli/commands/get/index.js +20 -0
- package/dist/cli/commands/get/index.js.map +1 -0
- package/dist/cli/commands/get/skills.d.ts +15 -0
- package/dist/cli/commands/get/skills.d.ts.map +1 -0
- package/dist/cli/commands/get/skills.js +135 -0
- package/dist/cli/commands/get/skills.js.map +1 -0
- package/dist/cli/commands/get/use-case.d.ts +9 -0
- package/dist/cli/commands/get/use-case.d.ts.map +1 -0
- package/dist/cli/commands/get/use-case.js +186 -0
- package/dist/cli/commands/get/use-case.js.map +1 -0
- package/dist/cli/commands/init.d.ts +14 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +347 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/integration/delete.d.ts +13 -0
- package/dist/cli/commands/integration/delete.d.ts.map +1 -0
- package/dist/cli/commands/integration/delete.js +140 -0
- package/dist/cli/commands/integration/delete.js.map +1 -0
- package/dist/cli/commands/integration/index.d.ts +13 -0
- package/dist/cli/commands/integration/index.d.ts.map +1 -0
- package/dist/cli/commands/integration/index.js +20 -0
- package/dist/cli/commands/integration/index.js.map +1 -0
- package/dist/cli/commands/integration/list.d.ts +13 -0
- package/dist/cli/commands/integration/list.d.ts.map +1 -0
- package/dist/cli/commands/integration/list.js +129 -0
- package/dist/cli/commands/integration/list.js.map +1 -0
- package/dist/cli/commands/integration/set.d.ts +13 -0
- package/dist/cli/commands/integration/set.d.ts.map +1 -0
- package/dist/cli/commands/integration/set.js +253 -0
- package/dist/cli/commands/integration/set.js.map +1 -0
- package/dist/cli/commands/list/executions.d.ts +12 -0
- package/dist/cli/commands/list/executions.d.ts.map +1 -0
- package/dist/cli/commands/list/executions.js +168 -0
- package/dist/cli/commands/list/executions.js.map +1 -0
- package/dist/cli/commands/list/index.d.ts +11 -0
- package/dist/cli/commands/list/index.d.ts.map +1 -0
- package/dist/cli/commands/list/index.js +14 -0
- package/dist/cli/commands/list/index.js.map +1 -0
- package/dist/cli/commands/logout.d.ts +12 -0
- package/dist/cli/commands/logout.d.ts.map +1 -0
- package/dist/cli/commands/logout.js +58 -0
- package/dist/cli/commands/logout.js.map +1 -0
- package/dist/cli/commands/project/create.d.ts +8 -0
- package/dist/cli/commands/project/create.d.ts.map +1 -0
- package/dist/cli/commands/project/create.js +109 -0
- package/dist/cli/commands/project/create.js.map +1 -0
- package/dist/cli/commands/project/index.d.ts +12 -0
- package/dist/cli/commands/project/index.d.ts.map +1 -0
- package/dist/cli/commands/project/index.js +15 -0
- package/dist/cli/commands/project/index.js.map +1 -0
- package/dist/cli/commands/publish.d.ts +12 -0
- package/dist/cli/commands/publish.d.ts.map +1 -0
- package/dist/cli/commands/publish.js +152 -0
- package/dist/cli/commands/publish.js.map +1 -0
- package/dist/cli/commands/redeploy.d.ts +11 -0
- package/dist/cli/commands/redeploy.d.ts.map +1 -0
- package/dist/cli/commands/redeploy.js +166 -0
- package/dist/cli/commands/redeploy.js.map +1 -0
- package/dist/cli/commands/status.d.ts +63 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +290 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/trigger.d.ts +8 -0
- package/dist/cli/commands/trigger.d.ts.map +1 -0
- package/dist/cli/commands/trigger.js +247 -0
- package/dist/cli/commands/trigger.js.map +1 -0
- package/dist/cli/commands/use.d.ts +13 -0
- package/dist/cli/commands/use.d.ts.map +1 -0
- package/dist/cli/commands/use.js +92 -0
- package/dist/cli/commands/use.js.map +1 -0
- package/dist/cli/commands/verify/index.d.ts +13 -0
- package/dist/cli/commands/verify/index.d.ts.map +1 -0
- package/dist/cli/commands/verify/index.js +18 -0
- package/dist/cli/commands/verify/index.js.map +1 -0
- package/dist/cli/commands/verify/use-case.d.ts +23 -0
- package/dist/cli/commands/verify/use-case.d.ts.map +1 -0
- package/dist/cli/commands/verify/use-case.js +94 -0
- package/dist/cli/commands/verify/use-case.js.map +1 -0
- package/dist/cli/commands/verify/workflow.d.ts +22 -0
- package/dist/cli/commands/verify/workflow.d.ts.map +1 -0
- package/dist/cli/commands/verify/workflow.js +82 -0
- package/dist/cli/commands/verify/workflow.js.map +1 -0
- package/dist/cli/commands/whoami.d.ts +13 -0
- package/dist/cli/commands/whoami.d.ts.map +1 -0
- package/dist/cli/commands/whoami.js +126 -0
- package/dist/cli/commands/whoami.js.map +1 -0
- package/dist/cli/index.d.ts +24 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +90 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/templates/claude-md-template.d.ts +12 -0
- package/dist/cli/templates/claude-md-template.d.ts.map +1 -0
- package/dist/cli/templates/claude-md-template.js +162 -0
- package/dist/cli/templates/claude-md-template.js.map +1 -0
- package/dist/cli/templates/config-template.d.ts +18 -0
- package/dist/cli/templates/config-template.d.ts.map +1 -0
- package/dist/cli/templates/config-template.js +350 -0
- package/dist/cli/templates/config-template.js.map +1 -0
- package/dist/cli/templates/skill-templates.d.ts +24 -0
- package/dist/cli/templates/skill-templates.d.ts.map +1 -0
- package/dist/cli/templates/skill-templates.js +117 -0
- package/dist/cli/templates/skill-templates.js.map +1 -0
- package/dist/cli/templates/slug.d.ts +9 -0
- package/dist/cli/templates/slug.d.ts.map +1 -0
- package/dist/cli/templates/slug.js +17 -0
- package/dist/cli/templates/slug.js.map +1 -0
- package/dist/cli/templates/workflow-templates.d.ts +693 -0
- package/dist/cli/templates/workflow-templates.d.ts.map +1 -0
- package/dist/cli/templates/workflow-templates.js +516 -0
- package/dist/cli/templates/workflow-templates.js.map +1 -0
- package/dist/cli/utils/output.d.ts +65 -0
- package/dist/cli/utils/output.d.ts.map +1 -0
- package/dist/cli/utils/output.js +188 -0
- package/dist/cli/utils/output.js.map +1 -0
- package/dist/cli/utils/validation-output.d.ts +21 -0
- package/dist/cli/utils/validation-output.d.ts.map +1 -0
- package/dist/cli/utils/validation-output.js +204 -0
- package/dist/cli/utils/validation-output.js.map +1 -0
- package/dist/data/integration-fields.d.ts +27 -0
- package/dist/data/integration-fields.d.ts.map +1 -0
- package/dist/data/integration-fields.js +361 -0
- package/dist/data/integration-fields.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/types/process-types.d.ts +740 -0
- package/dist/types/process-types.d.ts.map +1 -0
- package/dist/types/process-types.js +22 -0
- package/dist/types/process-types.js.map +1 -0
- package/dist/utils/config.d.ts +127 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +315 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/data-ingestion-deploy-client.d.ts +53 -0
- package/dist/utils/data-ingestion-deploy-client.d.ts.map +1 -0
- package/dist/utils/data-ingestion-deploy-client.js +63 -0
- package/dist/utils/data-ingestion-deploy-client.js.map +1 -0
- package/dist/utils/data-ingestion-deployer.d.ts +78 -0
- package/dist/utils/data-ingestion-deployer.d.ts.map +1 -0
- package/dist/utils/data-ingestion-deployer.js +119 -0
- package/dist/utils/data-ingestion-deployer.js.map +1 -0
- package/dist/utils/deploy-client.d.ts +55 -0
- package/dist/utils/deploy-client.d.ts.map +1 -0
- package/dist/utils/deploy-client.js +73 -0
- package/dist/utils/deploy-client.js.map +1 -0
- package/dist/utils/deployment-archiver.d.ts +110 -0
- package/dist/utils/deployment-archiver.d.ts.map +1 -0
- package/dist/utils/deployment-archiver.js +158 -0
- package/dist/utils/deployment-archiver.js.map +1 -0
- package/dist/utils/document-deploy-client.d.ts +41 -0
- package/dist/utils/document-deploy-client.d.ts.map +1 -0
- package/dist/utils/document-deploy-client.js +46 -0
- package/dist/utils/document-deploy-client.js.map +1 -0
- package/dist/utils/encryption.d.ts +85 -0
- package/dist/utils/encryption.d.ts.map +1 -0
- package/dist/utils/encryption.js +162 -0
- package/dist/utils/encryption.js.map +1 -0
- package/dist/utils/execution-client.d.ts +71 -0
- package/dist/utils/execution-client.d.ts.map +1 -0
- package/dist/utils/execution-client.js +56 -0
- package/dist/utils/execution-client.js.map +1 -0
- package/dist/utils/integration-client.d.ts +134 -0
- package/dist/utils/integration-client.d.ts.map +1 -0
- package/dist/utils/integration-client.js +109 -0
- package/dist/utils/integration-client.js.map +1 -0
- package/dist/utils/list-executions-client.d.ts +47 -0
- package/dist/utils/list-executions-client.d.ts.map +1 -0
- package/dist/utils/list-executions-client.js +50 -0
- package/dist/utils/list-executions-client.js.map +1 -0
- package/dist/utils/metadata-client.d.ts +90 -0
- package/dist/utils/metadata-client.d.ts.map +1 -0
- package/dist/utils/metadata-client.js +66 -0
- package/dist/utils/metadata-client.js.map +1 -0
- package/dist/utils/project-client.d.ts +70 -0
- package/dist/utils/project-client.d.ts.map +1 -0
- package/dist/utils/project-client.js +63 -0
- package/dist/utils/project-client.js.map +1 -0
- package/dist/utils/project-json.d.ts +71 -0
- package/dist/utils/project-json.d.ts.map +1 -0
- package/dist/utils/project-json.js +129 -0
- package/dist/utils/project-json.js.map +1 -0
- package/dist/utils/publish-client.d.ts +53 -0
- package/dist/utils/publish-client.d.ts.map +1 -0
- package/dist/utils/publish-client.js +64 -0
- package/dist/utils/publish-client.js.map +1 -0
- package/dist/utils/redeploy-client.d.ts +39 -0
- package/dist/utils/redeploy-client.d.ts.map +1 -0
- package/dist/utils/redeploy-client.js +51 -0
- package/dist/utils/redeploy-client.js.map +1 -0
- package/dist/utils/skill-parser.d.ts +52 -0
- package/dist/utils/skill-parser.d.ts.map +1 -0
- package/dist/utils/skill-parser.js +127 -0
- package/dist/utils/skill-parser.js.map +1 -0
- package/dist/utils/skills-client.d.ts +39 -0
- package/dist/utils/skills-client.d.ts.map +1 -0
- package/dist/utils/skills-client.js +32 -0
- package/dist/utils/skills-client.js.map +1 -0
- package/dist/utils/trigger-client.d.ts +78 -0
- package/dist/utils/trigger-client.d.ts.map +1 -0
- package/dist/utils/trigger-client.js +81 -0
- package/dist/utils/trigger-client.js.map +1 -0
- package/dist/utils/use-case-deployer.d.ts +93 -0
- package/dist/utils/use-case-deployer.d.ts.map +1 -0
- package/dist/utils/use-case-deployer.js +270 -0
- package/dist/utils/use-case-deployer.js.map +1 -0
- package/dist/utils/version-manager.d.ts +63 -0
- package/dist/utils/version-manager.d.ts.map +1 -0
- package/dist/utils/version-manager.js +91 -0
- package/dist/utils/version-manager.js.map +1 -0
- package/dist/utils/workflow-encoding.d.ts +26 -0
- package/dist/utils/workflow-encoding.d.ts.map +1 -0
- package/dist/utils/workflow-encoding.js +41 -0
- package/dist/utils/workflow-encoding.js.map +1 -0
- package/dist/validation/fixer.d.ts +56 -0
- package/dist/validation/fixer.d.ts.map +1 -0
- package/dist/validation/fixer.js +168 -0
- package/dist/validation/fixer.js.map +1 -0
- package/dist/validation/rules/codika-init-required.d.ts +18 -0
- package/dist/validation/rules/codika-init-required.d.ts.map +1 -0
- package/dist/validation/rules/codika-init-required.js +70 -0
- package/dist/validation/rules/codika-init-required.js.map +1 -0
- package/dist/validation/rules/codika-submit-result.d.ts +22 -0
- package/dist/validation/rules/codika-submit-result.d.ts.map +1 -0
- package/dist/validation/rules/codika-submit-result.js +144 -0
- package/dist/validation/rules/codika-submit-result.js.map +1 -0
- package/dist/validation/rules/error-branch-required.d.ts +24 -0
- package/dist/validation/rules/error-branch-required.d.ts.map +1 -0
- package/dist/validation/rules/error-branch-required.js +103 -0
- package/dist/validation/rules/error-branch-required.js.map +1 -0
- package/dist/validation/rules/index.d.ts +18 -0
- package/dist/validation/rules/index.d.ts.map +1 -0
- package/dist/validation/rules/index.js +28 -0
- package/dist/validation/rules/index.js.map +1 -0
- package/dist/validation/rules/schedule-webhook-convergence.d.ts +24 -0
- package/dist/validation/rules/schedule-webhook-convergence.d.ts.map +1 -0
- package/dist/validation/rules/schedule-webhook-convergence.js +129 -0
- package/dist/validation/rules/schedule-webhook-convergence.js.map +1 -0
- package/dist/validation/rules/subworkflow-min-params.d.ts +21 -0
- package/dist/validation/rules/subworkflow-min-params.d.ts.map +1 -0
- package/dist/validation/rules/subworkflow-min-params.js +84 -0
- package/dist/validation/rules/subworkflow-min-params.js.map +1 -0
- package/dist/validation/runner.d.ts +43 -0
- package/dist/validation/runner.d.ts.map +1 -0
- package/dist/validation/runner.js +335 -0
- package/dist/validation/runner.js.map +1 -0
- package/dist/validation/types.d.ts +155 -0
- package/dist/validation/types.d.ts.map +1 -0
- package/dist/validation/types.js +8 -0
- package/dist/validation/types.js.map +1 -0
- package/dist/validation/use-case-scripts/calledby-consistency.d.ts +23 -0
- package/dist/validation/use-case-scripts/calledby-consistency.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/calledby-consistency.js +236 -0
- package/dist/validation/use-case-scripts/calledby-consistency.js.map +1 -0
- package/dist/validation/use-case-scripts/config-exports.d.ts +17 -0
- package/dist/validation/use-case-scripts/config-exports.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/config-exports.js +93 -0
- package/dist/validation/use-case-scripts/config-exports.js.map +1 -0
- package/dist/validation/use-case-scripts/custom-integration-schema.d.ts +21 -0
- package/dist/validation/use-case-scripts/custom-integration-schema.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/custom-integration-schema.js +378 -0
- package/dist/validation/use-case-scripts/custom-integration-schema.js.map +1 -0
- package/dist/validation/use-case-scripts/index.d.ts +27 -0
- package/dist/validation/use-case-scripts/index.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/index.js +52 -0
- package/dist/validation/use-case-scripts/index.js.map +1 -0
- package/dist/validation/use-case-scripts/integration-inheritance.d.ts +35 -0
- package/dist/validation/use-case-scripts/integration-inheritance.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/integration-inheritance.js +348 -0
- package/dist/validation/use-case-scripts/integration-inheritance.js.map +1 -0
- package/dist/validation/use-case-scripts/schema-types.d.ts +21 -0
- package/dist/validation/use-case-scripts/schema-types.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/schema-types.js +134 -0
- package/dist/validation/use-case-scripts/schema-types.js.map +1 -0
- package/dist/validation/use-case-scripts/skill-consistency.d.ts +21 -0
- package/dist/validation/use-case-scripts/skill-consistency.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/skill-consistency.js +180 -0
- package/dist/validation/use-case-scripts/skill-consistency.js.map +1 -0
- package/dist/validation/use-case-scripts/subworkflow-references.d.ts +22 -0
- package/dist/validation/use-case-scripts/subworkflow-references.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/subworkflow-references.js +139 -0
- package/dist/validation/use-case-scripts/subworkflow-references.js.map +1 -0
- package/dist/validation/use-case-scripts/trigger-type-consistency.d.ts +25 -0
- package/dist/validation/use-case-scripts/trigger-type-consistency.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/trigger-type-consistency.js +265 -0
- package/dist/validation/use-case-scripts/trigger-type-consistency.js.map +1 -0
- package/dist/validation/use-case-scripts/trigger-types.d.ts +20 -0
- package/dist/validation/use-case-scripts/trigger-types.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/trigger-types.js +177 -0
- package/dist/validation/use-case-scripts/trigger-types.js.map +1 -0
- package/dist/validation/use-case-scripts/triggers-required.d.ts +23 -0
- package/dist/validation/use-case-scripts/triggers-required.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/triggers-required.js +111 -0
- package/dist/validation/use-case-scripts/triggers-required.js.map +1 -0
- package/dist/validation/use-case-scripts/webhook-path-consistency.d.ts +28 -0
- package/dist/validation/use-case-scripts/webhook-path-consistency.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/webhook-path-consistency.js +288 -0
- package/dist/validation/use-case-scripts/webhook-path-consistency.js.map +1 -0
- package/dist/validation/use-case-scripts/workflow-imports.d.ts +16 -0
- package/dist/validation/use-case-scripts/workflow-imports.d.ts.map +1 -0
- package/dist/validation/use-case-scripts/workflow-imports.js +206 -0
- package/dist/validation/use-case-scripts/workflow-imports.js.map +1 -0
- package/dist/validation/workflow-scripts/credential-placeholders.d.ts +21 -0
- package/dist/validation/workflow-scripts/credential-placeholders.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/credential-placeholders.js +278 -0
- package/dist/validation/workflow-scripts/credential-placeholders.js.map +1 -0
- package/dist/validation/workflow-scripts/db-always-output.d.ts +16 -0
- package/dist/validation/workflow-scripts/db-always-output.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/db-always-output.js +95 -0
- package/dist/validation/workflow-scripts/db-always-output.js.map +1 -0
- package/dist/validation/workflow-scripts/exec-workflow-wait.d.ts +15 -0
- package/dist/validation/workflow-scripts/exec-workflow-wait.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/exec-workflow-wait.js +85 -0
- package/dist/validation/workflow-scripts/exec-workflow-wait.js.map +1 -0
- package/dist/validation/workflow-scripts/index.d.ts +31 -0
- package/dist/validation/workflow-scripts/index.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/index.js +58 -0
- package/dist/validation/workflow-scripts/index.js.map +1 -0
- package/dist/validation/workflow-scripts/instparm-quoting.d.ts +21 -0
- package/dist/validation/workflow-scripts/instparm-quoting.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/instparm-quoting.js +59 -0
- package/dist/validation/workflow-scripts/instparm-quoting.js.map +1 -0
- package/dist/validation/workflow-scripts/llm-model-id.d.ts +17 -0
- package/dist/validation/workflow-scripts/llm-model-id.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/llm-model-id.js +171 -0
- package/dist/validation/workflow-scripts/llm-model-id.js.map +1 -0
- package/dist/validation/workflow-scripts/llm-output-access.d.ts +23 -0
- package/dist/validation/workflow-scripts/llm-output-access.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/llm-output-access.js +274 -0
- package/dist/validation/workflow-scripts/llm-output-access.js.map +1 -0
- package/dist/validation/workflow-scripts/merge-before-terminal.d.ts +20 -0
- package/dist/validation/workflow-scripts/merge-before-terminal.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/merge-before-terminal.js +87 -0
- package/dist/validation/workflow-scripts/merge-before-terminal.js.map +1 -0
- package/dist/validation/workflow-scripts/placeholder-syntax.d.ts +29 -0
- package/dist/validation/workflow-scripts/placeholder-syntax.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/placeholder-syntax.js +154 -0
- package/dist/validation/workflow-scripts/placeholder-syntax.js.map +1 -0
- package/dist/validation/workflow-scripts/retry-backoff.d.ts +16 -0
- package/dist/validation/workflow-scripts/retry-backoff.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/retry-backoff.js +197 -0
- package/dist/validation/workflow-scripts/retry-backoff.js.map +1 -0
- package/dist/validation/workflow-scripts/webhook-id.d.ts +17 -0
- package/dist/validation/workflow-scripts/webhook-id.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/webhook-id.js +79 -0
- package/dist/validation/workflow-scripts/webhook-id.js.map +1 -0
- package/dist/validation/workflow-scripts/workflow-format.d.ts +16 -0
- package/dist/validation/workflow-scripts/workflow-format.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/workflow-format.js +51 -0
- package/dist/validation/workflow-scripts/workflow-format.js.map +1 -0
- package/dist/validation/workflow-scripts/workflow-sanitization.d.ts +21 -0
- package/dist/validation/workflow-scripts/workflow-sanitization.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/workflow-sanitization.js +78 -0
- package/dist/validation/workflow-scripts/workflow-sanitization.js.map +1 -0
- package/dist/validation/workflow-scripts/workflow-settings.d.ts +19 -0
- package/dist/validation/workflow-scripts/workflow-settings.d.ts.map +1 -0
- package/dist/validation/workflow-scripts/workflow-settings.js +131 -0
- package/dist/validation/workflow-scripts/workflow-settings.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Data Ingestion Deployer
|
|
3
|
+
* High-level function to deploy data ingestion from a use case folder.
|
|
4
|
+
*
|
|
5
|
+
* Auto-discovers the workflow JSON file from the `data-ingestion/` folder
|
|
6
|
+
* (expects exactly one .json file).
|
|
7
|
+
*/
|
|
8
|
+
import type { ProcessDataIngestionConfigInput, DataIngestionVersionStrategy } from '../types/process-types.js';
|
|
9
|
+
import { type DeployDataIngestionResult } from './data-ingestion-deploy-client.js';
|
|
10
|
+
/**
|
|
11
|
+
* Options for deploying data ingestion from a folder
|
|
12
|
+
*/
|
|
13
|
+
export interface DeployDataIngestionFromFolderOptions {
|
|
14
|
+
/** Absolute path to the use case folder (containing config.ts) */
|
|
15
|
+
useCasePath: string;
|
|
16
|
+
/** API key for authentication */
|
|
17
|
+
apiKey: string;
|
|
18
|
+
/** API URL for data ingestion deployment endpoint */
|
|
19
|
+
apiUrl: string;
|
|
20
|
+
/** Override project ID (highest priority — skips project.json and config.ts) */
|
|
21
|
+
projectId?: string;
|
|
22
|
+
/** Version strategy (defaults to 'minor_bump') */
|
|
23
|
+
versionStrategy?: DataIngestionVersionStrategy;
|
|
24
|
+
/** Explicit version (required if versionStrategy is 'explicit') */
|
|
25
|
+
explicitVersion?: string;
|
|
26
|
+
/** Path to a custom project file (e.g., project-client-a.json) */
|
|
27
|
+
projectFile?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Result of deploying data ingestion from a folder
|
|
31
|
+
* Combines the base DeployDataIngestionResult with additional context for archiving
|
|
32
|
+
*/
|
|
33
|
+
export type DeployDataIngestionFromFolderResult = DeployDataIngestionResult & {
|
|
34
|
+
/** The project ID used for deployment */
|
|
35
|
+
projectId: string;
|
|
36
|
+
/** The configuration that was deployed (useful for archiving) */
|
|
37
|
+
config: ProcessDataIngestionConfigInput;
|
|
38
|
+
/** Absolute path to the workflow JSON file (useful for archiving) */
|
|
39
|
+
workflowFile: string;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Auto-discover the data ingestion workflow JSON file.
|
|
43
|
+
* Expects exactly one .json file in the `data-ingestion/` folder.
|
|
44
|
+
*
|
|
45
|
+
* @param useCasePath - Absolute path to the use case folder
|
|
46
|
+
* @returns Absolute path to the discovered workflow JSON file
|
|
47
|
+
* @throws Error if the folder doesn't exist, has no JSON files, or has multiple
|
|
48
|
+
*/
|
|
49
|
+
export declare function discoverDataIngestionWorkflow(useCasePath: string): string;
|
|
50
|
+
/**
|
|
51
|
+
* Deploy data ingestion by pointing at a use case folder
|
|
52
|
+
*
|
|
53
|
+
* This function:
|
|
54
|
+
* 1. Dynamically imports config.ts from the use case folder
|
|
55
|
+
* 2. Calls getDataIngestionConfig() and resolves the project ID from project.json
|
|
56
|
+
* 3. Auto-discovers the workflow file from data-ingestion/ folder
|
|
57
|
+
* 4. Deploys the data ingestion configuration to the Codika platform
|
|
58
|
+
* 5. Returns the result along with context needed for archiving
|
|
59
|
+
*
|
|
60
|
+
* @param options - Deployment options including the use case path
|
|
61
|
+
* @returns Deployment result with additional context
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* const result = await deployDataIngestionFromFolder({
|
|
66
|
+
* useCasePath: '/path/to/use-cases/my-use-case',
|
|
67
|
+
* apiKey: 'your-api-key',
|
|
68
|
+
* apiUrl: 'https://europe-west1-codika-app.cloudfunctions.net/deployDataIngestion',
|
|
69
|
+
* });
|
|
70
|
+
*
|
|
71
|
+
* if (isDataIngestionDeploySuccess(result)) {
|
|
72
|
+
* console.log('Deployed version:', result.version);
|
|
73
|
+
* }
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare function deployDataIngestionFromFolder(options: DeployDataIngestionFromFolderOptions): Promise<DeployDataIngestionFromFolderResult>;
|
|
77
|
+
export { isDataIngestionDeploySuccess, isDataIngestionDeployError } from './data-ingestion-deploy-client.js';
|
|
78
|
+
//# sourceMappingURL=data-ingestion-deployer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-ingestion-deployer.d.ts","sourceRoot":"","sources":["../../src/utils/data-ingestion-deployer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EACV,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,mCAAmC,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AASD;;;GAGG;AACH,MAAM,MAAM,mCAAmC,GAAG,yBAAyB,GAAG;IAC5E,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,MAAM,EAAE,+BAA+B,CAAC;IACxC,qEAAqE;IACrE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAIF;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAkCzE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,mCAAmC,CAAC,CA+D9C;AAGD,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Data Ingestion Deployer
|
|
3
|
+
* High-level function to deploy data ingestion from a use case folder.
|
|
4
|
+
*
|
|
5
|
+
* Auto-discovers the workflow JSON file from the `data-ingestion/` folder
|
|
6
|
+
* (expects exactly one .json file).
|
|
7
|
+
*/
|
|
8
|
+
import { join } from 'path';
|
|
9
|
+
import { pathToFileURL } from 'url';
|
|
10
|
+
import { existsSync, readdirSync } from 'fs';
|
|
11
|
+
import { resolveProjectId } from './project-json.js';
|
|
12
|
+
import { deployDataIngestion, } from './data-ingestion-deploy-client.js';
|
|
13
|
+
const DATA_INGESTION_DIR = 'data-ingestion';
|
|
14
|
+
/**
|
|
15
|
+
* Auto-discover the data ingestion workflow JSON file.
|
|
16
|
+
* Expects exactly one .json file in the `data-ingestion/` folder.
|
|
17
|
+
*
|
|
18
|
+
* @param useCasePath - Absolute path to the use case folder
|
|
19
|
+
* @returns Absolute path to the discovered workflow JSON file
|
|
20
|
+
* @throws Error if the folder doesn't exist, has no JSON files, or has multiple
|
|
21
|
+
*/
|
|
22
|
+
export function discoverDataIngestionWorkflow(useCasePath) {
|
|
23
|
+
const diDir = join(useCasePath, DATA_INGESTION_DIR);
|
|
24
|
+
if (!existsSync(diDir)) {
|
|
25
|
+
throw new Error(`No ${DATA_INGESTION_DIR}/ folder found at ${useCasePath}\n\n` +
|
|
26
|
+
'Expected structure:\n' +
|
|
27
|
+
' use-case-folder/\n' +
|
|
28
|
+
' ├── config.ts (must export getDataIngestionConfig)\n' +
|
|
29
|
+
` └── ${DATA_INGESTION_DIR}/\n` +
|
|
30
|
+
' └── <workflow>.json (exactly one JSON file)');
|
|
31
|
+
}
|
|
32
|
+
const jsonFiles = readdirSync(diDir).filter(f => f.endsWith('.json'));
|
|
33
|
+
if (jsonFiles.length === 0) {
|
|
34
|
+
throw new Error(`No workflow JSON file found in ${DATA_INGESTION_DIR}/\n` +
|
|
35
|
+
` Path: ${diDir}\n\n` +
|
|
36
|
+
'Add exactly one .json workflow file to this folder.');
|
|
37
|
+
}
|
|
38
|
+
if (jsonFiles.length > 1) {
|
|
39
|
+
throw new Error(`Multiple JSON files found in ${DATA_INGESTION_DIR}/ — expected exactly one.\n` +
|
|
40
|
+
` Path: ${diDir}\n` +
|
|
41
|
+
` Found: ${jsonFiles.join(', ')}\n\n` +
|
|
42
|
+
'The data-ingestion/ folder must contain exactly one workflow JSON file.');
|
|
43
|
+
}
|
|
44
|
+
return join(diDir, jsonFiles[0]);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Deploy data ingestion by pointing at a use case folder
|
|
48
|
+
*
|
|
49
|
+
* This function:
|
|
50
|
+
* 1. Dynamically imports config.ts from the use case folder
|
|
51
|
+
* 2. Calls getDataIngestionConfig() and resolves the project ID from project.json
|
|
52
|
+
* 3. Auto-discovers the workflow file from data-ingestion/ folder
|
|
53
|
+
* 4. Deploys the data ingestion configuration to the Codika platform
|
|
54
|
+
* 5. Returns the result along with context needed for archiving
|
|
55
|
+
*
|
|
56
|
+
* @param options - Deployment options including the use case path
|
|
57
|
+
* @returns Deployment result with additional context
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const result = await deployDataIngestionFromFolder({
|
|
62
|
+
* useCasePath: '/path/to/use-cases/my-use-case',
|
|
63
|
+
* apiKey: 'your-api-key',
|
|
64
|
+
* apiUrl: 'https://europe-west1-codika-app.cloudfunctions.net/deployDataIngestion',
|
|
65
|
+
* });
|
|
66
|
+
*
|
|
67
|
+
* if (isDataIngestionDeploySuccess(result)) {
|
|
68
|
+
* console.log('Deployed version:', result.version);
|
|
69
|
+
* }
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export async function deployDataIngestionFromFolder(options) {
|
|
73
|
+
const { useCasePath, apiKey, apiUrl, versionStrategy, explicitVersion, } = options;
|
|
74
|
+
// Validate use case structure
|
|
75
|
+
const configPath = join(useCasePath, 'config.ts');
|
|
76
|
+
if (!existsSync(configPath)) {
|
|
77
|
+
throw new Error(`Missing config.ts at ${configPath}\n\n` +
|
|
78
|
+
'Expected structure:\n' +
|
|
79
|
+
' use-case-folder/\n' +
|
|
80
|
+
' ├── config.ts (must export getDataIngestionConfig)\n' +
|
|
81
|
+
` └── ${DATA_INGESTION_DIR}/\n` +
|
|
82
|
+
' └── <workflow>.json (exactly one JSON file)');
|
|
83
|
+
}
|
|
84
|
+
const configUrl = pathToFileURL(configPath).href;
|
|
85
|
+
// Dynamically import the config module
|
|
86
|
+
const configModule = (await import(configUrl));
|
|
87
|
+
// Validate required export
|
|
88
|
+
if (typeof configModule.getDataIngestionConfig !== 'function') {
|
|
89
|
+
throw new Error(`config.ts at ${useCasePath} must export getDataIngestionConfig function`);
|
|
90
|
+
}
|
|
91
|
+
// Auto-discover workflow file from data-ingestion/ folder
|
|
92
|
+
const workflowFile = discoverDataIngestionWorkflow(useCasePath);
|
|
93
|
+
// Resolve project ID: --project-id flag > --project-file > project.json
|
|
94
|
+
const { projectId } = resolveProjectId({
|
|
95
|
+
flagValue: options.projectId,
|
|
96
|
+
useCasePath,
|
|
97
|
+
projectFile: options.projectFile,
|
|
98
|
+
});
|
|
99
|
+
const config = configModule.getDataIngestionConfig();
|
|
100
|
+
// Deploy to the platform
|
|
101
|
+
const result = await deployDataIngestion({
|
|
102
|
+
processId: projectId,
|
|
103
|
+
config,
|
|
104
|
+
apiKey,
|
|
105
|
+
apiUrl,
|
|
106
|
+
versionStrategy,
|
|
107
|
+
explicitVersion,
|
|
108
|
+
});
|
|
109
|
+
// Return result with additional context for archiving
|
|
110
|
+
return {
|
|
111
|
+
...result,
|
|
112
|
+
projectId,
|
|
113
|
+
config,
|
|
114
|
+
workflowFile,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
// Re-export type guards for convenience
|
|
118
|
+
export { isDataIngestionDeploySuccess, isDataIngestionDeployError } from './data-ingestion-deploy-client.js';
|
|
119
|
+
//# sourceMappingURL=data-ingestion-deployer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-ingestion-deployer.js","sourceRoot":"","sources":["../../src/utils/data-ingestion-deployer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Client
|
|
3
|
+
* HTTP client for deploying processes to the Codika platform
|
|
4
|
+
*/
|
|
5
|
+
import type { ProcessDeploymentConfigurationInput, VersionStrategy, DeployProcessUseCaseResponse, DeployProcessUseCaseSuccessResponse, DeployProcessUseCaseErrorResponse, MetadataDocument, SkillDocument } from '../types/process-types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Options for deploying a process
|
|
8
|
+
*/
|
|
9
|
+
export interface DeployOptions {
|
|
10
|
+
/** Target project ID */
|
|
11
|
+
projectId: string;
|
|
12
|
+
/** Process configuration */
|
|
13
|
+
configuration: ProcessDeploymentConfigurationInput;
|
|
14
|
+
/** API URL for deployment */
|
|
15
|
+
apiUrl: string;
|
|
16
|
+
/** API key for authentication */
|
|
17
|
+
apiKey: string;
|
|
18
|
+
/** Version strategy (defaults to 'minor_bump') */
|
|
19
|
+
versionStrategy?: VersionStrategy;
|
|
20
|
+
/** Explicit version (required if versionStrategy is 'explicit') */
|
|
21
|
+
explicitVersion?: string;
|
|
22
|
+
/** Optional metadata documents to upload alongside the deployment */
|
|
23
|
+
metadataDocuments?: MetadataDocument[];
|
|
24
|
+
/** Optional skill documents describing workflow endpoints */
|
|
25
|
+
skills?: SkillDocument[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Result of a deployment operation
|
|
29
|
+
*/
|
|
30
|
+
export type DeployResult = DeployProcessUseCaseResponse;
|
|
31
|
+
/**
|
|
32
|
+
* Type guard to check if response is successful
|
|
33
|
+
*/
|
|
34
|
+
export declare function isDeploySuccess(response: DeployProcessUseCaseResponse): response is DeployProcessUseCaseSuccessResponse;
|
|
35
|
+
/**
|
|
36
|
+
* Type guard to check if response is an error
|
|
37
|
+
*/
|
|
38
|
+
export declare function isDeployError(response: DeployProcessUseCaseResponse): response is DeployProcessUseCaseErrorResponse;
|
|
39
|
+
/**
|
|
40
|
+
* Deploy a process to the Codika platform
|
|
41
|
+
*
|
|
42
|
+
* @param options - Deployment options
|
|
43
|
+
* @returns Deployment result (success or error response)
|
|
44
|
+
*/
|
|
45
|
+
export declare function deployProcess(options: DeployOptions): Promise<DeployResult>;
|
|
46
|
+
/**
|
|
47
|
+
* Deploy a process and throw on error
|
|
48
|
+
* Convenience function for when you want exceptions on failure
|
|
49
|
+
*
|
|
50
|
+
* @param options - Deployment options
|
|
51
|
+
* @returns Success response data
|
|
52
|
+
* @throws Error if deployment fails
|
|
53
|
+
*/
|
|
54
|
+
export declare function deployProcessOrThrow(options: DeployOptions): Promise<DeployProcessUseCaseSuccessResponse>;
|
|
55
|
+
//# sourceMappingURL=deploy-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-client.d.ts","sourceRoot":"","sources":["../../src/utils/deploy-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,mCAAmC,EACnC,eAAe,EAEf,4BAA4B,EAC5B,mCAAmC,EACnC,iCAAiC,EACjC,gBAAgB,EAChB,aAAa,EACd,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,aAAa,EAAE,mCAAmC,CAAC;IACnD,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACvC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAExD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,4BAA4B,GACrC,QAAQ,IAAI,mCAAmC,CAEjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,4BAA4B,GACrC,QAAQ,IAAI,iCAAiC,CAE/C;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,YAAY,CAAC,CAgDvB;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,mCAAmC,CAAC,CAa9C"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Client
|
|
3
|
+
* HTTP client for deploying processes to the Codika platform
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Type guard to check if response is successful
|
|
7
|
+
*/
|
|
8
|
+
export function isDeploySuccess(response) {
|
|
9
|
+
return response.success === true;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Type guard to check if response is an error
|
|
13
|
+
*/
|
|
14
|
+
export function isDeployError(response) {
|
|
15
|
+
return response.success === false;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Deploy a process to the Codika platform
|
|
19
|
+
*
|
|
20
|
+
* @param options - Deployment options
|
|
21
|
+
* @returns Deployment result (success or error response)
|
|
22
|
+
*/
|
|
23
|
+
export async function deployProcess(options) {
|
|
24
|
+
const { projectId, configuration, apiKey, apiUrl, versionStrategy, explicitVersion, metadataDocuments, skills, } = options;
|
|
25
|
+
// Build request body
|
|
26
|
+
const requestBody = {
|
|
27
|
+
projectId,
|
|
28
|
+
configuration,
|
|
29
|
+
};
|
|
30
|
+
if (versionStrategy) {
|
|
31
|
+
requestBody.versionStrategy = versionStrategy;
|
|
32
|
+
}
|
|
33
|
+
if (explicitVersion) {
|
|
34
|
+
requestBody.explicitVersion = explicitVersion;
|
|
35
|
+
}
|
|
36
|
+
if (metadataDocuments && metadataDocuments.length > 0) {
|
|
37
|
+
requestBody.metadataDocuments = metadataDocuments;
|
|
38
|
+
}
|
|
39
|
+
if (skills && skills.length > 0) {
|
|
40
|
+
requestBody.skills = skills;
|
|
41
|
+
}
|
|
42
|
+
// Make API request
|
|
43
|
+
const response = await fetch(apiUrl, {
|
|
44
|
+
method: 'POST',
|
|
45
|
+
headers: {
|
|
46
|
+
'Content-Type': 'application/json',
|
|
47
|
+
'X-Process-Manager-Key': apiKey,
|
|
48
|
+
},
|
|
49
|
+
body: JSON.stringify(requestBody),
|
|
50
|
+
});
|
|
51
|
+
// Parse response
|
|
52
|
+
const result = (await response.json());
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Deploy a process and throw on error
|
|
57
|
+
* Convenience function for when you want exceptions on failure
|
|
58
|
+
*
|
|
59
|
+
* @param options - Deployment options
|
|
60
|
+
* @returns Success response data
|
|
61
|
+
* @throws Error if deployment fails
|
|
62
|
+
*/
|
|
63
|
+
export async function deployProcessOrThrow(options) {
|
|
64
|
+
const result = await deployProcess(options);
|
|
65
|
+
if (isDeployError(result)) {
|
|
66
|
+
throw new Error(`Deployment failed: ${result.error.code} - ${result.error.message}` +
|
|
67
|
+
(result.error.details
|
|
68
|
+
? `\nDetails: ${JSON.stringify(result.error.details)}`
|
|
69
|
+
: ''));
|
|
70
|
+
}
|
|
71
|
+
return result;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=deploy-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-client.js","sourceRoot":"","sources":["../../src/utils/deploy-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAwCH;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAsC;IAEtC,OAAO,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,QAAsC;IAEtC,OAAO,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAsB;IAEtB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,MAAM,EACN,MAAM,EACN,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,MAAM,GACP,GAAG,OAAO,CAAC;IAEZ,qBAAqB;IACrB,MAAM,WAAW,GAAgC;QAC/C,SAAS;QACT,aAAa;KACd,CAAC;IAEF,IAAI,eAAe,EAAE,CAAC;QACpB,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;IAChD,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;IAChD,CAAC;IAED,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,WAAW,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACpD,CAAC;IAED,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED,mBAAmB;IACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;QACnC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,uBAAuB,EAAE,MAAM;SAChC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;KAClC,CAAC,CAAC;IAEH,iBAAiB;IACjB,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiC,CAAC;IAEvE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,sBAAsB,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;YACjE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO;gBACnB,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC,CACV,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Archiver
|
|
3
|
+
* Archives deployed versions locally and tracks version mappings in project-info.json.
|
|
4
|
+
*/
|
|
5
|
+
import type { ProcessDataIngestionConfigInput } from '../types/process-types.js';
|
|
6
|
+
import type { DeployUseCaseResult } from './use-case-deployer.js';
|
|
7
|
+
import { type DeployDataIngestionResult } from './data-ingestion-deploy-client.js';
|
|
8
|
+
/**
|
|
9
|
+
* Deployment info stored in the version archive
|
|
10
|
+
*/
|
|
11
|
+
export interface DeploymentInfo {
|
|
12
|
+
version: string;
|
|
13
|
+
useCaseVersion: string;
|
|
14
|
+
deployedAt: string;
|
|
15
|
+
templateId: string;
|
|
16
|
+
deploymentInstanceId: string;
|
|
17
|
+
processId: string;
|
|
18
|
+
isNewProcess: boolean;
|
|
19
|
+
processInstanceId?: string;
|
|
20
|
+
workflowsDeployed: Array<{
|
|
21
|
+
workflowTemplateId: string;
|
|
22
|
+
n8nWorkflowId: string;
|
|
23
|
+
status: 'active' | 'inactive' | 'failed';
|
|
24
|
+
}>;
|
|
25
|
+
deploymentStatus: 'deployed' | 'failed' | 'pending';
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Version mapping entry — maps a deployed API version to a local semver
|
|
29
|
+
*/
|
|
30
|
+
export interface VersionMappingEntry {
|
|
31
|
+
useCaseVersion: string;
|
|
32
|
+
deployedAt: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Project info stored in project-info.json
|
|
36
|
+
*/
|
|
37
|
+
export interface ProjectInfo {
|
|
38
|
+
projectId: string;
|
|
39
|
+
projectName?: string;
|
|
40
|
+
notes?: string;
|
|
41
|
+
createdAt: string;
|
|
42
|
+
lastDeployedAt: string;
|
|
43
|
+
versionMappings: {
|
|
44
|
+
process: Record<string, VersionMappingEntry>;
|
|
45
|
+
dataIngestion: Record<string, VersionMappingEntry>;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Archive a successful deployment.
|
|
50
|
+
*
|
|
51
|
+
* Creates:
|
|
52
|
+
* deployments/{projectId}/process/{apiVersion}/
|
|
53
|
+
* ├── deployment-info.json
|
|
54
|
+
* ├── config-snapshot.json (base64 workflows replaced with reference)
|
|
55
|
+
* └── workflows/*.json (copies of deployed workflow files)
|
|
56
|
+
*/
|
|
57
|
+
export declare function archiveDeployment(opts: {
|
|
58
|
+
useCasePath: string;
|
|
59
|
+
projectId: string;
|
|
60
|
+
apiVersion: string;
|
|
61
|
+
useCaseVersion: string;
|
|
62
|
+
result: DeployUseCaseResult;
|
|
63
|
+
}): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Update project-info.json with a new process version mapping.
|
|
66
|
+
*/
|
|
67
|
+
export declare function updateProjectInfo(useCasePath: string, projectId: string, apiVersion: string, useCaseVersion: string): Promise<ProjectInfo>;
|
|
68
|
+
/**
|
|
69
|
+
* Data ingestion deployment info stored in the version archive
|
|
70
|
+
*/
|
|
71
|
+
export interface DataIngestionDeploymentInfo {
|
|
72
|
+
version: string;
|
|
73
|
+
useCaseVersion: string;
|
|
74
|
+
deployedAt: string;
|
|
75
|
+
dataIngestionId: string;
|
|
76
|
+
status: string;
|
|
77
|
+
webhookUrls?: {
|
|
78
|
+
embed: string;
|
|
79
|
+
delete: string;
|
|
80
|
+
};
|
|
81
|
+
workflowTemplateId: string;
|
|
82
|
+
workflowName: string;
|
|
83
|
+
purpose: string;
|
|
84
|
+
requestId?: string;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Archive a successful data ingestion deployment.
|
|
88
|
+
*
|
|
89
|
+
* Creates:
|
|
90
|
+
* deployments/{projectId}/data-ingestion/{apiVersion}/
|
|
91
|
+
* ├── deployment-info.json
|
|
92
|
+
* ├── config-snapshot.json
|
|
93
|
+
* └── <workflow-file>.json
|
|
94
|
+
*/
|
|
95
|
+
export declare function archiveDataIngestionDeployment(opts: {
|
|
96
|
+
useCasePath: string;
|
|
97
|
+
projectId: string;
|
|
98
|
+
version: string;
|
|
99
|
+
useCaseVersion: string;
|
|
100
|
+
workflowFile: string;
|
|
101
|
+
config: ProcessDataIngestionConfigInput;
|
|
102
|
+
result: DeployDataIngestionResult & {
|
|
103
|
+
requestId?: string;
|
|
104
|
+
};
|
|
105
|
+
}): Promise<void>;
|
|
106
|
+
/**
|
|
107
|
+
* Update project-info.json with a new data ingestion version mapping.
|
|
108
|
+
*/
|
|
109
|
+
export declare function updateProjectInfoDataIngestion(useCasePath: string, projectId: string, apiVersion: string, useCaseVersion: string): Promise<ProjectInfo>;
|
|
110
|
+
//# sourceMappingURL=deployment-archiver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-archiver.d.ts","sourceRoot":"","sources":["../../src/utils/deployment-archiver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Archiver
|
|
3
|
+
* Archives deployed versions locally and tracks version mappings in project-info.json.
|
|
4
|
+
*/
|
|
5
|
+
import { mkdir, copyFile, writeFile, readFile } from 'fs/promises';
|
|
6
|
+
import { join, basename } from 'path';
|
|
7
|
+
import { isDeploySuccess } from './deploy-client.js';
|
|
8
|
+
import { isDataIngestionDeploySuccess } from './data-ingestion-deploy-client.js';
|
|
9
|
+
/**
|
|
10
|
+
* Archive a successful deployment.
|
|
11
|
+
*
|
|
12
|
+
* Creates:
|
|
13
|
+
* deployments/{projectId}/process/{apiVersion}/
|
|
14
|
+
* ├── deployment-info.json
|
|
15
|
+
* ├── config-snapshot.json (base64 workflows replaced with reference)
|
|
16
|
+
* └── workflows/*.json (copies of deployed workflow files)
|
|
17
|
+
*/
|
|
18
|
+
export async function archiveDeployment(opts) {
|
|
19
|
+
const { useCasePath, projectId, apiVersion, useCaseVersion, result } = opts;
|
|
20
|
+
if (!isDeploySuccess(result)) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const versionDir = join(useCasePath, 'deployments', projectId, 'process', apiVersion);
|
|
24
|
+
const workflowsDir = join(versionDir, 'workflows');
|
|
25
|
+
// Create directory structure
|
|
26
|
+
await mkdir(workflowsDir, { recursive: true });
|
|
27
|
+
// Copy workflow JSON files
|
|
28
|
+
for (const workflowFile of result.workflowFiles) {
|
|
29
|
+
const filename = basename(workflowFile);
|
|
30
|
+
await copyFile(workflowFile, join(workflowsDir, filename));
|
|
31
|
+
}
|
|
32
|
+
// Save config snapshot (strip base64 workflow content)
|
|
33
|
+
const configSnapshot = {
|
|
34
|
+
...result.configuration,
|
|
35
|
+
workflows: result.configuration.workflows.map((w) => ({
|
|
36
|
+
...w,
|
|
37
|
+
n8nWorkflowJsonBase64: '[archived in workflows/ folder]',
|
|
38
|
+
})),
|
|
39
|
+
};
|
|
40
|
+
await writeFile(join(versionDir, 'config-snapshot.json'), JSON.stringify(configSnapshot, null, 2));
|
|
41
|
+
// Save deployment info
|
|
42
|
+
const deploymentInfo = {
|
|
43
|
+
version: result.data.version,
|
|
44
|
+
useCaseVersion,
|
|
45
|
+
deployedAt: new Date().toISOString(),
|
|
46
|
+
templateId: result.data.templateId,
|
|
47
|
+
deploymentInstanceId: result.data.deploymentInstanceId,
|
|
48
|
+
processId: result.data.processId,
|
|
49
|
+
isNewProcess: result.data.isNewProcess,
|
|
50
|
+
processInstanceId: result.data.processInstanceId,
|
|
51
|
+
workflowsDeployed: result.data.workflowsDeployed,
|
|
52
|
+
deploymentStatus: result.data.deploymentStatus,
|
|
53
|
+
};
|
|
54
|
+
await writeFile(join(versionDir, 'deployment-info.json'), JSON.stringify(deploymentInfo, null, 2));
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Update project-info.json with a new process version mapping.
|
|
58
|
+
*/
|
|
59
|
+
export async function updateProjectInfo(useCasePath, projectId, apiVersion, useCaseVersion) {
|
|
60
|
+
const projectDir = join(useCasePath, 'deployments', projectId);
|
|
61
|
+
const infoPath = join(projectDir, 'project-info.json');
|
|
62
|
+
// Read existing or create new
|
|
63
|
+
let info;
|
|
64
|
+
try {
|
|
65
|
+
const content = await readFile(infoPath, 'utf-8');
|
|
66
|
+
info = JSON.parse(content);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
await mkdir(projectDir, { recursive: true });
|
|
70
|
+
const now = new Date().toISOString();
|
|
71
|
+
info = {
|
|
72
|
+
projectId,
|
|
73
|
+
createdAt: now,
|
|
74
|
+
lastDeployedAt: now,
|
|
75
|
+
versionMappings: { process: {}, dataIngestion: {} },
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
// Update mapping
|
|
79
|
+
const now = new Date().toISOString();
|
|
80
|
+
info.lastDeployedAt = now;
|
|
81
|
+
info.versionMappings.process[apiVersion] = {
|
|
82
|
+
useCaseVersion,
|
|
83
|
+
deployedAt: now,
|
|
84
|
+
};
|
|
85
|
+
await writeFile(infoPath, JSON.stringify(info, null, 2));
|
|
86
|
+
return info;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Archive a successful data ingestion deployment.
|
|
90
|
+
*
|
|
91
|
+
* Creates:
|
|
92
|
+
* deployments/{projectId}/data-ingestion/{apiVersion}/
|
|
93
|
+
* ├── deployment-info.json
|
|
94
|
+
* ├── config-snapshot.json
|
|
95
|
+
* └── <workflow-file>.json
|
|
96
|
+
*/
|
|
97
|
+
export async function archiveDataIngestionDeployment(opts) {
|
|
98
|
+
const { useCasePath, projectId, version, useCaseVersion, workflowFile, config, result } = opts;
|
|
99
|
+
if (!isDataIngestionDeploySuccess(result)) {
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const versionDir = join(useCasePath, 'deployments', projectId, 'data-ingestion', version);
|
|
103
|
+
await mkdir(versionDir, { recursive: true });
|
|
104
|
+
// Copy workflow file
|
|
105
|
+
const filename = basename(workflowFile);
|
|
106
|
+
await copyFile(workflowFile, join(versionDir, filename));
|
|
107
|
+
// Save config snapshot (strip base64 content)
|
|
108
|
+
const configSnapshot = {
|
|
109
|
+
...config,
|
|
110
|
+
n8nWorkflowJsonBase64: '[archived as workflow file]',
|
|
111
|
+
};
|
|
112
|
+
await writeFile(join(versionDir, 'config-snapshot.json'), JSON.stringify(configSnapshot, null, 2));
|
|
113
|
+
// Save deployment info
|
|
114
|
+
const deploymentInfo = {
|
|
115
|
+
version: result.version,
|
|
116
|
+
useCaseVersion,
|
|
117
|
+
deployedAt: new Date().toISOString(),
|
|
118
|
+
dataIngestionId: result.dataIngestionId,
|
|
119
|
+
status: result.status,
|
|
120
|
+
webhookUrls: result.webhookUrls,
|
|
121
|
+
workflowTemplateId: config.workflowTemplateId,
|
|
122
|
+
workflowName: config.workflowName,
|
|
123
|
+
purpose: config.purpose,
|
|
124
|
+
requestId: result.requestId,
|
|
125
|
+
};
|
|
126
|
+
await writeFile(join(versionDir, 'deployment-info.json'), JSON.stringify(deploymentInfo, null, 2));
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Update project-info.json with a new data ingestion version mapping.
|
|
130
|
+
*/
|
|
131
|
+
export async function updateProjectInfoDataIngestion(useCasePath, projectId, apiVersion, useCaseVersion) {
|
|
132
|
+
const projectDir = join(useCasePath, 'deployments', projectId);
|
|
133
|
+
const infoPath = join(projectDir, 'project-info.json');
|
|
134
|
+
let info;
|
|
135
|
+
try {
|
|
136
|
+
const content = await readFile(infoPath, 'utf-8');
|
|
137
|
+
info = JSON.parse(content);
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
await mkdir(projectDir, { recursive: true });
|
|
141
|
+
const now = new Date().toISOString();
|
|
142
|
+
info = {
|
|
143
|
+
projectId,
|
|
144
|
+
createdAt: now,
|
|
145
|
+
lastDeployedAt: now,
|
|
146
|
+
versionMappings: { process: {}, dataIngestion: {} },
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
const now = new Date().toISOString();
|
|
150
|
+
info.lastDeployedAt = now;
|
|
151
|
+
info.versionMappings.dataIngestion[apiVersion] = {
|
|
152
|
+
useCaseVersion,
|
|
153
|
+
deployedAt: now,
|
|
154
|
+
};
|
|
155
|
+
await writeFile(infoPath, JSON.stringify(info, null, 2));
|
|
156
|
+
return info;
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=deployment-archiver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-archiver.js","sourceRoot":"","sources":["../../src/utils/deployment-archiver.ts"],"names":[],"mappings":"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"}
|