@copado/agentia-cli 0.122.0-alpha.1 → 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -0
- package/README.md +423 -269
- package/dist/commands/auth/get.js +45 -136
- package/dist/commands/auth/set.js +3 -3
- package/dist/commands/cicd/project/create.js +33 -0
- package/dist/commands/cicd/project/default/set.js +2 -0
- package/dist/commands/cicd/project/delete.js +33 -0
- package/dist/commands/cicd/project/list.js +5 -1
- package/dist/commands/cicd/project/update.js +35 -0
- package/dist/commands/cicd/promotion/job-step/update.js +58 -0
- package/dist/commands/cicd/repository/create.js +1 -1
- package/dist/commands/cicd/repository/update.js +1 -1
- package/dist/commands/cicd/work/submit.js +3 -0
- package/dist/commands/update.js +1 -1
- package/dist/lib/agentia-oauth-error-codes.js +5 -30
- package/dist/lib/ai-chat-session.js +3 -157
- package/dist/lib/ai-config.js +14 -140
- package/dist/lib/ai-flags.js +4 -12
- package/dist/lib/ai-gateway.js +6 -382
- package/dist/lib/ai-operations.js +4 -203
- package/dist/lib/ai-stream-parser.js +4 -59
- package/dist/lib/ai-terminal-renderer.js +7 -83
- package/dist/lib/ai-types.js +31 -162
- package/dist/lib/assert.js +3 -7
- package/dist/lib/auth-config.js +20 -516
- package/dist/lib/auth-profile.js +8 -112
- package/dist/lib/auth-status-format.js +6 -0
- package/dist/lib/cicd-gateway.js +43 -834
- package/dist/lib/cicd-region.js +5 -8
- package/dist/lib/cli-update.js +11 -84
- package/dist/lib/cli-version.js +17 -142
- package/dist/lib/command-output-buffer.js +15 -124
- package/dist/lib/credential-store.js +39 -160
- package/dist/lib/credential-sync.js +12 -256
- package/dist/lib/cursor-mcp-config.js +16 -174
- package/dist/lib/data-flags.js +8 -61
- package/dist/lib/data-types.js +30 -182
- package/dist/lib/debug.js +5 -25
- package/dist/lib/defaults-store.js +34 -587
- package/dist/lib/dependency-from-changes.js +7 -121
- package/dist/lib/deployment-step-config.js +7 -110
- package/dist/lib/deployment-step-types.js +26 -223
- package/dist/lib/deployment-step-wizard.js +5 -155
- package/dist/lib/env-file.js +5 -41
- package/dist/lib/environment-auth-status.js +5 -72
- package/dist/lib/environment-auth.js +6 -147
- package/dist/lib/environment-credential-flags.js +13 -73
- package/dist/lib/environment-credential-operations.js +9 -67
- package/dist/lib/environment-credential-selection.js +4 -60
- package/dist/lib/environment-flags.js +18 -165
- package/dist/lib/environment-types.js +14 -79
- package/dist/lib/format.js +4 -108
- package/dist/lib/function-flags.js +8 -199
- package/dist/lib/function-local-run.js +14 -148
- package/dist/lib/function-types.js +22 -179
- package/dist/lib/git-worktree.js +36 -306
- package/dist/lib/ide-command-events.js +25 -248
- package/dist/lib/job-types.js +26 -211
- package/dist/lib/list-pagination.js +16 -106
- package/dist/lib/local-gateway-config.js +8 -53
- package/dist/lib/local-metadata-paths.js +3 -77
- package/dist/lib/local-quality-gates.js +13 -133
- package/dist/lib/loopback-callback-server.js +9 -169
- package/dist/lib/mcp/command-id.js +1 -0
- package/dist/lib/mcp/tools.js +126 -0
- package/dist/lib/mcp/work-tools.js +12 -2
- package/dist/lib/metadata-common.js +27 -237
- package/dist/lib/metadata-refresh.js +8 -104
- package/dist/lib/navigation-open.js +3 -20
- package/dist/lib/navigation.js +7 -63
- package/dist/lib/nested-metadata-changes.js +9 -260
- package/dist/lib/nested-metadata-registry.js +12 -257
- package/dist/lib/notifications-configure.js +13 -101
- package/dist/lib/open-browser.js +6 -52
- package/dist/lib/pipeline-connection-flags.js +17 -309
- package/dist/lib/pipeline-flags.js +16 -154
- package/dist/lib/pipeline-stage-connection-flags.js +8 -46
- package/dist/lib/pipeline-types.js +18 -118
- package/dist/lib/project-default-flags.js +10 -88
- package/dist/lib/project-default-id.js +4 -29
- package/dist/lib/project-default-validation.js +7 -0
- package/dist/lib/project-defaults.js +8 -54
- package/dist/lib/project-flags.js +10 -22
- package/dist/lib/project-root.js +7 -65
- package/dist/lib/project-setup.js +13 -406
- package/dist/lib/project-types.js +9 -54
- package/dist/lib/promotion-conflicts.js +12 -83
- package/dist/lib/promotion-flags.js +4 -76
- package/dist/lib/promotion-job-steps.js +5 -0
- package/dist/lib/promotion-run.js +27 -481
- package/dist/lib/promotion-types.js +12 -144
- package/dist/lib/repository-flags.js +16 -236
- package/dist/lib/repository-types.js +16 -123
- package/dist/lib/runtime.js +1 -0
- package/dist/lib/salesforce-id.js +5 -42
- package/dist/lib/sdr-metadata-registry.generated.js +7 -6330
- package/dist/lib/sdr-path-resolver.js +4 -116
- package/dist/lib/secret-redaction.js +4 -24
- package/dist/lib/setup-prompts.js +4 -14
- package/dist/lib/setup-skills.js +16 -263
- package/dist/lib/setup-templates.js +12 -215
- package/dist/lib/setup-wizard.js +5 -593
- package/dist/lib/sf-org-context.js +7 -151
- package/dist/lib/stage-flags.js +7 -29
- package/dist/lib/stage-types.js +14 -69
- package/dist/lib/stock-quality-gates.js +5 -67
- package/dist/lib/testing-config.js +17 -175
- package/dist/lib/testing-confirmation.js +5 -17
- package/dist/lib/testing-data-command.js +8 -49
- package/dist/lib/testing-data-core.js +20 -208
- package/dist/lib/testing-data-export.js +6 -2
- package/dist/lib/testing-data-import.js +6 -2
- package/dist/lib/testing-data-io.js +12 -236
- package/dist/lib/testing-data-operations.js +10 -91
- package/dist/lib/testing-data-types.js +4 -3
- package/dist/lib/testing-flags.js +14 -312
- package/dist/lib/testing-gateway.js +15 -363
- package/dist/lib/testing-live-command.js +6 -56
- package/dist/lib/testing-live-endpoints.js +6 -34
- package/dist/lib/testing-live-history.js +7 -96
- package/dist/lib/testing-live-operations.js +19 -676
- package/dist/lib/testing-live-recorder.js +9 -122
- package/dist/lib/testing-live-robot.js +9 -158
- package/dist/lib/testing-live-state.js +5 -90
- package/dist/lib/testing-live-types.js +3 -2
- package/dist/lib/testing-operations.js +60 -1309
- package/dist/lib/testing-run-command.js +3 -94
- package/dist/lib/testing-sanitization.js +9 -135
- package/dist/lib/testing-schedule.js +5 -48
- package/dist/lib/testing-secret-input.js +4 -56
- package/dist/lib/testing-session.js +5 -82
- package/dist/lib/testing-types.js +54 -401
- package/dist/lib/testing-watch.js +4 -45
- package/dist/lib/user-context-types.js +3 -2
- package/dist/lib/user-context.js +3 -34
- package/dist/lib/user-types.js +6 -21
- package/dist/lib/var-replacement.js +14 -153
- package/dist/lib/version-warning.js +2 -1
- package/dist/lib/work-active.js +4 -23
- package/dist/lib/work-apex-test.js +12 -265
- package/dist/lib/work-branch-metadata.js +4 -40
- package/dist/lib/work-commit.js +23 -387
- package/dist/lib/work-defaults.js +5 -50
- package/dist/lib/work-done.js +5 -136
- package/dist/lib/work-flags.js +16 -258
- package/dist/lib/work-local-commit.js +7 -138
- package/dist/lib/work-local-run-tests.js +5 -61
- package/dist/lib/work-publish-command.js +5 -88
- package/dist/lib/work-push.js +25 -627
- package/dist/lib/work-set-none.js +4 -58
- package/dist/lib/work-set-selection.js +5 -46
- package/dist/lib/work-submit-wait.js +11 -0
- package/dist/lib/work-types.js +28 -336
- package/dist/lib/yaml-replacement.js +13 -132
- package/oclif.manifest.json +356 -14
- package/package.json +21 -86
- package/templates/skills/agentia-cicd/references/work.md +35 -28
- package/theme.json +12 -0
- package/bin/dev.cmd +0 -3
- package/bin/dev.js +0 -10
- package/dist/commands/ai/agent/ask.d.ts +0 -21
- package/dist/commands/ai/agent/ask.js.map +0 -1
- package/dist/commands/ai/agent/chat.d.ts +0 -21
- package/dist/commands/ai/agent/chat.js.map +0 -1
- package/dist/commands/ai/quota/get.d.ts +0 -10
- package/dist/commands/ai/quota/get.js.map +0 -1
- package/dist/commands/ai/workspace/create.d.ts +0 -13
- package/dist/commands/ai/workspace/create.js.map +0 -1
- package/dist/commands/ai/workspace/get.d.ts +0 -13
- package/dist/commands/ai/workspace/get.js.map +0 -1
- package/dist/commands/ai/workspace/list.d.ts +0 -12
- package/dist/commands/ai/workspace/list.js.map +0 -1
- package/dist/commands/ai/workspace/member/invite.d.ts +0 -15
- package/dist/commands/ai/workspace/member/invite.js.map +0 -1
- package/dist/commands/ai/workspace/member/list.d.ts +0 -16
- package/dist/commands/ai/workspace/member/list.js.map +0 -1
- package/dist/commands/ai/workspace/update.d.ts +0 -18
- package/dist/commands/ai/workspace/update.js.map +0 -1
- package/dist/commands/auth/get.d.ts +0 -47
- package/dist/commands/auth/get.js.map +0 -1
- package/dist/commands/auth/set.d.ts +0 -22
- package/dist/commands/auth/set.js.map +0 -1
- package/dist/commands/auth/unset.d.ts +0 -18
- package/dist/commands/auth/unset.js.map +0 -1
- package/dist/commands/cicd/credential/create.d.ts +0 -12
- package/dist/commands/cicd/credential/create.js.map +0 -1
- package/dist/commands/cicd/credential/list.d.ts +0 -12
- package/dist/commands/cicd/credential/list.js.map +0 -1
- package/dist/commands/cicd/credential/update.d.ts +0 -15
- package/dist/commands/cicd/credential/update.js.map +0 -1
- package/dist/commands/cicd/data/commit/create.d.ts +0 -11
- package/dist/commands/cicd/data/commit/create.js.map +0 -1
- package/dist/commands/cicd/data/commit/list.d.ts +0 -10
- package/dist/commands/cicd/data/commit/list.js.map +0 -1
- package/dist/commands/cicd/data/dataset-file/content.d.ts +0 -10
- package/dist/commands/cicd/data/dataset-file/content.js.map +0 -1
- package/dist/commands/cicd/data/dataset-file/list.d.ts +0 -10
- package/dist/commands/cicd/data/dataset-file/list.js.map +0 -1
- package/dist/commands/cicd/data/filter/add.d.ts +0 -13
- package/dist/commands/cicd/data/filter/add.js.map +0 -1
- package/dist/commands/cicd/data/filter/delete.d.ts +0 -10
- package/dist/commands/cicd/data/filter/delete.js.map +0 -1
- package/dist/commands/cicd/data/filter/list.d.ts +0 -10
- package/dist/commands/cicd/data/filter/list.js.map +0 -1
- package/dist/commands/cicd/data/filter/update.d.ts +0 -14
- package/dist/commands/cicd/data/filter/update.js.map +0 -1
- package/dist/commands/cicd/data/formula/create.d.ts +0 -16
- package/dist/commands/cicd/data/formula/create.js.map +0 -1
- package/dist/commands/cicd/data/formula/list.d.ts +0 -10
- package/dist/commands/cicd/data/formula/list.js.map +0 -1
- package/dist/commands/cicd/data/formula/update.d.ts +0 -18
- package/dist/commands/cicd/data/formula/update.js.map +0 -1
- package/dist/commands/cicd/data/records/match.d.ts +0 -11
- package/dist/commands/cicd/data/records/match.js.map +0 -1
- package/dist/commands/cicd/data/records/search.d.ts +0 -14
- package/dist/commands/cicd/data/records/search.js.map +0 -1
- package/dist/commands/cicd/data/sobject/fields.d.ts +0 -13
- package/dist/commands/cicd/data/sobject/fields.js.map +0 -1
- package/dist/commands/cicd/data/sobject/relationships.d.ts +0 -13
- package/dist/commands/cicd/data/sobject/relationships.js.map +0 -1
- package/dist/commands/cicd/data/sync/apply.d.ts +0 -11
- package/dist/commands/cicd/data/sync/apply.js.map +0 -1
- package/dist/commands/cicd/data/sync/preview-updates.d.ts +0 -11
- package/dist/commands/cicd/data/sync/preview-updates.js.map +0 -1
- package/dist/commands/cicd/data/template/convert-old.d.ts +0 -9
- package/dist/commands/cicd/data/template/convert-old.js.map +0 -1
- package/dist/commands/cicd/data/template/create.d.ts +0 -13
- package/dist/commands/cicd/data/template/create.js.map +0 -1
- package/dist/commands/cicd/data/template/delete.d.ts +0 -9
- package/dist/commands/cicd/data/template/delete.js.map +0 -1
- package/dist/commands/cicd/data/template/get-detail.d.ts +0 -10
- package/dist/commands/cicd/data/template/get-detail.js.map +0 -1
- package/dist/commands/cicd/data/template/get.d.ts +0 -10
- package/dist/commands/cicd/data/template/get.js.map +0 -1
- package/dist/commands/cicd/data/template/list.d.ts +0 -13
- package/dist/commands/cicd/data/template/list.js.map +0 -1
- package/dist/commands/cicd/data/template/open.d.ts +0 -12
- package/dist/commands/cicd/data/template/open.js.map +0 -1
- package/dist/commands/cicd/data/template/save-detail.d.ts +0 -13
- package/dist/commands/cicd/data/template/save-detail.js.map +0 -1
- package/dist/commands/cicd/environment/auth/status.d.ts +0 -13
- package/dist/commands/cicd/environment/auth/status.js.map +0 -1
- package/dist/commands/cicd/environment/auth/web/login.d.ts +0 -15
- package/dist/commands/cicd/environment/auth/web/login.js.map +0 -1
- package/dist/commands/cicd/environment/create.d.ts +0 -22
- package/dist/commands/cicd/environment/create.js.map +0 -1
- package/dist/commands/cicd/environment/get.d.ts +0 -10
- package/dist/commands/cicd/environment/get.js.map +0 -1
- package/dist/commands/cicd/environment/list.d.ts +0 -27
- package/dist/commands/cicd/environment/list.js.map +0 -1
- package/dist/commands/cicd/environment/open.d.ts +0 -15
- package/dist/commands/cicd/environment/open.js.map +0 -1
- package/dist/commands/cicd/environment/update.d.ts +0 -23
- package/dist/commands/cicd/environment/update.js.map +0 -1
- package/dist/commands/cicd/function/defaults.d.ts +0 -12
- package/dist/commands/cicd/function/defaults.js.map +0 -1
- package/dist/commands/cicd/function/delete.d.ts +0 -11
- package/dist/commands/cicd/function/delete.js.map +0 -1
- package/dist/commands/cicd/function/get.d.ts +0 -10
- package/dist/commands/cicd/function/get.js.map +0 -1
- package/dist/commands/cicd/function/list.d.ts +0 -16
- package/dist/commands/cicd/function/list.js.map +0 -1
- package/dist/commands/cicd/function/open.d.ts +0 -12
- package/dist/commands/cicd/function/open.js.map +0 -1
- package/dist/commands/cicd/function/result/get.d.ts +0 -10
- package/dist/commands/cicd/function/result/get.js.map +0 -1
- package/dist/commands/cicd/function/result/log/get.d.ts +0 -17
- package/dist/commands/cicd/function/result/log/get.js.map +0 -1
- package/dist/commands/cicd/function/run-local.d.ts +0 -17
- package/dist/commands/cicd/function/run-local.js.map +0 -1
- package/dist/commands/cicd/function/run.d.ts +0 -16
- package/dist/commands/cicd/function/run.js.map +0 -1
- package/dist/commands/cicd/function/upsert.d.ts +0 -27
- package/dist/commands/cicd/function/upsert.js.map +0 -1
- package/dist/commands/cicd/job/get.d.ts +0 -10
- package/dist/commands/cicd/job/get.js.map +0 -1
- package/dist/commands/cicd/job/kill.d.ts +0 -10
- package/dist/commands/cicd/job/kill.js.map +0 -1
- package/dist/commands/cicd/job/list.d.ts +0 -19
- package/dist/commands/cicd/job/list.js.map +0 -1
- package/dist/commands/cicd/job/log/get.d.ts +0 -18
- package/dist/commands/cicd/job/log/get.js.map +0 -1
- package/dist/commands/cicd/job/open.d.ts +0 -12
- package/dist/commands/cicd/job/open.js.map +0 -1
- package/dist/commands/cicd/job/pause.d.ts +0 -10
- package/dist/commands/cicd/job/pause.js.map +0 -1
- package/dist/commands/cicd/job/result-file/get.d.ts +0 -14
- package/dist/commands/cicd/job/result-file/get.js.map +0 -1
- package/dist/commands/cicd/job/result-file/list.d.ts +0 -10
- package/dist/commands/cicd/job/result-file/list.js.map +0 -1
- package/dist/commands/cicd/job/resume.d.ts +0 -10
- package/dist/commands/cicd/job/resume.js.map +0 -1
- package/dist/commands/cicd/job/run.d.ts +0 -13
- package/dist/commands/cicd/job/run.js.map +0 -1
- package/dist/commands/cicd/metadata/content/compare.d.ts +0 -40
- package/dist/commands/cicd/metadata/content/compare.js.map +0 -1
- package/dist/commands/cicd/metadata/content/get.d.ts +0 -39
- package/dist/commands/cicd/metadata/content/get.js.map +0 -1
- package/dist/commands/cicd/metadata/dependency/list.d.ts +0 -50
- package/dist/commands/cicd/metadata/dependency/list.js.map +0 -1
- package/dist/commands/cicd/metadata/index/compare.d.ts +0 -34
- package/dist/commands/cicd/metadata/index/compare.js.map +0 -1
- package/dist/commands/cicd/metadata/list.d.ts +0 -62
- package/dist/commands/cicd/metadata/list.js.map +0 -1
- package/dist/commands/cicd/metadata/refresh/deleted.d.ts +0 -13
- package/dist/commands/cicd/metadata/refresh/deleted.js.map +0 -1
- package/dist/commands/cicd/metadata/refresh/run.d.ts +0 -21
- package/dist/commands/cicd/metadata/refresh/run.js.map +0 -1
- package/dist/commands/cicd/metadata/refresh/status.d.ts +0 -12
- package/dist/commands/cicd/metadata/refresh/status.js.map +0 -1
- package/dist/commands/cicd/notification/configure.d.ts +0 -14
- package/dist/commands/cicd/notification/configure.js.map +0 -1
- package/dist/commands/cicd/pipeline/connection/create.d.ts +0 -19
- package/dist/commands/cicd/pipeline/connection/create.js.map +0 -1
- package/dist/commands/cicd/pipeline/connection/delete.d.ts +0 -15
- package/dist/commands/cicd/pipeline/connection/delete.js.map +0 -1
- package/dist/commands/cicd/pipeline/connection/list.d.ts +0 -10
- package/dist/commands/cicd/pipeline/connection/list.js.map +0 -1
- package/dist/commands/cicd/pipeline/connection/open.d.ts +0 -12
- package/dist/commands/cicd/pipeline/connection/open.js.map +0 -1
- package/dist/commands/cicd/pipeline/connection/update.d.ts +0 -19
- package/dist/commands/cicd/pipeline/connection/update.js.map +0 -1
- package/dist/commands/cicd/pipeline/create.d.ts +0 -19
- package/dist/commands/cicd/pipeline/create.js.map +0 -1
- package/dist/commands/cicd/pipeline/get.d.ts +0 -10
- package/dist/commands/cicd/pipeline/get.js.map +0 -1
- package/dist/commands/cicd/pipeline/list.d.ts +0 -15
- package/dist/commands/cicd/pipeline/list.js.map +0 -1
- package/dist/commands/cicd/pipeline/open.d.ts +0 -12
- package/dist/commands/cicd/pipeline/open.js.map +0 -1
- package/dist/commands/cicd/pipeline/stage-connection/create.d.ts +0 -12
- package/dist/commands/cicd/pipeline/stage-connection/create.js.map +0 -1
- package/dist/commands/cicd/pipeline/stage-connection/delete.d.ts +0 -16
- package/dist/commands/cicd/pipeline/stage-connection/delete.js.map +0 -1
- package/dist/commands/cicd/pipeline/stage-connection/list.d.ts +0 -10
- package/dist/commands/cicd/pipeline/stage-connection/list.js.map +0 -1
- package/dist/commands/cicd/pipeline/stage-connection/open.d.ts +0 -12
- package/dist/commands/cicd/pipeline/stage-connection/open.js.map +0 -1
- package/dist/commands/cicd/pipeline/stage-connection/update.d.ts +0 -15
- package/dist/commands/cicd/pipeline/stage-connection/update.js.map +0 -1
- package/dist/commands/cicd/pipeline/update.d.ts +0 -20
- package/dist/commands/cicd/pipeline/update.js.map +0 -1
- package/dist/commands/cicd/project/default/get.d.ts +0 -22
- package/dist/commands/cicd/project/default/get.js.map +0 -1
- package/dist/commands/cicd/project/default/set.d.ts +0 -22
- package/dist/commands/cicd/project/default/set.js.map +0 -1
- package/dist/commands/cicd/project/default/unset.d.ts +0 -22
- package/dist/commands/cicd/project/default/unset.js.map +0 -1
- package/dist/commands/cicd/project/get.d.ts +0 -10
- package/dist/commands/cicd/project/get.js.map +0 -1
- package/dist/commands/cicd/project/list.d.ts +0 -14
- package/dist/commands/cicd/project/list.js.map +0 -1
- package/dist/commands/cicd/project/open.d.ts +0 -12
- package/dist/commands/cicd/project/open.js.map +0 -1
- package/dist/commands/cicd/promotion/conflict/get.d.ts +0 -19
- package/dist/commands/cicd/promotion/conflict/get.js.map +0 -1
- package/dist/commands/cicd/promotion/conflict/list.d.ts +0 -10
- package/dist/commands/cicd/promotion/conflict/list.js.map +0 -1
- package/dist/commands/cicd/promotion/conflict/resolve.d.ts +0 -15
- package/dist/commands/cicd/promotion/conflict/resolve.js.map +0 -1
- package/dist/commands/cicd/promotion/conflict/unresolve.d.ts +0 -13
- package/dist/commands/cicd/promotion/conflict/unresolve.js.map +0 -1
- package/dist/commands/cicd/promotion/get.d.ts +0 -10
- package/dist/commands/cicd/promotion/get.js.map +0 -1
- package/dist/commands/cicd/promotion/list.d.ts +0 -33
- package/dist/commands/cicd/promotion/list.js.map +0 -1
- package/dist/commands/cicd/promotion/open.d.ts +0 -12
- package/dist/commands/cicd/promotion/open.js.map +0 -1
- package/dist/commands/cicd/promotion/run.d.ts +0 -23
- package/dist/commands/cicd/promotion/run.js.map +0 -1
- package/dist/commands/cicd/repository/create.d.ts +0 -25
- package/dist/commands/cicd/repository/create.js.map +0 -1
- package/dist/commands/cicd/repository/delete.d.ts +0 -11
- package/dist/commands/cicd/repository/delete.js.map +0 -1
- package/dist/commands/cicd/repository/get.d.ts +0 -10
- package/dist/commands/cicd/repository/get.js.map +0 -1
- package/dist/commands/cicd/repository/list.d.ts +0 -15
- package/dist/commands/cicd/repository/list.js.map +0 -1
- package/dist/commands/cicd/repository/open.d.ts +0 -12
- package/dist/commands/cicd/repository/open.js.map +0 -1
- package/dist/commands/cicd/repository/reset.d.ts +0 -12
- package/dist/commands/cicd/repository/reset.js.map +0 -1
- package/dist/commands/cicd/repository/update.d.ts +0 -34
- package/dist/commands/cicd/repository/update.js.map +0 -1
- package/dist/commands/cicd/repository/validate.d.ts +0 -10
- package/dist/commands/cicd/repository/validate.js.map +0 -1
- package/dist/commands/cicd/stage/create.d.ts +0 -14
- package/dist/commands/cicd/stage/create.js.map +0 -1
- package/dist/commands/cicd/stage/delete.d.ts +0 -14
- package/dist/commands/cicd/stage/delete.js.map +0 -1
- package/dist/commands/cicd/stage/get.d.ts +0 -10
- package/dist/commands/cicd/stage/get.js.map +0 -1
- package/dist/commands/cicd/stage/list.d.ts +0 -12
- package/dist/commands/cicd/stage/list.js.map +0 -1
- package/dist/commands/cicd/stage/open.d.ts +0 -12
- package/dist/commands/cicd/stage/open.js.map +0 -1
- package/dist/commands/cicd/stage/update.d.ts +0 -14
- package/dist/commands/cicd/stage/update.js.map +0 -1
- package/dist/commands/cicd/user/get.d.ts +0 -10
- package/dist/commands/cicd/user/get.js.map +0 -1
- package/dist/commands/cicd/work/commit.d.ts +0 -32
- package/dist/commands/cicd/work/commit.js.map +0 -1
- package/dist/commands/cicd/work/create.d.ts +0 -35
- package/dist/commands/cicd/work/create.js.map +0 -1
- package/dist/commands/cicd/work/delete.d.ts +0 -11
- package/dist/commands/cicd/work/delete.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/create.d.ts +0 -34
- package/dist/commands/cicd/work/deployment-step/create.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/delete.d.ts +0 -15
- package/dist/commands/cicd/work/deployment-step/delete.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/list.d.ts +0 -10
- package/dist/commands/cicd/work/deployment-step/list.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/reorder.d.ts +0 -12
- package/dist/commands/cicd/work/deployment-step/reorder.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/salesforce-flows.d.ts +0 -7
- package/dist/commands/cicd/work/deployment-step/salesforce-flows.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/types.d.ts +0 -7
- package/dist/commands/cicd/work/deployment-step/types.js.map +0 -1
- package/dist/commands/cicd/work/deployment-step/update.d.ts +0 -20
- package/dist/commands/cicd/work/deployment-step/update.js.map +0 -1
- package/dist/commands/cicd/work/done.d.ts +0 -14
- package/dist/commands/cicd/work/done.js.map +0 -1
- package/dist/commands/cicd/work/get.d.ts +0 -10
- package/dist/commands/cicd/work/get.js.map +0 -1
- package/dist/commands/cicd/work/list.d.ts +0 -23
- package/dist/commands/cicd/work/list.js.map +0 -1
- package/dist/commands/cicd/work/open.d.ts +0 -12
- package/dist/commands/cicd/work/open.js.map +0 -1
- package/dist/commands/cicd/work/promote.d.ts +0 -25
- package/dist/commands/cicd/work/promote.js.map +0 -1
- package/dist/commands/cicd/work/publish.d.ts +0 -12
- package/dist/commands/cicd/work/publish.js.map +0 -1
- package/dist/commands/cicd/work/push.d.ts +0 -16
- package/dist/commands/cicd/work/push.js.map +0 -1
- package/dist/commands/cicd/work/set.d.ts +0 -16
- package/dist/commands/cicd/work/set.js.map +0 -1
- package/dist/commands/cicd/work/status.d.ts +0 -14
- package/dist/commands/cicd/work/status.js.map +0 -1
- package/dist/commands/cicd/work/submit.d.ts +0 -17
- package/dist/commands/cicd/work/submit.js.map +0 -1
- package/dist/commands/cicd/work/test/apex.d.ts +0 -11
- package/dist/commands/cicd/work/test/apex.js.map +0 -1
- package/dist/commands/cicd/work/test.d.ts +0 -15
- package/dist/commands/cicd/work/test.js.map +0 -1
- package/dist/commands/cicd/work/update.d.ts +0 -38
- package/dist/commands/cicd/work/update.js.map +0 -1
- package/dist/commands/mcp/start.d.ts +0 -7
- package/dist/commands/mcp/start.js.map +0 -1
- package/dist/commands/setup/skills/create.d.ts +0 -15
- package/dist/commands/setup/skills/create.js.map +0 -1
- package/dist/commands/setup/skills/update.d.ts +0 -15
- package/dist/commands/setup/skills/update.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -8
- package/dist/commands/setup.js.map +0 -1
- package/dist/commands/testing/build/abort.d.ts +0 -29
- package/dist/commands/testing/build/abort.js.map +0 -1
- package/dist/commands/testing/build/get.d.ts +0 -18
- package/dist/commands/testing/build/get.js.map +0 -1
- package/dist/commands/testing/build/latest.d.ts +0 -12
- package/dist/commands/testing/build/latest.js.map +0 -1
- package/dist/commands/testing/build/list.d.ts +0 -18
- package/dist/commands/testing/build/list.js.map +0 -1
- package/dist/commands/testing/build/logs.d.ts +0 -24
- package/dist/commands/testing/build/logs.js.map +0 -1
- package/dist/commands/testing/build/run.d.ts +0 -47
- package/dist/commands/testing/build/run.js.map +0 -1
- package/dist/commands/testing/build/search.d.ts +0 -21
- package/dist/commands/testing/build/search.js.map +0 -1
- package/dist/commands/testing/create.d.ts +0 -1
- package/dist/commands/testing/create.js.map +0 -1
- package/dist/commands/testing/data-table/create.d.ts +0 -30
- package/dist/commands/testing/data-table/create.js.map +0 -1
- package/dist/commands/testing/data-table/delete.d.ts +0 -25
- package/dist/commands/testing/data-table/delete.js.map +0 -1
- package/dist/commands/testing/data-table/export.d.ts +0 -33
- package/dist/commands/testing/data-table/export.js.map +0 -1
- package/dist/commands/testing/data-table/get.d.ts +0 -21
- package/dist/commands/testing/data-table/get.js.map +0 -1
- package/dist/commands/testing/data-table/list.d.ts +0 -16
- package/dist/commands/testing/data-table/list.js.map +0 -1
- package/dist/commands/testing/data-table/update.d.ts +0 -34
- package/dist/commands/testing/data-table/update.js.map +0 -1
- package/dist/commands/testing/job/create.d.ts +0 -40
- package/dist/commands/testing/job/create.js.map +0 -1
- package/dist/commands/testing/job/delete.d.ts +0 -26
- package/dist/commands/testing/job/delete.js.map +0 -1
- package/dist/commands/testing/job/download.d.ts +0 -19
- package/dist/commands/testing/job/download.js.map +0 -1
- package/dist/commands/testing/job/files.d.ts +0 -16
- package/dist/commands/testing/job/files.js.map +0 -1
- package/dist/commands/testing/job/get.d.ts +0 -13
- package/dist/commands/testing/job/get.js.map +0 -1
- package/dist/commands/testing/job/list.d.ts +0 -11
- package/dist/commands/testing/job/list.js.map +0 -1
- package/dist/commands/testing/job/refs.d.ts +0 -17
- package/dist/commands/testing/job/refs.js.map +0 -1
- package/dist/commands/testing/job/run.d.ts +0 -1
- package/dist/commands/testing/job/run.js.map +0 -1
- package/dist/commands/testing/job/schedule/get.d.ts +0 -23
- package/dist/commands/testing/job/schedule/get.js.map +0 -1
- package/dist/commands/testing/job/schedule/remove.d.ts +0 -24
- package/dist/commands/testing/job/schedule/remove.js.map +0 -1
- package/dist/commands/testing/job/schedule/set.d.ts +0 -23
- package/dist/commands/testing/job/schedule/set.js.map +0 -1
- package/dist/commands/testing/job/update.d.ts +0 -41
- package/dist/commands/testing/job/update.js.map +0 -1
- package/dist/commands/testing/job/upload.d.ts +0 -32
- package/dist/commands/testing/job/upload.js.map +0 -1
- package/dist/commands/testing/live/continue.d.ts +0 -20
- package/dist/commands/testing/live/continue.js.map +0 -1
- package/dist/commands/testing/live/execute.d.ts +0 -30
- package/dist/commands/testing/live/execute.js.map +0 -1
- package/dist/commands/testing/live/history.d.ts +0 -23
- package/dist/commands/testing/live/history.js.map +0 -1
- package/dist/commands/testing/live/inspect.d.ts +0 -18
- package/dist/commands/testing/live/inspect.js.map +0 -1
- package/dist/commands/testing/live/interrupt.d.ts +0 -20
- package/dist/commands/testing/live/interrupt.js.map +0 -1
- package/dist/commands/testing/live/recorder.d.ts +0 -23
- package/dist/commands/testing/live/recorder.js.map +0 -1
- package/dist/commands/testing/live/reports.d.ts +0 -20
- package/dist/commands/testing/live/reports.js.map +0 -1
- package/dist/commands/testing/live/screenshot.d.ts +0 -23
- package/dist/commands/testing/live/screenshot.js.map +0 -1
- package/dist/commands/testing/live/set-options.d.ts +0 -27
- package/dist/commands/testing/live/set-options.js.map +0 -1
- package/dist/commands/testing/live/start.d.ts +0 -29
- package/dist/commands/testing/live/start.js.map +0 -1
- package/dist/commands/testing/live/status.d.ts +0 -19
- package/dist/commands/testing/live/status.js.map +0 -1
- package/dist/commands/testing/live/stop.d.ts +0 -24
- package/dist/commands/testing/live/stop.js.map +0 -1
- package/dist/commands/testing/live/view.d.ts +0 -16
- package/dist/commands/testing/live/view.js.map +0 -1
- package/dist/commands/testing/logs.d.ts +0 -24
- package/dist/commands/testing/logs.js.map +0 -1
- package/dist/commands/testing/project/create.d.ts +0 -14
- package/dist/commands/testing/project/create.js.map +0 -1
- package/dist/commands/testing/project/delete.d.ts +0 -23
- package/dist/commands/testing/project/delete.js.map +0 -1
- package/dist/commands/testing/project/get.d.ts +0 -11
- package/dist/commands/testing/project/get.js.map +0 -1
- package/dist/commands/testing/project/list.d.ts +0 -10
- package/dist/commands/testing/project/list.js.map +0 -1
- package/dist/commands/testing/project/permission/get.d.ts +0 -13
- package/dist/commands/testing/project/permission/get.js.map +0 -1
- package/dist/commands/testing/project/permission/list.d.ts +0 -13
- package/dist/commands/testing/project/permission/list.js.map +0 -1
- package/dist/commands/testing/project/permission/set.d.ts +0 -19
- package/dist/commands/testing/project/permission/set.js.map +0 -1
- package/dist/commands/testing/project/permission/update.d.ts +0 -19
- package/dist/commands/testing/project/permission/update.js.map +0 -1
- package/dist/commands/testing/project/update.d.ts +0 -14
- package/dist/commands/testing/project/update.js.map +0 -1
- package/dist/commands/testing/robot/create.d.ts +0 -19
- package/dist/commands/testing/robot/create.js.map +0 -1
- package/dist/commands/testing/robot/delete.d.ts +0 -23
- package/dist/commands/testing/robot/delete.js.map +0 -1
- package/dist/commands/testing/robot/get.d.ts +0 -13
- package/dist/commands/testing/robot/get.js.map +0 -1
- package/dist/commands/testing/robot/list.d.ts +0 -10
- package/dist/commands/testing/robot/list.js.map +0 -1
- package/dist/commands/testing/robot/update.d.ts +0 -19
- package/dist/commands/testing/robot/update.js.map +0 -1
- package/dist/commands/testing/run.d.ts +0 -47
- package/dist/commands/testing/run.js.map +0 -1
- package/dist/commands/testing/status.d.ts +0 -13
- package/dist/commands/testing/status.js.map +0 -1
- package/dist/commands/testing/test/create.d.ts +0 -1
- package/dist/commands/testing/test/create.js.map +0 -1
- package/dist/commands/testing/test/logs.d.ts +0 -1
- package/dist/commands/testing/test/logs.js.map +0 -1
- package/dist/commands/testing/test/run.d.ts +0 -47
- package/dist/commands/testing/test/run.js.map +0 -1
- package/dist/commands/testing/test/status.d.ts +0 -1
- package/dist/commands/testing/test/status.js.map +0 -1
- package/dist/commands/testing/test/update.d.ts +0 -1
- package/dist/commands/testing/test/update.js.map +0 -1
- package/dist/commands/testing/update.d.ts +0 -32
- package/dist/commands/testing/update.js.map +0 -1
- package/dist/commands/testing/user-parameter/create.d.ts +0 -19
- package/dist/commands/testing/user-parameter/create.js.map +0 -1
- package/dist/commands/testing/user-parameter/delete.d.ts +0 -21
- package/dist/commands/testing/user-parameter/delete.js.map +0 -1
- package/dist/commands/testing/user-parameter/get.d.ts +0 -13
- package/dist/commands/testing/user-parameter/get.js.map +0 -1
- package/dist/commands/testing/user-parameter/list.d.ts +0 -12
- package/dist/commands/testing/user-parameter/list.js.map +0 -1
- package/dist/commands/testing/user-parameter/update.d.ts +0 -23
- package/dist/commands/testing/user-parameter/update.js.map +0 -1
- package/dist/commands/testing/variable/create.d.ts +0 -21
- package/dist/commands/testing/variable/create.js.map +0 -1
- package/dist/commands/testing/variable/delete.d.ts +0 -21
- package/dist/commands/testing/variable/delete.js.map +0 -1
- package/dist/commands/testing/variable/get.d.ts +0 -13
- package/dist/commands/testing/variable/get.js.map +0 -1
- package/dist/commands/testing/variable/list.d.ts +0 -16
- package/dist/commands/testing/variable/list.js.map +0 -1
- package/dist/commands/testing/variable/update.d.ts +0 -22
- package/dist/commands/testing/variable/update.js.map +0 -1
- package/dist/commands/update.d.ts +0 -10
- package/dist/commands/update.js.map +0 -1
- package/dist/hooks/finally/ide-command-event.d.ts +0 -3
- package/dist/hooks/finally/ide-command-event.js.map +0 -1
- package/dist/hooks/init/migrate-user-config.d.ts +0 -3
- package/dist/hooks/init/migrate-user-config.js.map +0 -1
- package/dist/hooks/init/version-warning.d.ts +0 -3
- package/dist/hooks/init/version-warning.js.map +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/agentia-command.d.ts +0 -15
- package/dist/lib/agentia-command.js.map +0 -1
- package/dist/lib/agentia-oauth-error-codes.d.ts +0 -17
- package/dist/lib/agentia-oauth-error-codes.js.map +0 -1
- package/dist/lib/ai-chat-session.d.ts +0 -18
- package/dist/lib/ai-chat-session.js.map +0 -1
- package/dist/lib/ai-config.d.ts +0 -29
- package/dist/lib/ai-config.js.map +0 -1
- package/dist/lib/ai-flags.d.ts +0 -8
- package/dist/lib/ai-flags.js.map +0 -1
- package/dist/lib/ai-gateway.d.ts +0 -56
- package/dist/lib/ai-gateway.js.map +0 -1
- package/dist/lib/ai-operations.d.ts +0 -28
- package/dist/lib/ai-operations.js.map +0 -1
- package/dist/lib/ai-stream-parser.d.ts +0 -12
- package/dist/lib/ai-stream-parser.js.map +0 -1
- package/dist/lib/ai-terminal-renderer.d.ts +0 -17
- package/dist/lib/ai-terminal-renderer.js.map +0 -1
- package/dist/lib/ai-types.d.ts +0 -157
- package/dist/lib/ai-types.js.map +0 -1
- package/dist/lib/assert.d.ts +0 -1
- package/dist/lib/assert.js.map +0 -1
- package/dist/lib/auth-config.d.ts +0 -94
- package/dist/lib/auth-config.js.map +0 -1
- package/dist/lib/auth-profile.d.ts +0 -25
- package/dist/lib/auth-profile.js.map +0 -1
- package/dist/lib/cicd-gateway.d.ts +0 -166
- package/dist/lib/cicd-gateway.js.map +0 -1
- package/dist/lib/cicd-region.d.ts +0 -4
- package/dist/lib/cicd-region.js.map +0 -1
- package/dist/lib/cli-update.d.ts +0 -29
- package/dist/lib/cli-update.js.map +0 -1
- package/dist/lib/cli-version.d.ts +0 -30
- package/dist/lib/cli-version.js.map +0 -1
- package/dist/lib/command-output-buffer.d.ts +0 -31
- package/dist/lib/command-output-buffer.js.map +0 -1
- package/dist/lib/credential-store.d.ts +0 -47
- package/dist/lib/credential-store.js.map +0 -1
- package/dist/lib/credential-sync.d.ts +0 -41
- package/dist/lib/credential-sync.js.map +0 -1
- package/dist/lib/cursor-mcp-config.d.ts +0 -66
- package/dist/lib/cursor-mcp-config.js.map +0 -1
- package/dist/lib/data-flags.d.ts +0 -14
- package/dist/lib/data-flags.js.map +0 -1
- package/dist/lib/data-types.d.ts +0 -325
- package/dist/lib/data-types.js.map +0 -1
- package/dist/lib/debug.d.ts +0 -3
- package/dist/lib/debug.js.map +0 -1
- package/dist/lib/defaults-store.d.ts +0 -97
- package/dist/lib/defaults-store.js.map +0 -1
- package/dist/lib/dependency-from-changes.d.ts +0 -12
- package/dist/lib/dependency-from-changes.js.map +0 -1
- package/dist/lib/deployment-step-config.d.ts +0 -27
- package/dist/lib/deployment-step-config.js.map +0 -1
- package/dist/lib/deployment-step-types.d.ts +0 -104
- package/dist/lib/deployment-step-types.js.map +0 -1
- package/dist/lib/deployment-step-wizard.d.ts +0 -28
- package/dist/lib/deployment-step-wizard.js.map +0 -1
- package/dist/lib/env-file.d.ts +0 -5
- package/dist/lib/env-file.js.map +0 -1
- package/dist/lib/environment-auth-status.d.ts +0 -18
- package/dist/lib/environment-auth-status.js.map +0 -1
- package/dist/lib/environment-auth.d.ts +0 -26
- package/dist/lib/environment-auth.js.map +0 -1
- package/dist/lib/environment-credential-flags.d.ts +0 -29
- package/dist/lib/environment-credential-flags.js.map +0 -1
- package/dist/lib/environment-credential-operations.d.ts +0 -19
- package/dist/lib/environment-credential-operations.js.map +0 -1
- package/dist/lib/environment-credential-selection.d.ts +0 -15
- package/dist/lib/environment-credential-selection.js.map +0 -1
- package/dist/lib/environment-flags.d.ts +0 -93
- package/dist/lib/environment-flags.js.map +0 -1
- package/dist/lib/environment-types.d.ts +0 -105
- package/dist/lib/environment-types.js.map +0 -1
- package/dist/lib/format.d.ts +0 -10
- package/dist/lib/format.js.map +0 -1
- package/dist/lib/function-flags.d.ts +0 -69
- package/dist/lib/function-flags.js.map +0 -1
- package/dist/lib/function-local-run.d.ts +0 -64
- package/dist/lib/function-local-run.js.map +0 -1
- package/dist/lib/function-types.d.ts +0 -120
- package/dist/lib/function-types.js.map +0 -1
- package/dist/lib/git-worktree.d.ts +0 -83
- package/dist/lib/git-worktree.js.map +0 -1
- package/dist/lib/ide-command-events.d.ts +0 -72
- package/dist/lib/ide-command-events.js.map +0 -1
- package/dist/lib/job-types.d.ts +0 -125
- package/dist/lib/job-types.js.map +0 -1
- package/dist/lib/list-pagination.d.ts +0 -46
- package/dist/lib/list-pagination.js.map +0 -1
- package/dist/lib/local-gateway-config.d.ts +0 -21
- package/dist/lib/local-gateway-config.js.map +0 -1
- package/dist/lib/local-metadata-paths.d.ts +0 -6
- package/dist/lib/local-metadata-paths.js.map +0 -1
- package/dist/lib/local-quality-gates.d.ts +0 -53
- package/dist/lib/local-quality-gates.js.map +0 -1
- package/dist/lib/loopback-callback-server.d.ts +0 -36
- package/dist/lib/loopback-callback-server.js.map +0 -1
- package/dist/lib/mcp/ai-tools.d.ts +0 -21
- package/dist/lib/mcp/ai-tools.js.map +0 -1
- package/dist/lib/mcp/command-id.d.ts +0 -4
- package/dist/lib/mcp/command-id.js.map +0 -1
- package/dist/lib/mcp/data-tools.d.ts +0 -156
- package/dist/lib/mcp/data-tools.js.map +0 -1
- package/dist/lib/mcp/deployment-step-tools.d.ts +0 -82
- package/dist/lib/mcp/deployment-step-tools.js.map +0 -1
- package/dist/lib/mcp/redaction.d.ts +0 -1
- package/dist/lib/mcp/redaction.js.map +0 -1
- package/dist/lib/mcp/request-context.d.ts +0 -2
- package/dist/lib/mcp/request-context.js.map +0 -1
- package/dist/lib/mcp/result.d.ts +0 -44
- package/dist/lib/mcp/result.js.map +0 -1
- package/dist/lib/mcp/server.d.ts +0 -5
- package/dist/lib/mcp/server.js.map +0 -1
- package/dist/lib/mcp/testing-live-tools.d.ts +0 -126
- package/dist/lib/mcp/testing-live-tools.js.map +0 -1
- package/dist/lib/mcp/testing-tools.d.ts +0 -699
- package/dist/lib/mcp/testing-tools.js.map +0 -1
- package/dist/lib/mcp/tools.d.ts +0 -1964
- package/dist/lib/mcp/tools.js.map +0 -1
- package/dist/lib/mcp/work-tools.d.ts +0 -182
- package/dist/lib/mcp/work-tools.js.map +0 -1
- package/dist/lib/metadata-common.d.ts +0 -175
- package/dist/lib/metadata-common.js.map +0 -1
- package/dist/lib/metadata-refresh.d.ts +0 -68
- package/dist/lib/metadata-refresh.js.map +0 -1
- package/dist/lib/navigation-open.d.ts +0 -7
- package/dist/lib/navigation-open.js.map +0 -1
- package/dist/lib/navigation.d.ts +0 -14
- package/dist/lib/navigation.js.map +0 -1
- package/dist/lib/nested-metadata-changes.d.ts +0 -88
- package/dist/lib/nested-metadata-changes.js.map +0 -1
- package/dist/lib/nested-metadata-registry.d.ts +0 -36
- package/dist/lib/nested-metadata-registry.js.map +0 -1
- package/dist/lib/notifications-configure.d.ts +0 -34
- package/dist/lib/notifications-configure.js.map +0 -1
- package/dist/lib/open-browser.d.ts +0 -11
- package/dist/lib/open-browser.js.map +0 -1
- package/dist/lib/pipeline-connection-flags.d.ts +0 -62
- package/dist/lib/pipeline-connection-flags.js.map +0 -1
- package/dist/lib/pipeline-flags.d.ts +0 -74
- package/dist/lib/pipeline-flags.js.map +0 -1
- package/dist/lib/pipeline-stage-connection-flags.d.ts +0 -25
- package/dist/lib/pipeline-stage-connection-flags.js.map +0 -1
- package/dist/lib/pipeline-types.d.ts +0 -178
- package/dist/lib/pipeline-types.js.map +0 -1
- package/dist/lib/project-default-flags.d.ts +0 -43
- package/dist/lib/project-default-flags.js.map +0 -1
- package/dist/lib/project-default-id.d.ts +0 -4
- package/dist/lib/project-default-id.js.map +0 -1
- package/dist/lib/project-defaults.d.ts +0 -24
- package/dist/lib/project-defaults.js.map +0 -1
- package/dist/lib/project-flags.d.ts +0 -11
- package/dist/lib/project-flags.js.map +0 -1
- package/dist/lib/project-root.d.ts +0 -13
- package/dist/lib/project-root.js.map +0 -1
- package/dist/lib/project-setup.d.ts +0 -90
- package/dist/lib/project-setup.js.map +0 -1
- package/dist/lib/project-types.d.ts +0 -39
- package/dist/lib/project-types.js.map +0 -1
- package/dist/lib/promotion-conflicts.d.ts +0 -40
- package/dist/lib/promotion-conflicts.js.map +0 -1
- package/dist/lib/promotion-flags.d.ts +0 -23
- package/dist/lib/promotion-flags.js.map +0 -1
- package/dist/lib/promotion-run.d.ts +0 -105
- package/dist/lib/promotion-run.js.map +0 -1
- package/dist/lib/promotion-types.d.ts +0 -192
- package/dist/lib/promotion-types.js.map +0 -1
- package/dist/lib/repository-flags.d.ts +0 -131
- package/dist/lib/repository-flags.js.map +0 -1
- package/dist/lib/repository-types.d.ts +0 -99
- package/dist/lib/repository-types.js.map +0 -1
- package/dist/lib/salesforce-id.d.ts +0 -11
- package/dist/lib/salesforce-id.js.map +0 -1
- package/dist/lib/sdr-metadata-registry.generated.d.ts +0 -18
- package/dist/lib/sdr-metadata-registry.generated.js.map +0 -1
- package/dist/lib/sdr-path-resolver.d.ts +0 -7
- package/dist/lib/sdr-path-resolver.js.map +0 -1
- package/dist/lib/secret-redaction.d.ts +0 -2
- package/dist/lib/secret-redaction.js.map +0 -1
- package/dist/lib/setup-prompts.d.ts +0 -38
- package/dist/lib/setup-prompts.js.map +0 -1
- package/dist/lib/setup-skills.d.ts +0 -83
- package/dist/lib/setup-skills.js.map +0 -1
- package/dist/lib/setup-templates.d.ts +0 -12
- package/dist/lib/setup-templates.js.map +0 -1
- package/dist/lib/setup-wizard.d.ts +0 -46
- package/dist/lib/setup-wizard.js.map +0 -1
- package/dist/lib/sf-org-context.d.ts +0 -13
- package/dist/lib/sf-org-context.js.map +0 -1
- package/dist/lib/stage-flags.d.ts +0 -19
- package/dist/lib/stage-flags.js.map +0 -1
- package/dist/lib/stage-types.d.ts +0 -67
- package/dist/lib/stage-types.js.map +0 -1
- package/dist/lib/stock-quality-gates.d.ts +0 -12
- package/dist/lib/stock-quality-gates.js.map +0 -1
- package/dist/lib/testing-config.d.ts +0 -44
- package/dist/lib/testing-config.js.map +0 -1
- package/dist/lib/testing-confirmation.d.ts +0 -14
- package/dist/lib/testing-confirmation.js.map +0 -1
- package/dist/lib/testing-data-command.d.ts +0 -21
- package/dist/lib/testing-data-command.js.map +0 -1
- package/dist/lib/testing-data-core.d.ts +0 -22
- package/dist/lib/testing-data-core.js.map +0 -1
- package/dist/lib/testing-data-export.d.ts +0 -1
- package/dist/lib/testing-data-export.js.map +0 -1
- package/dist/lib/testing-data-import.d.ts +0 -1
- package/dist/lib/testing-data-import.js.map +0 -1
- package/dist/lib/testing-data-io.d.ts +0 -21
- package/dist/lib/testing-data-io.js.map +0 -1
- package/dist/lib/testing-data-operations.d.ts +0 -36
- package/dist/lib/testing-data-operations.js.map +0 -1
- package/dist/lib/testing-data-types.d.ts +0 -41
- package/dist/lib/testing-data-types.js.map +0 -1
- package/dist/lib/testing-flags.d.ts +0 -117
- package/dist/lib/testing-flags.js.map +0 -1
- package/dist/lib/testing-gateway.d.ts +0 -60
- package/dist/lib/testing-gateway.js.map +0 -1
- package/dist/lib/testing-live-command.d.ts +0 -24
- package/dist/lib/testing-live-command.js.map +0 -1
- package/dist/lib/testing-live-endpoints.d.ts +0 -14
- package/dist/lib/testing-live-endpoints.js.map +0 -1
- package/dist/lib/testing-live-history.d.ts +0 -11
- package/dist/lib/testing-live-history.js.map +0 -1
- package/dist/lib/testing-live-operations.d.ts +0 -118
- package/dist/lib/testing-live-operations.js.map +0 -1
- package/dist/lib/testing-live-recorder.d.ts +0 -14
- package/dist/lib/testing-live-recorder.js.map +0 -1
- package/dist/lib/testing-live-robot.d.ts +0 -16
- package/dist/lib/testing-live-robot.js.map +0 -1
- package/dist/lib/testing-live-state.d.ts +0 -4
- package/dist/lib/testing-live-state.js.map +0 -1
- package/dist/lib/testing-live-types.d.ts +0 -92
- package/dist/lib/testing-live-types.js.map +0 -1
- package/dist/lib/testing-operations.d.ts +0 -354
- package/dist/lib/testing-operations.js.map +0 -1
- package/dist/lib/testing-run-command.d.ts +0 -25
- package/dist/lib/testing-run-command.js.map +0 -1
- package/dist/lib/testing-sanitization.d.ts +0 -11
- package/dist/lib/testing-sanitization.js.map +0 -1
- package/dist/lib/testing-schedule.d.ts +0 -23
- package/dist/lib/testing-schedule.js.map +0 -1
- package/dist/lib/testing-secret-input.d.ts +0 -12
- package/dist/lib/testing-secret-input.js.map +0 -1
- package/dist/lib/testing-session.d.ts +0 -8
- package/dist/lib/testing-session.js.map +0 -1
- package/dist/lib/testing-types.d.ts +0 -340
- package/dist/lib/testing-types.js.map +0 -1
- package/dist/lib/testing-watch.d.ts +0 -4
- package/dist/lib/testing-watch.js.map +0 -1
- package/dist/lib/user-context-types.d.ts +0 -12
- package/dist/lib/user-context-types.js.map +0 -1
- package/dist/lib/user-context.d.ts +0 -7
- package/dist/lib/user-context.js.map +0 -1
- package/dist/lib/user-types.d.ts +0 -9
- package/dist/lib/user-types.js.map +0 -1
- package/dist/lib/var-replacement.d.ts +0 -47
- package/dist/lib/var-replacement.js.map +0 -1
- package/dist/lib/version-refresh.d.ts +0 -1
- package/dist/lib/version-refresh.js.map +0 -1
- package/dist/lib/version-warning.d.ts +0 -29
- package/dist/lib/version-warning.js.map +0 -1
- package/dist/lib/work-active.d.ts +0 -4
- package/dist/lib/work-active.js.map +0 -1
- package/dist/lib/work-apex-test.d.ts +0 -56
- package/dist/lib/work-apex-test.js.map +0 -1
- package/dist/lib/work-branch-metadata.d.ts +0 -13
- package/dist/lib/work-branch-metadata.js.map +0 -1
- package/dist/lib/work-commit.d.ts +0 -123
- package/dist/lib/work-commit.js.map +0 -1
- package/dist/lib/work-defaults.d.ts +0 -10
- package/dist/lib/work-defaults.js.map +0 -1
- package/dist/lib/work-done.d.ts +0 -22
- package/dist/lib/work-done.js.map +0 -1
- package/dist/lib/work-flags.d.ts +0 -128
- package/dist/lib/work-flags.js.map +0 -1
- package/dist/lib/work-local-commit.d.ts +0 -42
- package/dist/lib/work-local-commit.js.map +0 -1
- package/dist/lib/work-local-run-tests.d.ts +0 -25
- package/dist/lib/work-local-run-tests.js.map +0 -1
- package/dist/lib/work-publish-command.d.ts +0 -26
- package/dist/lib/work-publish-command.js.map +0 -1
- package/dist/lib/work-push.d.ts +0 -112
- package/dist/lib/work-push.js.map +0 -1
- package/dist/lib/work-set-none.d.ts +0 -14
- package/dist/lib/work-set-none.js.map +0 -1
- package/dist/lib/work-set-selection.d.ts +0 -15
- package/dist/lib/work-set-selection.js.map +0 -1
- package/dist/lib/work-types.d.ts +0 -344
- package/dist/lib/work-types.js.map +0 -1
- package/dist/lib/yaml-replacement.d.ts +0 -42
- package/dist/lib/yaml-replacement.js.map +0 -1
|
@@ -1,363 +1,15 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
statusCode;
|
|
17
|
-
constructor(message, options = {}) {
|
|
18
|
-
super(message);
|
|
19
|
-
this.name = 'TestingGatewayError';
|
|
20
|
-
this.requestMethod = options.request?.method;
|
|
21
|
-
this.requestUrl = options.request?.url;
|
|
22
|
-
this.retryAfterSeconds = options.retryAfterSeconds;
|
|
23
|
-
this.statusCode = options.statusCode;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
function userAgent() {
|
|
27
|
-
return gatewayUserAgent();
|
|
28
|
-
}
|
|
29
|
-
function transactionIdForRequest() {
|
|
30
|
-
return getGatewayTransactionId() ?? createTransactionId();
|
|
31
|
-
}
|
|
32
|
-
function parseRetryAfterHeader(value) {
|
|
33
|
-
if (value === undefined)
|
|
34
|
-
return undefined;
|
|
35
|
-
const raw = Array.isArray(value) ? value[0] : value;
|
|
36
|
-
if (raw === undefined)
|
|
37
|
-
return undefined;
|
|
38
|
-
if (typeof raw === 'number')
|
|
39
|
-
return Number.isFinite(raw) && raw >= 0 ? Math.ceil(raw) : undefined;
|
|
40
|
-
const trimmed = raw.trim();
|
|
41
|
-
if (/^\d+$/u.test(trimmed))
|
|
42
|
-
return Number.parseInt(trimmed, 10);
|
|
43
|
-
const dateMs = Date.parse(trimmed);
|
|
44
|
-
return Number.isNaN(dateMs) ? undefined : Math.max(0, Math.ceil((dateMs - Date.now()) / 1000));
|
|
45
|
-
}
|
|
46
|
-
function defaultHttpsRequest(url, method, headers, body, timeoutMs, maxResponseBytes = TESTING_MAX_RESPONSE_BYTES) {
|
|
47
|
-
const hasBody = body !== undefined;
|
|
48
|
-
const payload = hasBody ? (typeof body === 'string' ? body : JSON.stringify(body)) : '';
|
|
49
|
-
const requestHeaders = {
|
|
50
|
-
Accept: 'application/json',
|
|
51
|
-
...headers,
|
|
52
|
-
};
|
|
53
|
-
if (hasBody) {
|
|
54
|
-
requestHeaders['Content-Type'] = requestHeaders['Content-Type'] ?? 'application/json';
|
|
55
|
-
requestHeaders['Content-Length'] = Buffer.byteLength(payload).toString();
|
|
56
|
-
}
|
|
57
|
-
const transport = url.protocol === 'http:' ? http : https;
|
|
58
|
-
return new Promise((resolve, reject) => {
|
|
59
|
-
const req = transport.request({
|
|
60
|
-
headers: requestHeaders,
|
|
61
|
-
hostname: url.hostname,
|
|
62
|
-
method,
|
|
63
|
-
path: `${url.pathname}${url.search}`,
|
|
64
|
-
port: url.port.length > 0 ? Number(url.port) : undefined,
|
|
65
|
-
timeout: timeoutMs,
|
|
66
|
-
}, (res) => {
|
|
67
|
-
const chunks = [];
|
|
68
|
-
let responseBytes = 0;
|
|
69
|
-
res.on('data', (chunk) => {
|
|
70
|
-
responseBytes += chunk.length;
|
|
71
|
-
if (responseBytes > maxResponseBytes) {
|
|
72
|
-
req.destroy(new TestingGatewayError(`CRT response exceeded the ${maxResponseBytes} byte safety limit.`));
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
chunks.push(chunk);
|
|
76
|
-
});
|
|
77
|
-
res.on('end', () => {
|
|
78
|
-
const raw = Buffer.concat(chunks);
|
|
79
|
-
const status = res.statusCode ?? 0;
|
|
80
|
-
if (status >= 400) {
|
|
81
|
-
const text = raw.toString('utf8');
|
|
82
|
-
logVerboseDebug('CRT response', {
|
|
83
|
-
body: summarizeTestingDebugResponse(text),
|
|
84
|
-
status,
|
|
85
|
-
});
|
|
86
|
-
reject(new TestingGatewayError(testingProviderErrorMessage(text, status), {
|
|
87
|
-
retryAfterSeconds: status === 429 ? parseRetryAfterHeader(res.headers['retry-after']) : undefined,
|
|
88
|
-
statusCode: status,
|
|
89
|
-
}));
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
resolve(raw);
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
req.on('error', (error) => reject(error));
|
|
96
|
-
req.on('timeout', () => {
|
|
97
|
-
req.destroy(new Error(`CRT request timed out after ${Math.ceil(timeoutMs / 1000)} seconds.`));
|
|
98
|
-
});
|
|
99
|
-
if (hasBody)
|
|
100
|
-
req.write(payload);
|
|
101
|
-
req.end();
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
let httpRequestFn = defaultHttpsRequest;
|
|
105
|
-
function requestUrl(request, domain) {
|
|
106
|
-
if (request.service === 'session') {
|
|
107
|
-
if (request.sessionPath === undefined) {
|
|
108
|
-
throw new TestingGatewayError('CRT session requests require a validated session path.');
|
|
109
|
-
}
|
|
110
|
-
const base = resolveTestingSessionUrl(request.sessionPath, domain);
|
|
111
|
-
if (!/^\/api\/[a-z-]+$/u.test(request.endpoint)) {
|
|
112
|
-
throw new TestingGatewayError('CRT session endpoint has an unexpected format.');
|
|
113
|
-
}
|
|
114
|
-
return new URL(`${base.pathname}${request.endpoint}`, `${base.protocol}//${base.host}`);
|
|
115
|
-
}
|
|
116
|
-
const baseUrl = request.service === 'platform'
|
|
117
|
-
? platformBaseUrl(domain)
|
|
118
|
-
: request.service === 'metrics'
|
|
119
|
-
? metricsBaseUrl(domain)
|
|
120
|
-
: request.service === 'test-data'
|
|
121
|
-
? testDataBaseUrl(domain)
|
|
122
|
-
: paceBaseUrl(domain);
|
|
123
|
-
return new URL(request.endpoint, `${baseUrl}/`);
|
|
124
|
-
}
|
|
125
|
-
function withRequestSuffix(message, request) {
|
|
126
|
-
const suffix = request.url === undefined ? '' : ` Request: ${request.method ?? ''} ${request.url}`.trimEnd();
|
|
127
|
-
if (suffix.length === 0)
|
|
128
|
-
return message;
|
|
129
|
-
return message.endsWith('.') ? `${message} ${suffix}` : `${message}. ${suffix}`;
|
|
130
|
-
}
|
|
131
|
-
function maskTestingHeaders(headers) {
|
|
132
|
-
const masked = {};
|
|
133
|
-
for (const [key, value] of Object.entries(headers)) {
|
|
134
|
-
masked[key] = /authorization|cookie|csrf|xsrf/iu.test(key) ? TESTING_REDACTED : value;
|
|
135
|
-
}
|
|
136
|
-
return masked;
|
|
137
|
-
}
|
|
138
|
-
async function executeTestingRequest(request, options = {}) {
|
|
139
|
-
const credentials = resolveTestingCredentials(options);
|
|
140
|
-
if (request.service === 'test-data' && request.auth?.mode !== 'session') {
|
|
141
|
-
throw new TestingGatewayError('CRT test-data requests require an in-memory session.');
|
|
142
|
-
}
|
|
143
|
-
if (request.service === 'session' && request.auth?.mode !== 'session') {
|
|
144
|
-
throw new TestingGatewayError('CRT live session requests require an in-memory session.');
|
|
145
|
-
}
|
|
146
|
-
if (request.service === 'test-data' &&
|
|
147
|
-
Object.keys(request.headers ?? {}).some((key) => key.toLowerCase() === 'x-authorization')) {
|
|
148
|
-
throw new TestingGatewayError('CRT test-data requests must not send X-Authorization.');
|
|
149
|
-
}
|
|
150
|
-
if (request.service !== 'test-data' && request.service !== 'session' && request.auth !== undefined) {
|
|
151
|
-
throw new TestingGatewayError('CRT session authentication is restricted to session services.');
|
|
152
|
-
}
|
|
153
|
-
const url = requestUrl(request, credentials.domain);
|
|
154
|
-
const safeUrl = sanitizeTestingUrl(url);
|
|
155
|
-
const requestInfo = { method: request.method, url: safeUrl };
|
|
156
|
-
const transactionId = transactionIdForRequest();
|
|
157
|
-
const authenticationHeaders = {};
|
|
158
|
-
if (request.auth?.mode === 'session') {
|
|
159
|
-
authenticationHeaders.Cookie = request.auth.cookie;
|
|
160
|
-
if (request.auth.xsrfToken !== undefined)
|
|
161
|
-
authenticationHeaders['X-XSRF-TOKEN'] = request.auth.xsrfToken;
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
authenticationHeaders['X-Authorization'] = credentials.pak;
|
|
165
|
-
}
|
|
166
|
-
const headers = {
|
|
167
|
-
...gatewayRefererHeaders(),
|
|
168
|
-
...request.headers,
|
|
169
|
-
'User-Agent': userAgent(),
|
|
170
|
-
...authenticationHeaders,
|
|
171
|
-
'x-transaction-id': transactionId,
|
|
172
|
-
};
|
|
173
|
-
let raw;
|
|
174
|
-
logVerboseDebug('CRT request', {
|
|
175
|
-
body: summarizeTestingDebugRequest(request.body, {
|
|
176
|
-
redactValues: request.service === 'session' ||
|
|
177
|
-
request.endpoint.includes('/secrets') ||
|
|
178
|
-
request.endpoint.includes('/user-parameters'),
|
|
179
|
-
}),
|
|
180
|
-
headers: maskTestingHeaders(headers),
|
|
181
|
-
method: request.method,
|
|
182
|
-
url: safeUrl,
|
|
183
|
-
});
|
|
184
|
-
try {
|
|
185
|
-
scheduleGatewayEventLog({
|
|
186
|
-
eventId: transactionId,
|
|
187
|
-
method: request.method,
|
|
188
|
-
orgId: credentials.orgId.toString(),
|
|
189
|
-
service: CRT_GATEWAY_EVENT_SERVICE,
|
|
190
|
-
url: safeUrl,
|
|
191
|
-
});
|
|
192
|
-
raw = await httpRequestFn(url, request.method, headers, request.body, options.timeoutMs ?? TESTING_DEFAULT_TIMEOUT_MS, request.maxResponseBytes ?? TESTING_MAX_RESPONSE_BYTES);
|
|
193
|
-
}
|
|
194
|
-
catch (error) {
|
|
195
|
-
if (error instanceof TestingGatewayError) {
|
|
196
|
-
const message = error.statusCode === undefined
|
|
197
|
-
? error.message.startsWith('CRT response exceeded')
|
|
198
|
-
? error.message
|
|
199
|
-
: 'CRT request failed.'
|
|
200
|
-
: testingProviderErrorMessage(JSON.stringify({ message: error.message }), error.statusCode);
|
|
201
|
-
const safeMessage = request.service === 'session' ? message : withRequestSuffix(message, requestInfo);
|
|
202
|
-
throw new TestingGatewayError(safeMessage, {
|
|
203
|
-
request: requestInfo,
|
|
204
|
-
retryAfterSeconds: error.retryAfterSeconds,
|
|
205
|
-
statusCode: error.statusCode,
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
const message = request.service === 'session'
|
|
209
|
-
? 'CRT live request failed before receiving a response.'
|
|
210
|
-
: withRequestSuffix('CRT request failed before receiving a response', requestInfo);
|
|
211
|
-
throw new TestingGatewayError(message, {
|
|
212
|
-
request: requestInfo,
|
|
213
|
-
});
|
|
214
|
-
}
|
|
215
|
-
const responseBuffer = typeof raw === 'string' ? Buffer.from(raw, 'utf8') : raw;
|
|
216
|
-
const responseText = responseBuffer.toString('utf8');
|
|
217
|
-
logVerboseDebug('CRT response', summarizeTestingDebugResponse(responseText, request.responseType));
|
|
218
|
-
if (responseBuffer.length === 0)
|
|
219
|
-
return undefined;
|
|
220
|
-
if (request.responseType === 'buffer')
|
|
221
|
-
return responseBuffer;
|
|
222
|
-
if (request.responseType === 'text')
|
|
223
|
-
return responseText;
|
|
224
|
-
try {
|
|
225
|
-
return JSON.parse(responseText);
|
|
226
|
-
}
|
|
227
|
-
catch {
|
|
228
|
-
throw new TestingGatewayError(withRequestSuffix('CRT API returned an unexpected non-JSON response', requestInfo), {
|
|
229
|
-
request: requestInfo,
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
export class TestingGateway {
|
|
234
|
-
static async call(request, options = {}) {
|
|
235
|
-
return executeTestingRequest(request, options);
|
|
236
|
-
}
|
|
237
|
-
static async downloadArtifact(location, options = {}) {
|
|
238
|
-
const credentials = resolveTestingCredentials(options);
|
|
239
|
-
const url = resolveTestingArtifactUrl(location, credentials.domain);
|
|
240
|
-
return executeTestingRequest({
|
|
241
|
-
endpoint: `${url.pathname}${url.search}`,
|
|
242
|
-
maxResponseBytes: TESTING_MAX_ARTIFACT_BYTES,
|
|
243
|
-
method: 'GET',
|
|
244
|
-
responseType: 'buffer',
|
|
245
|
-
service: 'pace',
|
|
246
|
-
}, options);
|
|
247
|
-
}
|
|
248
|
-
static async resolveAndValidateDomain(pat, orgId, customDomain) {
|
|
249
|
-
return resolveAndValidateCrtDomain(pat, orgId, customDomain);
|
|
250
|
-
}
|
|
251
|
-
static async validateCredentials(options) {
|
|
252
|
-
await validateCrtCredentials(options);
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
export function resolveTestingArtifactUrl(location, configuredDomain) {
|
|
256
|
-
const value = location.trim();
|
|
257
|
-
if (value.length === 0)
|
|
258
|
-
throw new Error('CRT artifact URL is empty.');
|
|
259
|
-
if (value.startsWith('//'))
|
|
260
|
-
throw new Error('CRT artifact URL must be relative or use HTTPS.');
|
|
261
|
-
const expectedHost = `api.${normalizeCrtDomain(configuredDomain)}`;
|
|
262
|
-
const absolute = /^[a-z][a-z\d+.-]*:/iu.test(value);
|
|
263
|
-
if (!absolute) {
|
|
264
|
-
let decodedPath;
|
|
265
|
-
try {
|
|
266
|
-
decodedPath = decodeURIComponent(value.split(/[?#]/u, 1)[0] ?? '');
|
|
267
|
-
}
|
|
268
|
-
catch {
|
|
269
|
-
throw new Error('CRT artifact URL contains invalid path encoding.');
|
|
270
|
-
}
|
|
271
|
-
if (decodedPath.split('/').includes('..')) {
|
|
272
|
-
throw new Error('CRT artifact URL must not contain path traversal.');
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
const url = new URL(value, `https://${expectedHost}/`);
|
|
276
|
-
if (url.protocol !== 'https:' || url.hostname !== expectedHost || url.port.length > 0) {
|
|
277
|
-
throw new Error(`CRT artifact URL must use HTTPS on ${expectedHost}.`);
|
|
278
|
-
}
|
|
279
|
-
if (url.username.length > 0 || url.password.length > 0) {
|
|
280
|
-
throw new Error('CRT artifact URL must not contain credentials.');
|
|
281
|
-
}
|
|
282
|
-
if (absolute && !value.toLowerCase().startsWith('https://')) {
|
|
283
|
-
throw new Error('CRT artifact URL must be relative or use HTTPS.');
|
|
284
|
-
}
|
|
285
|
-
return url;
|
|
286
|
-
}
|
|
287
|
-
export function resolveTestingSessionUrl(location, configuredDomain) {
|
|
288
|
-
const expectedHost = `sessions.${normalizeCrtDomain(configuredDomain)}`;
|
|
289
|
-
const value = location.trim();
|
|
290
|
-
if (value.length === 0 || value.startsWith('//'))
|
|
291
|
-
throw new Error('CRT live session URL is invalid.');
|
|
292
|
-
const url = new URL(value, `${sessionsBaseUrl(configuredDomain)}/`);
|
|
293
|
-
if (url.protocol !== 'https:' ||
|
|
294
|
-
url.hostname !== expectedHost ||
|
|
295
|
-
url.port.length > 0 ||
|
|
296
|
-
url.username.length > 0 ||
|
|
297
|
-
url.password.length > 0) {
|
|
298
|
-
throw new Error(`CRT live session URL must use HTTPS on ${expectedHost}.`);
|
|
299
|
-
}
|
|
300
|
-
if (url.search.length > 0 || url.hash.length > 0) {
|
|
301
|
-
throw new Error('CRT live session URL must not contain query parameters or fragments.');
|
|
302
|
-
}
|
|
303
|
-
let decodedPath;
|
|
304
|
-
try {
|
|
305
|
-
decodedPath = decodeURIComponent(url.pathname);
|
|
306
|
-
}
|
|
307
|
-
catch {
|
|
308
|
-
throw new Error('CRT live session URL contains invalid path encoding.');
|
|
309
|
-
}
|
|
310
|
-
if (decodedPath.split('/').includes('..') || !/^\/live-testing\/\d+\/?$/u.test(decodedPath)) {
|
|
311
|
-
throw new Error('CRT live session URL has an unexpected path.');
|
|
312
|
-
}
|
|
313
|
-
url.pathname = decodedPath.replace(/\/$/u, '');
|
|
314
|
-
return url;
|
|
315
|
-
}
|
|
316
|
-
export function resolveTestingSessionWebSocketUrl(sessionPath, configuredDomain) {
|
|
317
|
-
const session = resolveTestingSessionUrl(sessionPath, configuredDomain);
|
|
318
|
-
const url = new URL(session);
|
|
319
|
-
url.protocol = 'wss:';
|
|
320
|
-
url.pathname = `${url.pathname}/client/websocket`;
|
|
321
|
-
return url;
|
|
322
|
-
}
|
|
323
|
-
export async function validateCrtCredentials(options) {
|
|
324
|
-
const domain = normalizeCrtDomain(options.domain);
|
|
325
|
-
await executeTestingRequest({
|
|
326
|
-
endpoint: testingProjectsEndpoint(options.orgId),
|
|
327
|
-
method: 'GET',
|
|
328
|
-
service: 'platform',
|
|
329
|
-
}, {
|
|
330
|
-
domain,
|
|
331
|
-
org: options.orgId,
|
|
332
|
-
pat: options.pat,
|
|
333
|
-
});
|
|
334
|
-
}
|
|
335
|
-
export async function discoverCrtDomain(pat, orgId) {
|
|
336
|
-
for (const domain of CRT_DISCOVERY_DOMAINS) {
|
|
337
|
-
try {
|
|
338
|
-
// Sequential probing is intentional: stop at the first domain that validates.
|
|
339
|
-
// eslint-disable-next-line no-await-in-loop
|
|
340
|
-
await validateCrtCredentials({ domain, orgId, pat });
|
|
341
|
-
return domain;
|
|
342
|
-
}
|
|
343
|
-
catch {
|
|
344
|
-
continue;
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
throw new Error('CRT credentials could not be validated. Specify a custom domain.');
|
|
348
|
-
}
|
|
349
|
-
export async function resolveAndValidateCrtDomain(pat, orgId, customDomain) {
|
|
350
|
-
if (customDomain !== undefined) {
|
|
351
|
-
const domain = normalizeCrtDomain(customDomain);
|
|
352
|
-
await validateCrtCredentials({ domain, orgId, pat });
|
|
353
|
-
return domain;
|
|
354
|
-
}
|
|
355
|
-
return discoverCrtDomain(pat, orgId);
|
|
356
|
-
}
|
|
357
|
-
export function setTestingHttpRequestForTests(requestFn) {
|
|
358
|
-
httpRequestFn = requestFn;
|
|
359
|
-
}
|
|
360
|
-
export function resetTestingHttpRequestForTests() {
|
|
361
|
-
httpRequestFn = defaultHttpsRequest;
|
|
362
|
-
}
|
|
363
|
-
//# sourceMappingURL=testing-gateway.js.map
|
|
1
|
+
import {modules} from './runtime.js';
|
|
2
|
+
const TESTING_DEFAULT_TIMEOUT_MS = modules["testing-gateway.js"]["TESTING_DEFAULT_TIMEOUT_MS"]
|
|
3
|
+
const TESTING_MAX_ARTIFACT_BYTES = modules["testing-gateway.js"]["TESTING_MAX_ARTIFACT_BYTES"]
|
|
4
|
+
const TESTING_MAX_RESPONSE_BYTES = modules["testing-gateway.js"]["TESTING_MAX_RESPONSE_BYTES"]
|
|
5
|
+
const TestingGateway = modules["testing-gateway.js"]["TestingGateway"]
|
|
6
|
+
const TestingGatewayError = modules["testing-gateway.js"]["TestingGatewayError"]
|
|
7
|
+
const discoverCrtDomain = modules["testing-gateway.js"]["discoverCrtDomain"]
|
|
8
|
+
const resetTestingHttpRequestForTests = modules["testing-gateway.js"]["resetTestingHttpRequestForTests"]
|
|
9
|
+
const resolveAndValidateCrtDomain = modules["testing-gateway.js"]["resolveAndValidateCrtDomain"]
|
|
10
|
+
const resolveTestingArtifactUrl = modules["testing-gateway.js"]["resolveTestingArtifactUrl"]
|
|
11
|
+
const resolveTestingSessionUrl = modules["testing-gateway.js"]["resolveTestingSessionUrl"]
|
|
12
|
+
const resolveTestingSessionWebSocketUrl = modules["testing-gateway.js"]["resolveTestingSessionWebSocketUrl"]
|
|
13
|
+
const setTestingHttpRequestForTests = modules["testing-gateway.js"]["setTestingHttpRequestForTests"]
|
|
14
|
+
const validateCrtCredentials = modules["testing-gateway.js"]["validateCrtCredentials"]
|
|
15
|
+
export {TESTING_DEFAULT_TIMEOUT_MS, TESTING_MAX_ARTIFACT_BYTES, TESTING_MAX_RESPONSE_BYTES, TestingGateway, TestingGatewayError, discoverCrtDomain, resetTestingHttpRequestForTests, resolveAndValidateCrtDomain, resolveTestingArtifactUrl, resolveTestingSessionUrl, resolveTestingSessionWebSocketUrl, setTestingHttpRequestForTests, validateCrtCredentials};
|
|
@@ -1,56 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}),
|
|
8
|
-
'session-id': Flags.integer({
|
|
9
|
-
description: 'Guard that must match the locally active CRT live session.',
|
|
10
|
-
min: 1,
|
|
11
|
-
}),
|
|
12
|
-
};
|
|
13
|
-
export const testingLiveRecorderOptionFlags = {
|
|
14
|
-
enable: Flags.boolean({ allowNo: true, description: 'Enable or disable interaction recording.' }),
|
|
15
|
-
'healing-context': Flags.boolean({ allowNo: true, description: 'Capture recorder healing context.' }),
|
|
16
|
-
'hover-text': Flags.boolean({ allowNo: true, description: 'Capture HoverText interactions.' }),
|
|
17
|
-
'scroll-text': Flags.boolean({ allowNo: true, description: 'Capture ScrollText interactions.' }),
|
|
18
|
-
'system-state': Flags.boolean({ allowNo: true, description: 'Capture console/network system state.' }),
|
|
19
|
-
'table-keywords': Flags.boolean({ allowNo: true, description: 'Prefer table-aware interaction keywords.' }),
|
|
20
|
-
'verify-text': Flags.boolean({ allowNo: true, description: 'Capture VerifyText interactions.' }),
|
|
21
|
-
};
|
|
22
|
-
export function testingLiveRecorderOptions(flags) {
|
|
23
|
-
return {
|
|
24
|
-
enabled: flags.enable ?? false,
|
|
25
|
-
enableHealingContext: flags['healing-context'] ?? false,
|
|
26
|
-
enableHoverText: flags['hover-text'] ?? false,
|
|
27
|
-
enableScrollText: flags['scroll-text'] ?? false,
|
|
28
|
-
enableSystemState: flags['system-state'] ?? false,
|
|
29
|
-
enableVerifyText: flags['verify-text'] ?? false,
|
|
30
|
-
preferTableKeywords: flags['table-keywords'] ?? false,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
export function parseTestingLiveScreen(screen, viewport) {
|
|
34
|
-
if (screen !== undefined && viewport !== undefined)
|
|
35
|
-
throw new Error('Use either --screen or --viewport, not both.');
|
|
36
|
-
const spec = screen ?? (viewport === undefined ? undefined : `${viewport}x24`);
|
|
37
|
-
if (spec === undefined)
|
|
38
|
-
return undefined;
|
|
39
|
-
const match = /^(\d+)x(\d+)x(\d+)$/u.exec(spec.trim());
|
|
40
|
-
if (match === null)
|
|
41
|
-
throw new Error('CRT live screen must use WIDTHxHEIGHTxDEPTH.');
|
|
42
|
-
const [width, height, depth] = match.slice(1).map(Number);
|
|
43
|
-
if (width === undefined ||
|
|
44
|
-
height === undefined ||
|
|
45
|
-
depth === undefined ||
|
|
46
|
-
width < 320 ||
|
|
47
|
-
width > 7680 ||
|
|
48
|
-
height < 240 ||
|
|
49
|
-
height > 4320 ||
|
|
50
|
-
depth < 8 ||
|
|
51
|
-
depth > 32) {
|
|
52
|
-
throw new Error('CRT live screen dimensions are outside supported safety limits.');
|
|
53
|
-
}
|
|
54
|
-
return { depth, height, width };
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=testing-live-command.js.map
|
|
1
|
+
import {modules} from './runtime.js';
|
|
2
|
+
const parseTestingLiveScreen = modules["testing-live-command.js"]["parseTestingLiveScreen"]
|
|
3
|
+
const testingLiveCommonFlags = modules["testing-live-command.js"]["testingLiveCommonFlags"]
|
|
4
|
+
const testingLiveRecorderOptionFlags = modules["testing-live-command.js"]["testingLiveRecorderOptionFlags"]
|
|
5
|
+
const testingLiveRecorderOptions = modules["testing-live-command.js"]["testingLiveRecorderOptions"]
|
|
6
|
+
export {parseTestingLiveScreen, testingLiveCommonFlags, testingLiveRecorderOptionFlags, testingLiveRecorderOptions};
|
|
@@ -1,34 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
interrupt: '/api/interrupt',
|
|
8
|
-
keyword: '/api/keyword',
|
|
9
|
-
setOptions: '/api/setoptions',
|
|
10
|
-
start: '/api/start',
|
|
11
|
-
status: '/api/status',
|
|
12
|
-
stop: '/api/stop',
|
|
13
|
-
systemState: '/api/system-state',
|
|
14
|
-
};
|
|
15
|
-
export function testingLiveSessionPath(sessionId) {
|
|
16
|
-
return `/live-testing/${positiveId(sessionId, 'session')}`;
|
|
17
|
-
}
|
|
18
|
-
export function validateTestingLiveSessionPath(value, sessionId) {
|
|
19
|
-
const trimmed = value.trim();
|
|
20
|
-
if (!/^\/live-testing\/\d+\/?$/u.test(trimmed)) {
|
|
21
|
-
throw new Error('CRT live session path has an unexpected format.');
|
|
22
|
-
}
|
|
23
|
-
const normalized = trimmed.replace(/\/$/u, '');
|
|
24
|
-
if (sessionId !== undefined && normalized !== testingLiveSessionPath(sessionId)) {
|
|
25
|
-
throw new Error('CRT live session path does not match the returned session ID.');
|
|
26
|
-
}
|
|
27
|
-
return normalized;
|
|
28
|
-
}
|
|
29
|
-
function positiveId(value, label) {
|
|
30
|
-
if (!Number.isSafeInteger(value) || value <= 0)
|
|
31
|
-
throw new Error(`CRT ${label} ID must be a positive integer.`);
|
|
32
|
-
return value;
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=testing-live-endpoints.js.map
|
|
1
|
+
import {modules} from './runtime.js';
|
|
2
|
+
const TESTING_LIVE_API_ENDPOINTS = modules["testing-live-endpoints.js"]["TESTING_LIVE_API_ENDPOINTS"]
|
|
3
|
+
const testingLiveJobSessionEndpoint = modules["testing-live-endpoints.js"]["testingLiveJobSessionEndpoint"]
|
|
4
|
+
const testingLiveSessionPath = modules["testing-live-endpoints.js"]["testingLiveSessionPath"]
|
|
5
|
+
const validateTestingLiveSessionPath = modules["testing-live-endpoints.js"]["validateTestingLiveSessionPath"]
|
|
6
|
+
export {TESTING_LIVE_API_ENDPOINTS, testingLiveJobSessionEndpoint, testingLiveSessionPath, validateTestingLiveSessionPath};
|
|
@@ -1,96 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export
|
|
8
|
-
export const TESTING_LIVE_HISTORY_MAX_READ_BYTES = 4 * 1024 * 1024;
|
|
9
|
-
export const TESTING_LIVE_HISTORY_MAX_LIMIT = 500;
|
|
10
|
-
export function appendTestingLiveHistory(record) {
|
|
11
|
-
const clean = sanitizeRecord(record);
|
|
12
|
-
const path = historyPath(clean.projectId, clean.jobId);
|
|
13
|
-
mkdirSync(dirname(path), { mode: 0o700, recursive: true });
|
|
14
|
-
const line = `${JSON.stringify(clean)}\n`;
|
|
15
|
-
if (Buffer.byteLength(line) > TESTING_LIVE_HISTORY_MAX_LINE_BYTES) {
|
|
16
|
-
throw new Error('CRT live history record exceeds the safety limit.');
|
|
17
|
-
}
|
|
18
|
-
const descriptor = openSync(path, 'a', 0o600);
|
|
19
|
-
try {
|
|
20
|
-
writeSync(descriptor, line, undefined, 'utf8');
|
|
21
|
-
}
|
|
22
|
-
finally {
|
|
23
|
-
closeSync(descriptor);
|
|
24
|
-
}
|
|
25
|
-
chmodSync(path, 0o600);
|
|
26
|
-
}
|
|
27
|
-
export function readTestingLiveHistory(options) {
|
|
28
|
-
const path = historyPath(options.projectId, options.jobId);
|
|
29
|
-
const limit = Math.min(Math.max(options.limit ?? 10, 1), TESTING_LIVE_HISTORY_MAX_LIMIT);
|
|
30
|
-
let contents;
|
|
31
|
-
try {
|
|
32
|
-
contents = readFileSync(path, 'utf8');
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
if (error.code === 'ENOENT')
|
|
36
|
-
return [];
|
|
37
|
-
throw error;
|
|
38
|
-
}
|
|
39
|
-
const tail = Buffer.from(contents).subarray(-TESTING_LIVE_HISTORY_MAX_READ_BYTES).toString('utf8');
|
|
40
|
-
const firstNewline = tail.indexOf('\n');
|
|
41
|
-
const bounded = Buffer.byteLength(contents) > TESTING_LIVE_HISTORY_MAX_READ_BYTES && firstNewline !== -1
|
|
42
|
-
? tail.slice(firstNewline + 1)
|
|
43
|
-
: tail;
|
|
44
|
-
return bounded
|
|
45
|
-
.split('\n')
|
|
46
|
-
.filter(Boolean)
|
|
47
|
-
.map((line) => parseRecord(line))
|
|
48
|
-
.filter((record) => record !== undefined)
|
|
49
|
-
.filter((record) => options.status === undefined || record.status === options.status)
|
|
50
|
-
.slice(-limit)
|
|
51
|
-
.reverse();
|
|
52
|
-
}
|
|
53
|
-
function historyPath(projectId, jobId) {
|
|
54
|
-
return join(dirname(getDefaultsStorePaths().globalPath), 'testing-live', safeId(projectId, 'project'), `${safeId(jobId, 'job')}.jsonl`);
|
|
55
|
-
}
|
|
56
|
-
function safeId(value, label) {
|
|
57
|
-
if (!Number.isSafeInteger(value) || value <= 0)
|
|
58
|
-
throw new Error(`CRT ${label} ID must be a positive integer.`);
|
|
59
|
-
return value.toString();
|
|
60
|
-
}
|
|
61
|
-
function sanitizeRecord(value) {
|
|
62
|
-
const lines = summarizeTestingLiveKeywordLines(value.lines)
|
|
63
|
-
.slice(0, 500)
|
|
64
|
-
.map((line) => sanitizeTestingOutput(line.replaceAll('\0', '')).slice(0, 16 * 1024));
|
|
65
|
-
return {
|
|
66
|
-
...(value.completedAt === undefined ? {} : { completedAt: safeTimestamp(value.completedAt) }),
|
|
67
|
-
id: /^[\w-]{1,128}$/u.test(value.id) ? value.id : randomUUID(),
|
|
68
|
-
jobId: Number(safeId(value.jobId, 'job')),
|
|
69
|
-
lines,
|
|
70
|
-
projectId: Number(safeId(value.projectId, 'project')),
|
|
71
|
-
startedAt: safeTimestamp(value.startedAt),
|
|
72
|
-
status: value.status,
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
function parseRecord(line) {
|
|
76
|
-
if (Buffer.byteLength(line) > TESTING_LIVE_HISTORY_MAX_LINE_BYTES)
|
|
77
|
-
return undefined;
|
|
78
|
-
try {
|
|
79
|
-
const value = JSON.parse(line);
|
|
80
|
-
if (!isRecord(value) || !Array.isArray(value.lines))
|
|
81
|
-
return undefined;
|
|
82
|
-
if (!['completed', 'failed', 'recorded'].includes(String(value.status)))
|
|
83
|
-
return undefined;
|
|
84
|
-
return sanitizeRecord(value);
|
|
85
|
-
}
|
|
86
|
-
catch {
|
|
87
|
-
return undefined;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
function safeTimestamp(value) {
|
|
91
|
-
return Number.isNaN(Date.parse(value)) ? new Date().toISOString() : value;
|
|
92
|
-
}
|
|
93
|
-
function isRecord(value) {
|
|
94
|
-
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
95
|
-
}
|
|
96
|
-
//# sourceMappingURL=testing-live-history.js.map
|
|
1
|
+
import {modules} from './runtime.js';
|
|
2
|
+
const TESTING_LIVE_HISTORY_MAX_LIMIT = modules["testing-live-history.js"]["TESTING_LIVE_HISTORY_MAX_LIMIT"]
|
|
3
|
+
const TESTING_LIVE_HISTORY_MAX_LINE_BYTES = modules["testing-live-history.js"]["TESTING_LIVE_HISTORY_MAX_LINE_BYTES"]
|
|
4
|
+
const TESTING_LIVE_HISTORY_MAX_READ_BYTES = modules["testing-live-history.js"]["TESTING_LIVE_HISTORY_MAX_READ_BYTES"]
|
|
5
|
+
const appendTestingLiveHistory = modules["testing-live-history.js"]["appendTestingLiveHistory"]
|
|
6
|
+
const readTestingLiveHistory = modules["testing-live-history.js"]["readTestingLiveHistory"]
|
|
7
|
+
export {TESTING_LIVE_HISTORY_MAX_LIMIT, TESTING_LIVE_HISTORY_MAX_LINE_BYTES, TESTING_LIVE_HISTORY_MAX_READ_BYTES, appendTestingLiveHistory, readTestingLiveHistory};
|