@aifabrix/builder 2.49.2 → 2.50.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/.cursor/rules/deploy-rules/docker-image-ip-policy.mdc +49 -0
- package/.cursor/rules/plan-rules/application-lifecycle.mdc +30 -0
- package/.cursor/rules/plan-rules/plan-frontmatter.mdc +35 -0
- package/.cursor/rules/plan-rules/plan-lifecycle.mdc +31 -0
- package/.cursor/rules/plan-rules/plan-validation-gate.mdc +34 -0
- package/.cursor/skills/README.md +1 -0
- package/.dockerignore +52 -0
- package/.eslintignore +22 -0
- package/README.md +2 -0
- package/bin/builder-api-cleanup.js +26 -0
- package/bin/builder-api-nest.js +10 -0
- package/bin/builder-api-spike.js +19 -0
- package/enterprise-knowledge/README.md +50 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/README.md +22 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/application.json +15 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/deploy.js +69 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/enterprise-integration-lifecycle-deploy.json +52 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/enterprise-integration-lifecycle-system.json +29 -0
- package/enterprise-knowledge/enterprise-integration-lifecycle/env.template +2 -0
- package/integration/README.md +81 -0
- package/integration/github/README.md +53 -0
- package/integration/github/application.json +21 -0
- package/integration/github/deploy.js +72 -0
- package/integration/github/env.template +11 -0
- package/integration/github/github-datasource-issue-comments.json +239 -0
- package/integration/github/github-datasource-issues.json +399 -0
- package/integration/github/github-datasource-repository.json +354 -0
- package/integration/github/github-deploy.json +1202 -0
- package/integration/github/github-system.json +82 -0
- package/integration/hubspot-test/README.md +1 -1
- package/jest.isolated-projects.js +31 -1
- package/jest.projects.js +87 -1
- package/lib/api/dev-server-https.js +1 -1
- package/lib/api/enterprise-knowledge.api.js +63 -0
- package/lib/api/evidence.api.js +172 -0
- package/lib/api/external-systems.api.js +8 -2
- package/lib/api/resource-types.api.js +1 -0
- package/lib/api/types/enterprise-knowledge.types.js +46 -0
- package/lib/api/types/evidence.types.js +67 -0
- package/lib/api/types/resource-types.types.js +2 -0
- package/lib/app/controller-application-filter.js +36 -0
- package/lib/app/deploy.js +1 -1
- package/lib/app/list-external-systems.js +130 -0
- package/lib/app/list.js +20 -8
- package/lib/app/run.js +3 -1
- package/lib/app/show-display.js +8 -3
- package/lib/app/show-online.js +178 -0
- package/lib/app/show.js +37 -88
- package/lib/build/builder-api-docker-staging.js +47 -0
- package/lib/build/miso-controller-npm-sdk-guard.js +2 -2
- package/lib/build/standard-docker-build.js +2 -0
- package/lib/certification/post-unified-cert-sync.js +4 -31
- package/lib/certification/sync-after-external-command.js +0 -1
- package/lib/certification/sync-system-certification.js +0 -3
- package/lib/channels/add-channel.js +40 -34
- package/lib/channels/approval-guides/chatgpt.js +33 -0
- package/lib/channels/approval-guides/credential-portal.js +38 -0
- package/lib/channels/approval-guides/index.js +110 -0
- package/lib/channels/approval-guides/microsoft-copilot.js +34 -0
- package/lib/channels/approval-guides/slack.js +34 -0
- package/lib/channels/approval-guides/teams-bot.js +35 -0
- package/lib/channels/approval-guides/web-embed.js +32 -0
- package/lib/channels/channel-approval-guide.js +11 -0
- package/lib/channels/channel-artifact-generator.js +16 -4
- package/lib/channels/channel-audit.js +3 -0
- package/lib/channels/channel-auth-context.js +1 -1
- package/lib/channels/channel-description.js +59 -0
- package/lib/channels/channel-integration-generator.js +13 -230
- package/lib/channels/channel-integration-template.js +94 -0
- package/lib/channels/channel-runtime-resolver.js +43 -3
- package/lib/channels/channel-status-display.js +66 -26
- package/lib/channels/channel-targets.js +3 -3
- package/lib/cli/index.js +27 -3
- package/lib/cli/infra-guided.js +5 -1
- package/lib/cli/setup-app-external-create.js +111 -0
- package/lib/cli/setup-app.help.js +1 -1
- package/lib/cli/setup-app.js +38 -125
- package/lib/cli/setup-app.test-commands.js +26 -52
- package/lib/cli/setup-certification-commands.js +4 -4
- package/lib/cli/setup-certification.help.js +9 -9
- package/lib/cli/setup-dev.js +7 -2
- package/lib/cli/setup-external-system-help.js +4 -6
- package/lib/cli/setup-external-system.js +58 -52
- package/lib/cli/setup-infra-up-builder-api-action.js +64 -0
- package/lib/cli/setup-infra-up-platform-action.js +3 -1
- package/lib/cli/setup-infra.js +15 -0
- package/lib/cli/setup-list.js +43 -0
- package/lib/cli/setup-utility-repair.js +26 -7
- package/lib/cli/setup-utility.js +5 -3
- package/lib/commands/app.js +15 -43
- package/lib/commands/channel-add-setup.js +110 -0
- package/lib/commands/channel.js +42 -8
- package/lib/commands/datasource-sync-display.js +96 -0
- package/lib/commands/datasource-sync-policy.js +210 -0
- package/lib/commands/datasource-test-trust-cli.js +6 -6
- package/lib/commands/datasource-unified-test-cli.js +2 -1
- package/lib/commands/datasource-unified-test-cli.options.js +33 -23
- package/lib/commands/deploy-gate-failure-details.js +163 -0
- package/lib/commands/deploy-gate-orchestrator.js +322 -0
- package/lib/commands/dev-cli-handlers.js +1 -59
- package/lib/commands/dev-host-ops-params.js +91 -0
- package/lib/commands/dev-host-ops-poll.js +111 -0
- package/lib/commands/dev-host-ops.js +107 -94
- package/lib/commands/dev-init.js +3 -1
- package/lib/commands/enterprise-knowledge.js +284 -0
- package/lib/commands/evidence-cli-leaves.js +250 -0
- package/lib/commands/evidence.js +51 -0
- package/lib/commands/governance-cli-shared.js +2 -2
- package/lib/commands/governance-command-action.js +2 -2
- package/lib/commands/governance-fixture-subjects.js +85 -0
- package/lib/commands/governance.js +1 -1
- package/lib/commands/lifecycle-command-action.js +2 -2
- package/lib/commands/lifecycle-external.js +3 -3
- package/lib/commands/manifest-cli-auth.js +29 -0
- package/lib/commands/manifest-cli-commands.js +170 -0
- package/lib/commands/manifest-cli-integration-path.js +63 -0
- package/lib/commands/manifest.js +21 -0
- package/lib/commands/protection-cli-leaves.js +3 -3
- package/lib/commands/repair-auth-apply.js +15 -1
- package/lib/commands/repair-authentications-454.js +169 -0
- package/lib/commands/repair-capability-openapi-warnings.js +126 -0
- package/lib/commands/repair-datasource-apply.js +135 -0
- package/lib/commands/repair-datasource-auto-rbac.js +62 -1
- package/lib/commands/repair-datasource-http-service-contract.js +239 -0
- package/lib/commands/repair-datasource-operation-security.js +180 -0
- package/lib/commands/repair-datasource-run.js +7 -2
- package/lib/commands/repair-datasource-sync-operations.js +177 -0
- package/lib/commands/repair-datasource-webhooks-sync-bridge.js +133 -0
- package/lib/commands/repair-datasource.js +12 -68
- package/lib/commands/repair-env-template.js +11 -1
- package/lib/commands/repair-external-run.js +121 -31
- package/lib/commands/repair-internal.js +1 -1
- package/lib/commands/repair-openapi-export.js +156 -0
- package/lib/commands/repair-openapi-sync.js +19 -2
- package/lib/commands/repair-orchestration-datasource-split.js +259 -0
- package/lib/commands/repair-persist.js +22 -1
- package/lib/commands/repair-rbac-platform-preset.js +204 -0
- package/lib/commands/repair-rbac-reader-roles.js +191 -0
- package/lib/commands/repair-rbac.js +163 -86
- package/lib/commands/repair-steps.js +83 -18
- package/lib/commands/repair-system-permissions.js +1 -0
- package/lib/commands/repair.js +1 -1
- package/lib/commands/resource-type.js +65 -26
- package/lib/commands/run-post-publish-data-sync.js +68 -0
- package/lib/commands/setup-modes.js +1 -1
- package/lib/commands/test-e2e-external.js +21 -8
- package/lib/commands/test-governance-cli-options.js +2 -2
- package/lib/commands/test-trust-cli-options.js +2 -2
- package/lib/commands/up-builder-api-bootstrap.js +71 -0
- package/lib/commands/up-builder-api-provision.js +241 -0
- package/lib/commands/up-builder-api.js +88 -0
- package/lib/commands/up-common.js +25 -1
- package/lib/commands/upload-credential-push-log.js +117 -0
- package/lib/commands/upload-data-sync-finalize.js +60 -0
- package/lib/commands/upload-probe.js +66 -0
- package/lib/commands/upload-publish-context.js +4 -1
- package/lib/commands/upload-sidecar-followups.js +55 -27
- package/lib/commands/upload.js +116 -157
- package/lib/commands/verify-governance-combined-external.js +1 -1
- package/lib/commands/verify-governance-db.js +2 -2
- package/lib/commands/verify-operations-command-action.js +2 -2
- package/lib/commands/verify-operations-step-plan.js +2 -2
- package/lib/commands/verify-operations-steps.js +2 -2
- package/lib/commands/verify-trust-command-action.js +1 -1
- package/lib/commands/wizard-core.js +1 -1
- package/lib/commands/wizard-headless.js +2 -1
- package/lib/core/admin-secrets.js +2 -6
- package/lib/core/secrets-env-content.js +10 -4
- package/lib/core/secrets-env-write.js +2 -13
- package/lib/datasource/agent-trust-run.js +3 -3
- package/lib/datasource/deploy.js +3 -1
- package/lib/datasource/test-e2e.js +6 -1
- package/lib/datasource/unified-validation-run-body.js +4 -1
- package/lib/datasource/unified-validation-run.js +1 -1
- package/lib/deployment/deploy-poll-ui.js +73 -12
- package/lib/deployment/deployer-poll-run.js +113 -0
- package/lib/deployment/deployer.js +17 -87
- package/lib/evidence/dataplane-context.js +21 -0
- package/lib/evidence/evidence-display.js +78 -0
- package/lib/evidence/evidence-service.js +392 -0
- package/lib/external-system/deploy.js +290 -112
- package/lib/external-system/download.js +7 -3
- package/lib/external-system/test-execution.js +1 -1
- package/lib/external-system/test-system-level.js +8 -10
- package/lib/external-system/test.js +12 -6
- package/lib/generator/deploy-script.js +73 -0
- package/lib/generator/external.js +2 -1
- package/lib/generator/index.js +17 -2
- package/lib/generator/wizard.js +3 -36
- package/lib/internal/fs-real-sync.js +22 -1
- package/lib/internal/node-fs.js +2 -0
- package/lib/lifecycle/lifecycle-governance-options.js +1 -1
- package/lib/lifecycle/verify-step-progress.js +1 -1
- package/lib/programmatic/access-log.js +26 -0
- package/lib/programmatic/auth-config.js +44 -0
- package/lib/programmatic/bearer-auth.js +176 -0
- package/lib/programmatic/builder-api-request.js +175 -0
- package/lib/programmatic/builder-api-route-dispatch.js +82 -0
- package/lib/programmatic/builder-api-runtime-config.js +42 -0
- package/lib/programmatic/builder-api-server.js +230 -0
- package/lib/programmatic/builder-help-authentication-catalog.js +282 -0
- package/lib/programmatic/builder-help-connected-system-ui.js +266 -0
- package/lib/programmatic/builder-help-enterprise-sync-fabrix.js +60 -0
- package/lib/programmatic/builder-help-envelope.js +36 -0
- package/lib/programmatic/builder-help-fixtures.js +200 -0
- package/lib/programmatic/builder-help-governance.js +172 -0
- package/lib/programmatic/builder-help-schema-catalog.js +92 -0
- package/lib/programmatic/builder-help.js +361 -0
- package/lib/programmatic/capability-registry.js +77 -0
- package/lib/programmatic/command-options.js +32 -0
- package/lib/programmatic/enterprise-mcp-client.js +98 -0
- package/lib/programmatic/http-problem-details.js +99 -0
- package/lib/programmatic/http-route-match.js +40 -0
- package/lib/programmatic/idempotency-cache.js +69 -0
- package/lib/programmatic/index.js +53 -0
- package/lib/programmatic/integration-path-scope.js +39 -0
- package/lib/programmatic/log-redaction.js +66 -0
- package/lib/programmatic/manifest-get-section.js +146 -0
- package/lib/programmatic/manifest-patch-section.js +252 -0
- package/lib/programmatic/manifest-repair.js +122 -0
- package/lib/programmatic/manifest-section-dependency-graph.js +160 -0
- package/lib/programmatic/manifest-section-io.js +225 -0
- package/lib/programmatic/manifest-section-quality.js +171 -0
- package/lib/programmatic/manifest-section-registry-data.js +269 -0
- package/lib/programmatic/manifest-section-registry.js +205 -0
- package/lib/programmatic/nest-http-bridge.js +34 -0
- package/lib/programmatic/openapi-component-schemas.js +68 -0
- package/lib/programmatic/openapi-description-enricher.js +117 -0
- package/lib/programmatic/openapi-descriptions.js +190 -0
- package/lib/programmatic/openapi-docs-serving.js +123 -0
- package/lib/programmatic/openapi-help-schemas.js +63 -0
- package/lib/programmatic/openapi-manifest-schemas.js +141 -0
- package/lib/programmatic/openapi-operation-bindings.js +274 -0
- package/lib/programmatic/openapi-request-schemas.js +155 -0
- package/lib/programmatic/openapi-result-schemas.js +476 -0
- package/lib/programmatic/openapi-schema-descriptions-certify.js +139 -0
- package/lib/programmatic/openapi-schema-descriptions-core.js +159 -0
- package/lib/programmatic/openapi-schema-descriptions-help.js +40 -0
- package/lib/programmatic/openapi-schema-descriptions-manifest.js +143 -0
- package/lib/programmatic/openapi-schema-descriptions-mcp.js +118 -0
- package/lib/programmatic/openapi-schema-descriptions-operations.js +281 -0
- package/lib/programmatic/openapi-schema-helpers.js +93 -0
- package/lib/programmatic/openapi-spec.js +203 -0
- package/lib/programmatic/orchestration-openapi-meta.js +159 -0
- package/lib/programmatic/platform-rbac-catalog.js +90 -0
- package/lib/programmatic/request-timeout.js +53 -0
- package/lib/programmatic/route-handler-map.js +143 -0
- package/lib/programmatic/route-handlers-context.js +29 -0
- package/lib/programmatic/route-handlers.js +33 -0
- package/lib/programmatic/run-certify.js +57 -0
- package/lib/programmatic/run-enterprise-mcp.js +32 -0
- package/lib/programmatic/run-lifecycle.js +29 -0
- package/lib/programmatic/run-repair.js +41 -0
- package/lib/programmatic/run-repository-emcp.js +54 -0
- package/lib/programmatic/run-template-workspace.js +61 -0
- package/lib/programmatic/run-test.js +49 -0
- package/lib/programmatic/run-upload.js +63 -0
- package/lib/programmatic/run-validate.js +53 -0
- package/lib/programmatic/run-wizard.js +40 -0
- package/lib/programmatic/system-key.js +48 -0
- package/lib/programmatic/wizard-config-normalize.js +118 -0
- package/lib/programmatic/workspace-cleanup.js +128 -0
- package/lib/programmatic/workspace-context.js +145 -0
- package/lib/programmatic/workspace-lock.js +75 -0
- package/lib/programmatic/workspace-meta.js +64 -0
- package/lib/programmatic/workspace-ops.js +149 -0
- package/lib/protection/run-commands-upload-sync.js +35 -0
- package/lib/protection/run-commands.js +2 -20
- package/lib/protection/upload-batch.js +11 -7
- package/lib/resolvers/resource-type-file.js +22 -0
- package/lib/schema/external-datasource.schema.json +161 -1
- package/lib/schema/external-system.schema.json +244 -118
- package/lib/schema/flag-map-validation-run.json +3 -0
- package/lib/schema/type/credential-field-registry.json +2 -2
- package/lib/schema/type/document-storage.json +9 -0
- package/lib/utils/agent-trust-run-display.js +1 -1
- package/lib/utils/app-path-resolve.js +168 -0
- package/lib/utils/authentication-env-template.js +222 -0
- package/lib/utils/cli-sync-options.js +7 -11
- package/lib/utils/cli-utils.js +4 -0
- package/lib/utils/cli-workspace-options.js +29 -0
- package/lib/utils/compose-generate-docker-compose.js +102 -0
- package/lib/utils/configuration-env-resolver.js +203 -27
- package/lib/utils/datasource-test-run-certificate-tty.js +28 -2
- package/lib/utils/datasource-test-run-certification-debug.js +130 -0
- package/lib/utils/datasource-test-run-debug-display.js +2 -0
- package/lib/utils/datasource-test-run-debug-slice.js +7 -0
- package/lib/utils/datasource-test-run-display.js +2 -1
- package/lib/utils/dev-init-ssh-merge.js +165 -23
- package/lib/utils/dev-pin-share-instructions.js +110 -0
- package/lib/utils/dev-ssh-config-helper.js +177 -33
- package/lib/utils/enterprise-knowledge-paths.js +142 -0
- package/lib/utils/env-copy.js +2 -1
- package/lib/utils/env-dotenv-format.js +103 -0
- package/lib/utils/external-env-template.js +4 -1
- package/lib/utils/external-system-display.js +5 -1
- package/lib/utils/external-system-readiness-compact-blocks.js +221 -0
- package/lib/utils/external-system-readiness-compact-display.js +324 -0
- package/lib/utils/external-system-readiness-core.js +16 -0
- package/lib/utils/external-system-readiness-deploy-display.js +29 -11
- package/lib/utils/external-system-readiness-display-internals.js +3 -1
- package/lib/utils/external-system-readiness-display.js +20 -30
- package/lib/utils/external-system-system-test-tty-certification.js +135 -0
- package/lib/utils/external-system-system-test-tty.js +5 -41
- package/lib/utils/help-builder.js +6 -1
- package/lib/utils/host-ops-job-labels.js +236 -0
- package/lib/utils/host-ops-job-result.js +61 -0
- package/lib/utils/host-ops-poll-ui.js +163 -0
- package/lib/utils/integration-path-resolve.js +112 -0
- package/lib/utils/paths-reload-source.js +148 -0
- package/lib/utils/paths-system-builder-keys.js +25 -0
- package/lib/utils/paths.js +151 -26
- package/lib/utils/runtime-configuration-values.js +64 -2
- package/lib/utils/secrets-helpers.js +5 -1
- package/lib/utils/ssh-known-hosts.js +130 -0
- package/lib/utils/test-target-cli-options.js +75 -0
- package/lib/utils/upload-sync-options.js +4 -0
- package/lib/utils/validation-run-request.js +11 -2
- package/lib/validation/external-manifest-validator.js +11 -1
- package/lib/validation/openapi-contract-surface-validator.js +426 -0
- package/lib/validation/openapi-contract-vendor-validation.js +238 -0
- package/lib/validation/validate-external-file.js +160 -0
- package/lib/validation/validate.js +6 -117
- package/package.json +46 -29
- package/packages/builder-api/README.md +120 -0
- package/packages/builder-api/package.json +30 -0
- package/packages/builder-api/src/app.module.ts +7 -0
- package/packages/builder-api/src/auth/auth.module.ts +5 -0
- package/packages/builder-api/src/external-system/external-system.module.ts +5 -0
- package/packages/builder-api/src/main.ts +16 -0
- package/packages/builder-api/tsconfig.json +15 -0
- package/scripts/check-builder-api-architecture-grep.js +79 -0
- package/scripts/docker_image_content_gate.js +47 -0
- package/scripts/docker_image_content_gate.sh +5 -0
- package/scripts/export-builder-api-evidence.js +262 -0
- package/scripts/lib/builder-api-docker-staging-copy.js +60 -0
- package/scripts/lib/builder-api-docker-staging-core.js +183 -0
- package/scripts/lib/docker-image-content-gate-core.js +166 -0
- package/scripts/lib/plan-actor.js +109 -0
- package/scripts/lib/plan-config.js +20 -0
- package/scripts/lib/plan-gates.js +154 -0
- package/scripts/lib/plan-meta.js +104 -0
- package/scripts/lib/plan-parse.js +162 -0
- package/scripts/lib/plan-prevalidate-gates.js +326 -0
- package/scripts/lib/plan-run-core.js +125 -0
- package/scripts/lib/plan-run-report.js +108 -0
- package/scripts/plan-approve.js +24 -0
- package/scripts/plan-archive.js +49 -0
- package/scripts/plan-run.js +13 -0
- package/scripts/plan-set-actor.js +21 -0
- package/scripts/plan-validate.js +80 -0
- package/scripts/pnpm/af.mjs +110 -0
- package/scripts/pnpm/check-quiet.mjs +32 -0
- package/scripts/pnpm/dev-install.mjs +29 -0
- package/scripts/pnpm/dev-reload.mjs +18 -0
- package/scripts/pnpm/help.mjs +55 -0
- package/scripts/pnpm/lib/dev-reload-core.mjs +189 -0
- package/scripts/pnpm/lib/dev-reload-log-capture.mjs +67 -0
- package/scripts/pnpm/lib/dev-reload-log-utils.mjs +32 -0
- package/scripts/pnpm/lib/resolve-aifabrix-bin.mjs +124 -0
- package/scripts/pnpm/lib/resolve-app-url.mjs +183 -0
- package/scripts/pnpm/lib/spinner.mjs +42 -0
- package/scripts/stage_builder_api_for_docker.js +65 -0
- package/scripts/sync-builder-api-template.js +44 -0
- package/templates/README.md +3 -0
- package/templates/applications/builder-api/Dockerfile +38 -0
- package/templates/applications/builder-api/application.yaml +75 -0
- package/templates/applications/builder-api/env.template +48 -0
- package/templates/applications/dataplane/application.yaml +1 -1
- package/templates/applications/dataplane/env.template +10 -6
- package/templates/applications/dataplane/rbac.yaml +21 -1
- package/templates/applications/miso-controller/application.yaml +1 -1
- package/templates/applications/miso-controller/env.template +1 -3
- package/templates/channels/README.md +18 -0
- package/templates/channels/ai-fabrix-icon.jpg +0 -0
- package/templates/channels/chatgpt/install.template.md.hbs +21 -24
- package/templates/channels/chatgpt/integration/README.md +11 -0
- package/templates/channels/chatgpt/integration/application.json +15 -0
- package/templates/channels/chatgpt/integration/chatgpt-system.json +29 -0
- package/templates/channels/chatgpt/integration/env.template +4 -0
- package/templates/channels/microsoft-copilot/install.template.md.hbs +20 -25
- package/templates/channels/microsoft-copilot/integration/README.md +11 -0
- package/templates/channels/microsoft-copilot/integration/application.json +15 -0
- package/templates/channels/microsoft-copilot/integration/env.template +6 -0
- package/templates/channels/microsoft-copilot/integration/microsoft-copilot-system.json +34 -0
- package/templates/channels/slack/install.template.md.hbs +48 -18
- package/templates/channels/slack/integration/README.md +38 -0
- package/templates/channels/slack/integration/application.json +18 -0
- package/templates/channels/slack/integration/env.template +29 -0
- package/templates/channels/slack/integration/slack-datasource-conversations.json +226 -0
- package/templates/channels/slack/integration/slack-datasource-messages.json +269 -0
- package/templates/channels/slack/integration/slack-system.json +86 -0
- package/templates/channels/slack/manifest.template.json.hbs +20 -10
- package/templates/channels/teams-bot/install.template.md.hbs +31 -17
- package/templates/channels/teams-bot/integration/README.md +18 -0
- package/templates/channels/teams-bot/integration/application.json +17 -0
- package/templates/channels/teams-bot/integration/env.template +5 -0
- package/templates/channels/teams-bot/integration/teams-bot-system.json +55 -0
- package/templates/channels/teams-bot/manifest.template.json.hbs +27 -0
- package/templates/channels/web-embed/install.template.md.hbs +16 -26
- package/templates/channels/web-embed/integration/README.md +11 -0
- package/templates/channels/web-embed/integration/application.json +15 -0
- package/templates/channels/web-embed/integration/env.template +4 -0
- package/templates/channels/web-embed/integration/web-embed-system.json +29 -0
- package/templates/openapi/redoc_page.html +86 -0
- package/templates/python/docker-compose.hbs +11 -0
- package/templates/python/requirements.txt +1 -1
- package/templates/typescript/docker-compose.hbs +11 -0
- package/lib/certification/cli-cert-sync-skip.js +0 -21
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"key":"external-datasource-schema",
|
|
8
8
|
"name":"External Data Source Configuration Schema",
|
|
9
9
|
"description":"JSON schema for validating ExternalDataSource configuration files",
|
|
10
|
-
"version":"2.
|
|
10
|
+
"version":"2.9.2",
|
|
11
11
|
"type":"schema",
|
|
12
12
|
"category":"integration",
|
|
13
13
|
"author":"AI Fabrix Team",
|
|
@@ -31,6 +31,41 @@
|
|
|
31
31
|
"external-system.schema.json"
|
|
32
32
|
],
|
|
33
33
|
"changelog":[
|
|
34
|
+
{
|
|
35
|
+
"version":"2.9.2",
|
|
36
|
+
"date":"2026-07-02T00:00:00Z",
|
|
37
|
+
"changes":[
|
|
38
|
+
"Removed webhook.eventTypeHeader and webhook.vendorDeliveryIdHeader — inbound HTTP header names belong on webhookInbound credential config only.",
|
|
39
|
+
"Retained optional webhook.eventTypePath and webhook.vendorDeliveryIdPath for payload JSONPath routing and idempotency."
|
|
40
|
+
],
|
|
41
|
+
"breaking":false
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"version":"2.9.1",
|
|
45
|
+
"date":"2026-07-02T00:00:00Z",
|
|
46
|
+
"changes":[
|
|
47
|
+
"Added optional webhook.eventTypeHeader, webhook.eventTypePath, webhook.vendorDeliveryIdHeader, and webhook.vendorDeliveryIdPath for manifest-driven routing and idempotency."
|
|
48
|
+
],
|
|
49
|
+
"breaking":false
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"version":"2.9.0",
|
|
53
|
+
"date":"2026-07-02T00:00:00Z",
|
|
54
|
+
"changes":[
|
|
55
|
+
"Added webhook object (enabled, endpointMode, events, deleteEvents, idPath) for vendor change signals.",
|
|
56
|
+
"Documented syncBridge enum (disabled|master|bidirectional) for Enterprise Synchronization Fabrix."
|
|
57
|
+
],
|
|
58
|
+
"breaking":false
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"version":"2.8.2",
|
|
62
|
+
"date":"2026-06-29T00:00:00Z",
|
|
63
|
+
"changes":[
|
|
64
|
+
"Documented entityType none MUST NOT bind vendor openapi (439.2); use serviceContract for HTTP facades.",
|
|
65
|
+
"Staged validator migration NONE_OPENAPI phases 1–3; JSON Schema hard gate planned for phase 3."
|
|
66
|
+
],
|
|
67
|
+
"breaking":false
|
|
68
|
+
},
|
|
34
69
|
{
|
|
35
70
|
"version":"2.8.1",
|
|
36
71
|
"date":"2026-06-15T00:00:00Z",
|
|
@@ -417,6 +452,68 @@
|
|
|
417
452
|
},
|
|
418
453
|
"uniqueItems":true
|
|
419
454
|
},
|
|
455
|
+
"syncBridge":{
|
|
456
|
+
"type":"string",
|
|
457
|
+
"enum":[
|
|
458
|
+
"disabled",
|
|
459
|
+
"master",
|
|
460
|
+
"bidirectional"
|
|
461
|
+
],
|
|
462
|
+
"default":"disabled",
|
|
463
|
+
"description":"Enterprise Synchronization Fabrix participation mode (454.0). Generated on supply datasource during Enterprise Knowledge compile; default disabled on vendor integrations."
|
|
464
|
+
},
|
|
465
|
+
"webhook":{
|
|
466
|
+
"type":"object",
|
|
467
|
+
"description":"Vendor webhook change-signal configuration (454.0). Webhook is trigger-only; business data comes from CIP get.",
|
|
468
|
+
"additionalProperties":false,
|
|
469
|
+
"properties":{
|
|
470
|
+
"enabled":{
|
|
471
|
+
"type":"boolean",
|
|
472
|
+
"default":false
|
|
473
|
+
},
|
|
474
|
+
"endpointMode":{
|
|
475
|
+
"type":"string",
|
|
476
|
+
"enum":[
|
|
477
|
+
"system",
|
|
478
|
+
"datasource",
|
|
479
|
+
"event"
|
|
480
|
+
],
|
|
481
|
+
"description":"Controls generated POST receiver path scope."
|
|
482
|
+
},
|
|
483
|
+
"events":{
|
|
484
|
+
"type":"array",
|
|
485
|
+
"minItems":1,
|
|
486
|
+
"items":{
|
|
487
|
+
"type":"string",
|
|
488
|
+
"minLength":1
|
|
489
|
+
},
|
|
490
|
+
"description":"Vendor event names that trigger SyncIntent creation."
|
|
491
|
+
},
|
|
492
|
+
"deleteEvents":{
|
|
493
|
+
"type":"array",
|
|
494
|
+
"items":{
|
|
495
|
+
"type":"string",
|
|
496
|
+
"minLength":1
|
|
497
|
+
},
|
|
498
|
+
"description":"Optional subset of events that signal local soft delete only (no provider delete in V1)."
|
|
499
|
+
},
|
|
500
|
+
"idPath":{
|
|
501
|
+
"type":"string",
|
|
502
|
+
"minLength":1,
|
|
503
|
+
"description":"JSONPath to extract vendor object id from webhook payload, e.g. $.objectId"
|
|
504
|
+
},
|
|
505
|
+
"eventTypePath":{
|
|
506
|
+
"type":"string",
|
|
507
|
+
"minLength":1,
|
|
508
|
+
"description":"JSONPath to vendor event type in payload when endpointMode is not event and webhook.events has multiple entries."
|
|
509
|
+
},
|
|
510
|
+
"vendorDeliveryIdPath":{
|
|
511
|
+
"type":"string",
|
|
512
|
+
"minLength":1,
|
|
513
|
+
"description":"JSONPath to vendor delivery id in payload for idempotent deduplication."
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
},
|
|
420
517
|
"dimensions":{
|
|
421
518
|
"type":"object",
|
|
422
519
|
"description":"Canonical dimension bindings for this datasource. Keys must exist in Dimension Catalog when catalog validation runs. For recordStorage/documentStorage, at least one binding is recommended (application validator may warn if missing or empty).",
|
|
@@ -2433,6 +2530,15 @@
|
|
|
2433
2530
|
"lineage":{
|
|
2434
2531
|
"$ref":"#/$defs/cipLineage"
|
|
2435
2532
|
},
|
|
2533
|
+
"enabled":{
|
|
2534
|
+
"type":"boolean",
|
|
2535
|
+
"default":true,
|
|
2536
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2537
|
+
},
|
|
2538
|
+
"order":{
|
|
2539
|
+
"type":"number",
|
|
2540
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2541
|
+
},
|
|
2436
2542
|
"stepId":{
|
|
2437
2543
|
"type":"string",
|
|
2438
2544
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -2498,6 +2604,15 @@
|
|
|
2498
2604
|
"lineage":{
|
|
2499
2605
|
"$ref":"#/$defs/cipLineage"
|
|
2500
2606
|
},
|
|
2607
|
+
"enabled":{
|
|
2608
|
+
"type":"boolean",
|
|
2609
|
+
"default":true,
|
|
2610
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2611
|
+
},
|
|
2612
|
+
"order":{
|
|
2613
|
+
"type":"number",
|
|
2614
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2615
|
+
},
|
|
2501
2616
|
"stepId":{
|
|
2502
2617
|
"type":"string",
|
|
2503
2618
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -2539,6 +2654,15 @@
|
|
|
2539
2654
|
},
|
|
2540
2655
|
"additionalProperties":false
|
|
2541
2656
|
},
|
|
2657
|
+
"enabled":{
|
|
2658
|
+
"type":"boolean",
|
|
2659
|
+
"default":true,
|
|
2660
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2661
|
+
},
|
|
2662
|
+
"order":{
|
|
2663
|
+
"type":"number",
|
|
2664
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2665
|
+
},
|
|
2542
2666
|
"stepId":{
|
|
2543
2667
|
"type":"string",
|
|
2544
2668
|
"description":"Optional stable step identifier."
|
|
@@ -2583,6 +2707,15 @@
|
|
|
2583
2707
|
"lineage":{
|
|
2584
2708
|
"$ref":"#/$defs/cipLineage"
|
|
2585
2709
|
},
|
|
2710
|
+
"enabled":{
|
|
2711
|
+
"type":"boolean",
|
|
2712
|
+
"default":true,
|
|
2713
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2714
|
+
},
|
|
2715
|
+
"order":{
|
|
2716
|
+
"type":"number",
|
|
2717
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2718
|
+
},
|
|
2586
2719
|
"stepId":{
|
|
2587
2720
|
"type":"string",
|
|
2588
2721
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -2655,6 +2788,15 @@
|
|
|
2655
2788
|
"lineage":{
|
|
2656
2789
|
"$ref":"#/$defs/cipLineage"
|
|
2657
2790
|
},
|
|
2791
|
+
"enabled":{
|
|
2792
|
+
"type":"boolean",
|
|
2793
|
+
"default":true,
|
|
2794
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2795
|
+
},
|
|
2796
|
+
"order":{
|
|
2797
|
+
"type":"number",
|
|
2798
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2799
|
+
},
|
|
2658
2800
|
"stepId":{
|
|
2659
2801
|
"type":"string",
|
|
2660
2802
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -2699,6 +2841,15 @@
|
|
|
2699
2841
|
"lineage":{
|
|
2700
2842
|
"$ref":"#/$defs/cipLineage"
|
|
2701
2843
|
},
|
|
2844
|
+
"enabled":{
|
|
2845
|
+
"type":"boolean",
|
|
2846
|
+
"default":true,
|
|
2847
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2848
|
+
},
|
|
2849
|
+
"order":{
|
|
2850
|
+
"type":"number",
|
|
2851
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2852
|
+
},
|
|
2702
2853
|
"stepId":{
|
|
2703
2854
|
"type":"string",
|
|
2704
2855
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -2733,6 +2884,15 @@
|
|
|
2733
2884
|
"lineage":{
|
|
2734
2885
|
"$ref":"#/$defs/cipLineage"
|
|
2735
2886
|
},
|
|
2887
|
+
"enabled":{
|
|
2888
|
+
"type":"boolean",
|
|
2889
|
+
"default":true,
|
|
2890
|
+
"description":"When false, the CIP executor skips this step during operation execution."
|
|
2891
|
+
},
|
|
2892
|
+
"order":{
|
|
2893
|
+
"type":"number",
|
|
2894
|
+
"description":"Optional execution order within the operation; lower values run first when any step defines order."
|
|
2895
|
+
},
|
|
2736
2896
|
"stepId":{
|
|
2737
2897
|
"type":"string",
|
|
2738
2898
|
"pattern":"^[a-z0-9-_]+$",
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"key": "external-system-schema",
|
|
8
8
|
"name": "External System Configuration Schema",
|
|
9
9
|
"description": "JSON schema for validating ExternalSystem configuration files",
|
|
10
|
-
"version": "1.
|
|
10
|
+
"version": "1.13.0",
|
|
11
11
|
"type": "schema",
|
|
12
12
|
"category": "integration",
|
|
13
13
|
"author": "AI Fabrix Team",
|
|
@@ -27,6 +27,38 @@
|
|
|
27
27
|
],
|
|
28
28
|
"dependencies": [],
|
|
29
29
|
"changelog": [
|
|
30
|
+
{
|
|
31
|
+
"version": "1.13.0",
|
|
32
|
+
"date": "2026-07-02T00:00:00Z",
|
|
33
|
+
"changes": [
|
|
34
|
+
"Added authentications[] with usage enum (api, webhookInbound, syncExecution, messageInbound, messageOutbound, callback, provisioning). Legacy authentication retained with deprecation."
|
|
35
|
+
],
|
|
36
|
+
"breaking": false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"version": "1.12.0",
|
|
40
|
+
"date": "2026-06-30T00:00:00Z",
|
|
41
|
+
"changes": [
|
|
42
|
+
"authentication.credential.formFields accepts array (allowlist) or object with defaults { visible, required, locked } and fields[] for allowlist/denylist projection."
|
|
43
|
+
],
|
|
44
|
+
"breaking": false
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"version": "1.11.0",
|
|
48
|
+
"date": "2026-06-30T00:00:00Z",
|
|
49
|
+
"changes": [
|
|
50
|
+
"authentication.credential.formFields[] items may set optional label and placeholder overrides per field."
|
|
51
|
+
],
|
|
52
|
+
"breaking": false
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"version": "1.10.0",
|
|
56
|
+
"date": "2026-06-30T00:00:00Z",
|
|
57
|
+
"changes": [
|
|
58
|
+
"Added optional authentication.credential.formFields[] for per-system Authentication tab field projection."
|
|
59
|
+
],
|
|
60
|
+
"breaking": false
|
|
61
|
+
},
|
|
30
62
|
{
|
|
31
63
|
"version": "1.9.0",
|
|
32
64
|
"date": "2026-06-15T00:00:00Z",
|
|
@@ -212,8 +244,7 @@
|
|
|
212
244
|
"compileCom",
|
|
213
245
|
"generateEnterpriseDatasources",
|
|
214
246
|
"generateRestContracts",
|
|
215
|
-
"generateMcpContracts"
|
|
216
|
-
"runDigitalWorkerTask"
|
|
247
|
+
"generateMcpContracts"
|
|
217
248
|
],
|
|
218
249
|
"description": "Platform task type executed when the subscription fires."
|
|
219
250
|
},
|
|
@@ -222,104 +253,6 @@
|
|
|
222
253
|
"minimum": 1,
|
|
223
254
|
"default": 1,
|
|
224
255
|
"description": "Task definition version snapshot for audit."
|
|
225
|
-
},
|
|
226
|
-
"digitalWorkerKey": {
|
|
227
|
-
"type": "string",
|
|
228
|
-
"minLength": 1,
|
|
229
|
-
"description": "Target digital worker system key (runDigitalWorkerTask)."
|
|
230
|
-
},
|
|
231
|
-
"taskType": {
|
|
232
|
-
"type": "string",
|
|
233
|
-
"minLength": 1,
|
|
234
|
-
"description": "Worker task type label (runDigitalWorkerTask)."
|
|
235
|
-
},
|
|
236
|
-
"objectiveTemplate": {
|
|
237
|
-
"type": "string",
|
|
238
|
-
"description": "Objective template with {{recordId}} placeholders."
|
|
239
|
-
},
|
|
240
|
-
"requiresApproval": {
|
|
241
|
-
"type": "boolean",
|
|
242
|
-
"default": false
|
|
243
|
-
},
|
|
244
|
-
"owner": {
|
|
245
|
-
"$ref": "#/$defs/subscriptionTaskOwner"
|
|
246
|
-
}
|
|
247
|
-
},
|
|
248
|
-
"additionalProperties": false
|
|
249
|
-
},
|
|
250
|
-
"subscriptionCondition": {
|
|
251
|
-
"type": "object",
|
|
252
|
-
"required": [
|
|
253
|
-
"field",
|
|
254
|
-
"operator"
|
|
255
|
-
],
|
|
256
|
-
"properties": {
|
|
257
|
-
"field": {
|
|
258
|
-
"type": "string",
|
|
259
|
-
"minLength": 1,
|
|
260
|
-
"description": "Path against afterSummary (default) or before.* prefix."
|
|
261
|
-
},
|
|
262
|
-
"operator": {
|
|
263
|
-
"type": "string",
|
|
264
|
-
"enum": [
|
|
265
|
-
"equals",
|
|
266
|
-
"notEquals",
|
|
267
|
-
"in",
|
|
268
|
-
"notIn",
|
|
269
|
-
"exists",
|
|
270
|
-
"missing",
|
|
271
|
-
"changed",
|
|
272
|
-
"greaterThan",
|
|
273
|
-
"lessThan"
|
|
274
|
-
]
|
|
275
|
-
},
|
|
276
|
-
"value": {}
|
|
277
|
-
},
|
|
278
|
-
"additionalProperties": false
|
|
279
|
-
},
|
|
280
|
-
"subscriptionTriggerPolicy": {
|
|
281
|
-
"type": "object",
|
|
282
|
-
"required": [
|
|
283
|
-
"mode"
|
|
284
|
-
],
|
|
285
|
-
"properties": {
|
|
286
|
-
"mode": {
|
|
287
|
-
"type": "string",
|
|
288
|
-
"enum": [
|
|
289
|
-
"immediate",
|
|
290
|
-
"debounce",
|
|
291
|
-
"scheduled"
|
|
292
|
-
]
|
|
293
|
-
},
|
|
294
|
-
"windowSeconds": {
|
|
295
|
-
"type": "integer",
|
|
296
|
-
"minimum": 1,
|
|
297
|
-
"description": "Required when mode is debounce."
|
|
298
|
-
}
|
|
299
|
-
},
|
|
300
|
-
"additionalProperties": false
|
|
301
|
-
},
|
|
302
|
-
"subscriptionTaskOwner": {
|
|
303
|
-
"type": "object",
|
|
304
|
-
"required": [
|
|
305
|
-
"mode"
|
|
306
|
-
],
|
|
307
|
-
"properties": {
|
|
308
|
-
"mode": {
|
|
309
|
-
"type": "string",
|
|
310
|
-
"enum": [
|
|
311
|
-
"explicit",
|
|
312
|
-
"recordField"
|
|
313
|
-
]
|
|
314
|
-
},
|
|
315
|
-
"userId": {
|
|
316
|
-
"type": "string",
|
|
317
|
-
"minLength": 1
|
|
318
|
-
},
|
|
319
|
-
"field": {
|
|
320
|
-
"type": "string",
|
|
321
|
-
"minLength": 1,
|
|
322
|
-
"description": "Record summary field for recordField mode."
|
|
323
256
|
}
|
|
324
257
|
},
|
|
325
258
|
"additionalProperties": false
|
|
@@ -350,24 +283,11 @@
|
|
|
350
283
|
"event": {
|
|
351
284
|
"type": "string",
|
|
352
285
|
"minLength": 1,
|
|
353
|
-
"description": "V1 event namespace (platform
|
|
286
|
+
"description": "V1 event namespace (platform.* or schedule.*)."
|
|
354
287
|
},
|
|
355
288
|
"filter": {
|
|
356
289
|
"$ref": "#/$defs/subscriptionFilter"
|
|
357
290
|
},
|
|
358
|
-
"conditions": {
|
|
359
|
-
"type": "array",
|
|
360
|
-
"items": {
|
|
361
|
-
"$ref": "#/$defs/subscriptionCondition"
|
|
362
|
-
}
|
|
363
|
-
},
|
|
364
|
-
"triggerPolicy": {
|
|
365
|
-
"$ref": "#/$defs/subscriptionTriggerPolicy"
|
|
366
|
-
},
|
|
367
|
-
"deduplicationKeyTemplate": {
|
|
368
|
-
"type": "string",
|
|
369
|
-
"description": "Default: {{subscriptionId}}:{{resourceType}}:{{recordId}}:{{task.taskType}}"
|
|
370
|
-
},
|
|
371
291
|
"task": {
|
|
372
292
|
"$ref": "#/$defs/subscriptionTask"
|
|
373
293
|
},
|
|
@@ -587,7 +507,7 @@
|
|
|
587
507
|
},
|
|
588
508
|
{
|
|
589
509
|
"key": "clientId",
|
|
590
|
-
"required":
|
|
510
|
+
"required": false
|
|
591
511
|
},
|
|
592
512
|
{
|
|
593
513
|
"key": "expectedIssuer",
|
|
@@ -611,7 +531,12 @@
|
|
|
611
531
|
"description": "Optional URL used when testing the credential (GET). Full URL or path. For OIDC, discovery URL is typically used if testEndpoint omitted."
|
|
612
532
|
}
|
|
613
533
|
],
|
|
614
|
-
"security": [
|
|
534
|
+
"security": [
|
|
535
|
+
{
|
|
536
|
+
"key": "clientSecret",
|
|
537
|
+
"required": false
|
|
538
|
+
}
|
|
539
|
+
]
|
|
615
540
|
},
|
|
616
541
|
"hmac": {
|
|
617
542
|
"variables": [
|
|
@@ -645,6 +570,14 @@
|
|
|
645
570
|
{
|
|
646
571
|
"key": "signingSecret",
|
|
647
572
|
"required": true
|
|
573
|
+
},
|
|
574
|
+
{
|
|
575
|
+
"key": "botToken",
|
|
576
|
+
"required": false
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"key": "clientSecret",
|
|
580
|
+
"required": false
|
|
648
581
|
}
|
|
649
582
|
]
|
|
650
583
|
},
|
|
@@ -703,6 +636,117 @@
|
|
|
703
636
|
"type": "boolean",
|
|
704
637
|
"description": "Template is immutable after first deploy.",
|
|
705
638
|
"default": true
|
|
639
|
+
},
|
|
640
|
+
"formFields": {
|
|
641
|
+
"description": "Optional Authentication tab field projection. Omitted: security keys only; variables hidden. Array: allowlist. Object: defaults.visible false = allowlist on fields[]; defaults.visible true = registry denylist.",
|
|
642
|
+
"oneOf": [
|
|
643
|
+
{
|
|
644
|
+
"type": "array",
|
|
645
|
+
"items": {
|
|
646
|
+
"type": "object",
|
|
647
|
+
"required": [
|
|
648
|
+
"name"
|
|
649
|
+
],
|
|
650
|
+
"properties": {
|
|
651
|
+
"name": {
|
|
652
|
+
"type": "string",
|
|
653
|
+
"minLength": 1,
|
|
654
|
+
"description": "Registry field name for authentication.credential.method."
|
|
655
|
+
},
|
|
656
|
+
"required": {
|
|
657
|
+
"type": "boolean",
|
|
658
|
+
"description": "Override registry required flag for this field."
|
|
659
|
+
},
|
|
660
|
+
"visible": {
|
|
661
|
+
"type": "boolean",
|
|
662
|
+
"description": "When false, exclude this field from the projected form."
|
|
663
|
+
},
|
|
664
|
+
"locked": {
|
|
665
|
+
"type": "boolean",
|
|
666
|
+
"description": "When true, show read-only (prefilled from variables or stored config)."
|
|
667
|
+
},
|
|
668
|
+
"label": {
|
|
669
|
+
"type": "string",
|
|
670
|
+
"minLength": 1,
|
|
671
|
+
"description": "Override registry display label for this field on the Authentication tab."
|
|
672
|
+
},
|
|
673
|
+
"placeholder": {
|
|
674
|
+
"type": "string",
|
|
675
|
+
"description": "Override registry placeholder for this field on the Authentication tab."
|
|
676
|
+
}
|
|
677
|
+
},
|
|
678
|
+
"additionalProperties": false
|
|
679
|
+
}
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
"type": "object",
|
|
683
|
+
"required": [
|
|
684
|
+
"fields"
|
|
685
|
+
],
|
|
686
|
+
"properties": {
|
|
687
|
+
"defaults": {
|
|
688
|
+
"type": "object",
|
|
689
|
+
"properties": {
|
|
690
|
+
"visible": {
|
|
691
|
+
"type": "boolean"
|
|
692
|
+
},
|
|
693
|
+
"required": {
|
|
694
|
+
"type": "boolean"
|
|
695
|
+
},
|
|
696
|
+
"locked": {
|
|
697
|
+
"type": "boolean"
|
|
698
|
+
}
|
|
699
|
+
},
|
|
700
|
+
"additionalProperties": false
|
|
701
|
+
},
|
|
702
|
+
"visible": {
|
|
703
|
+
"type": "boolean",
|
|
704
|
+
"description": "Default visible flag for entries in fields[] (false = allowlist mode)."
|
|
705
|
+
},
|
|
706
|
+
"required": {
|
|
707
|
+
"type": "boolean",
|
|
708
|
+
"description": "Default required flag for entries in fields[]."
|
|
709
|
+
},
|
|
710
|
+
"locked": {
|
|
711
|
+
"type": "boolean",
|
|
712
|
+
"description": "Default locked flag for entries in fields[]."
|
|
713
|
+
},
|
|
714
|
+
"fields": {
|
|
715
|
+
"type": "array",
|
|
716
|
+
"items": {
|
|
717
|
+
"type": "object",
|
|
718
|
+
"required": [
|
|
719
|
+
"name"
|
|
720
|
+
],
|
|
721
|
+
"properties": {
|
|
722
|
+
"name": {
|
|
723
|
+
"type": "string",
|
|
724
|
+
"minLength": 1
|
|
725
|
+
},
|
|
726
|
+
"required": {
|
|
727
|
+
"type": "boolean"
|
|
728
|
+
},
|
|
729
|
+
"visible": {
|
|
730
|
+
"type": "boolean"
|
|
731
|
+
},
|
|
732
|
+
"locked": {
|
|
733
|
+
"type": "boolean"
|
|
734
|
+
},
|
|
735
|
+
"label": {
|
|
736
|
+
"type": "string",
|
|
737
|
+
"minLength": 1
|
|
738
|
+
},
|
|
739
|
+
"placeholder": {
|
|
740
|
+
"type": "string"
|
|
741
|
+
}
|
|
742
|
+
},
|
|
743
|
+
"additionalProperties": false
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
},
|
|
747
|
+
"additionalProperties": false
|
|
748
|
+
}
|
|
749
|
+
]
|
|
706
750
|
}
|
|
707
751
|
},
|
|
708
752
|
"additionalProperties": false
|
|
@@ -721,6 +765,80 @@
|
|
|
721
765
|
}
|
|
722
766
|
},
|
|
723
767
|
"additionalProperties": false
|
|
768
|
+
},
|
|
769
|
+
"authenticationUsageEntry": {
|
|
770
|
+
"type": "object",
|
|
771
|
+
"description": "Authentication slot with usage separation. Reuses authType branches from legacy authentication.",
|
|
772
|
+
"required": [
|
|
773
|
+
"key",
|
|
774
|
+
"usage",
|
|
775
|
+
"authType"
|
|
776
|
+
],
|
|
777
|
+
"properties": {
|
|
778
|
+
"key": {
|
|
779
|
+
"type": "string",
|
|
780
|
+
"pattern": "^[a-zA-Z0-9_-]+$",
|
|
781
|
+
"minLength": 1,
|
|
782
|
+
"maxLength": 64
|
|
783
|
+
},
|
|
784
|
+
"usage": {
|
|
785
|
+
"type": "string",
|
|
786
|
+
"enum": [
|
|
787
|
+
"api",
|
|
788
|
+
"webhookInbound",
|
|
789
|
+
"syncExecution",
|
|
790
|
+
"messageInbound",
|
|
791
|
+
"messageOutbound",
|
|
792
|
+
"callback",
|
|
793
|
+
"provisioning"
|
|
794
|
+
]
|
|
795
|
+
},
|
|
796
|
+
"authType": {
|
|
797
|
+
"type": "string",
|
|
798
|
+
"enum": [
|
|
799
|
+
"credential",
|
|
800
|
+
"apiProvider",
|
|
801
|
+
"none"
|
|
802
|
+
]
|
|
803
|
+
},
|
|
804
|
+
"credential": {
|
|
805
|
+
"$ref": "#/$defs/credentialTemplate"
|
|
806
|
+
},
|
|
807
|
+
"apiProvider": {
|
|
808
|
+
"$ref": "#/$defs/apiProviderReference"
|
|
809
|
+
}
|
|
810
|
+
},
|
|
811
|
+
"additionalProperties": false,
|
|
812
|
+
"allOf": [
|
|
813
|
+
{
|
|
814
|
+
"if": {
|
|
815
|
+
"properties": {
|
|
816
|
+
"authType": {
|
|
817
|
+
"const": "credential"
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
},
|
|
821
|
+
"then": {
|
|
822
|
+
"required": [
|
|
823
|
+
"credential"
|
|
824
|
+
]
|
|
825
|
+
}
|
|
826
|
+
},
|
|
827
|
+
{
|
|
828
|
+
"if": {
|
|
829
|
+
"properties": {
|
|
830
|
+
"authType": {
|
|
831
|
+
"const": "apiProvider"
|
|
832
|
+
}
|
|
833
|
+
}
|
|
834
|
+
},
|
|
835
|
+
"then": {
|
|
836
|
+
"required": [
|
|
837
|
+
"apiProvider"
|
|
838
|
+
]
|
|
839
|
+
}
|
|
840
|
+
}
|
|
841
|
+
]
|
|
724
842
|
}
|
|
725
843
|
},
|
|
726
844
|
"x-systemKindCatalog": {
|
|
@@ -913,7 +1031,7 @@
|
|
|
913
1031
|
"default": false
|
|
914
1032
|
},
|
|
915
1033
|
"authentication": {
|
|
916
|
-
"description": "Nested authentication: authType credential (local template), apiProvider (Miso delegated), or none.",
|
|
1034
|
+
"description": "Nested authentication: authType credential (local template), apiProvider (Miso delegated), or none. Deprecated — prefer authentications[] with usage.",
|
|
917
1035
|
"oneOf": [
|
|
918
1036
|
{
|
|
919
1037
|
"type": "object",
|
|
@@ -961,6 +1079,14 @@
|
|
|
961
1079
|
}
|
|
962
1080
|
]
|
|
963
1081
|
},
|
|
1082
|
+
"authentications": {
|
|
1083
|
+
"type": "array",
|
|
1084
|
+
"description": "Multi-slot authentication with usage separation. One authentication normalizes to [{key:default, usage:api, ...}].",
|
|
1085
|
+
"items": {
|
|
1086
|
+
"$ref": "#/$defs/authenticationUsageEntry"
|
|
1087
|
+
},
|
|
1088
|
+
"uniqueItems": true
|
|
1089
|
+
},
|
|
964
1090
|
"openapi": {
|
|
965
1091
|
"type": "object",
|
|
966
1092
|
"description": "System-level connectivity and bootstrap hints for OpenAPI-backed systems (e.g. default specUrl for discovery, documentKey alignment with shared registry entries). Not the authoritative per-datasource vendor OpenAPI contract; that is declared on the datasource via externalSpec and validated against imported material.",
|
|
@@ -9,6 +9,9 @@
|
|
|
9
9
|
{ "cliFlag": "-e, --env <env>", "requestField": null, "note": "Controller/dataplane URL and token selection" },
|
|
10
10
|
{ "cliFlag": "-p, --payload <file>", "requestField": "payloadTemplate", "note": "Loaded object merged into request when integration-style test" },
|
|
11
11
|
{ "cliFlag": "--timeout <ms>", "requestField": null, "note": "Client aggregate HTTP budget (POST + polls)" },
|
|
12
|
+
{ "cliFlag": "--version <target>", "requestField": "e2eOptions.versionTarget", "runType": "e2e", "default": "latest", "values": ["latest", "running", "<versionId>"] },
|
|
13
|
+
{ "cliFlag": "--sync-mode <mode>", "requestField": "e2eOptions.syncMode", "runType": "e2e", "default": "auto", "values": ["auto", "never", "force"], "note": "Distinct from --sync (publish local files before test)" },
|
|
14
|
+
{ "cliFlag": "--sync", "requestField": null, "note": "Publish local integration files before test (upload); not the same as --sync-mode" },
|
|
12
15
|
{ "cliFlag": "--debug [level]", "requestField": "includeDebug", "default": false, "note": "summary|full|raw affects TTY appendix only; any presence sets includeDebug" },
|
|
13
16
|
{ "cliFlag": "--no-async", "requestField": "asyncRun", "note": "When true on CLI, omit asyncRun or set false; sync-only POST" },
|
|
14
17
|
{ "cliFlag": "--no-run-scenarios", "requestField": "e2eOptions.runScenarios", "runType": "e2e" },
|