@copado/agentia-cli 1.3.0 → 1.4.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.
Files changed (62) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +436 -427
  3. package/dist/commands/cicd/cloud/commit.js +4 -3
  4. package/dist/commands/cicd/cloud/promote.js +40 -18
  5. package/dist/commands/cicd/credential/list.js +2 -1
  6. package/dist/commands/cicd/environment/list.js +2 -1
  7. package/dist/commands/cicd/extension-configuration/list.js +2 -1
  8. package/dist/commands/cicd/function/list.js +10 -13
  9. package/dist/commands/cicd/job/list.js +2 -1
  10. package/dist/commands/cicd/job/result-file/get.js +11 -6
  11. package/dist/commands/cicd/pipeline/automation/list.js +2 -1
  12. package/dist/commands/cicd/pipeline/list.js +2 -1
  13. package/dist/commands/cicd/pipeline/quality-gate/list.js +2 -1
  14. package/dist/commands/cicd/project/list.js +2 -1
  15. package/dist/commands/cicd/promotion/list.js +2 -1
  16. package/dist/commands/cicd/promotion/status.js +29 -0
  17. package/dist/commands/cicd/repository/list.js +5 -8
  18. package/dist/commands/cicd/stage/list.js +2 -1
  19. package/dist/commands/cicd/template/list.js +9 -12
  20. package/dist/commands/cicd/work/delete.js +2 -2
  21. package/dist/commands/cicd/work/environment-sync.js +138 -62
  22. package/dist/commands/cicd/work/get.js +2 -2
  23. package/dist/commands/cicd/work/list.js +2 -1
  24. package/dist/commands/cicd/work/test/apex.js +18 -33
  25. package/dist/commands/cicd/work/test.js +114 -9
  26. package/dist/commands/cicd/work/update.js +2 -2
  27. package/dist/lib/defaults-store.js +3 -1
  28. package/dist/lib/function-list.js +3 -0
  29. package/dist/lib/git-worktree.js +4 -1
  30. package/dist/lib/job-get.js +2 -1
  31. package/dist/lib/job-types.js +2 -1
  32. package/dist/lib/list-pagination.js +6 -1
  33. package/dist/lib/local-quality-gates.js +4 -1
  34. package/dist/lib/mcp/testing-browser-tools.js +1 -16
  35. package/dist/lib/mcp/tool-annotations.js +0 -1
  36. package/dist/lib/mcp/tools.js +30 -25
  37. package/dist/lib/mcp/work-tools.js +100 -47
  38. package/dist/lib/promotion-run.js +3 -1
  39. package/dist/lib/promotion-status.js +12 -0
  40. package/dist/lib/quality-gates.js +13 -0
  41. package/dist/lib/repository-list.js +3 -0
  42. package/dist/lib/runtime.js +1 -1
  43. package/dist/lib/stock-quality-gates.js +2 -1
  44. package/dist/lib/template-list.js +3 -0
  45. package/dist/lib/testing-browser-operations.js +1 -2
  46. package/dist/lib/testing-browser-session.js +1 -2
  47. package/dist/lib/work-apex-test-failures.js +2 -1
  48. package/dist/lib/work-environment-sync-ready.js +7 -1
  49. package/dist/lib/work-environment-sync.js +8 -1
  50. package/dist/lib/work-local-run-tests.js +2 -1
  51. package/dist/lib/work-promote-deploy.js +3 -1
  52. package/dist/lib/work-types.js +3 -1
  53. package/oclif.manifest.json +477 -419
  54. package/package.json +1 -1
  55. package/templates/skills/agentia-cicd/SKILL.md +4 -3
  56. package/templates/skills/agentia-cicd/references/jobs.md +3 -2
  57. package/templates/skills/agentia-cicd/references/promotions.md +16 -4
  58. package/templates/skills/agentia-cicd/references/work.md +25 -11
  59. package/templates/skills/agentia-testing/references/browser-testing.md +0 -1
  60. package/templates/skills/agentia-testing/references/tests.md +1 -1
  61. package/vendor/java/var-replace-command.jar +0 -0
  62. package/dist/commands/testing/browser/reports.js +0 -33
@@ -2447,11 +2447,11 @@
2447
2447
  "required": false
2448
2448
  }
2449
2449
  },
2450
- "description": "Create a Copado cloud metadata commit for a user story.\nPreflights the story, submits POST /release/commit, and polls the job monitor by default.\nFor local Git work, use git add/commit then `cicd work publish`. Permission and full-metadata selections belong on `cicd work publish`.\n\nNOTE: Do not use this command along with local development (git operations, cicd work push/submit).",
2450
+ "description": "Create a Copado cloud metadata commit for a user story.\nPreflights the story, submits POST /release/commit, and polls the job monitor by default.\nSimple --metadata-* flags commit exactly one component. Use --file or --stdin with a changes[] array for multiple components.\nFor local Git work, use git add/commit then `cicd work publish`. Permission and full-metadata selections belong on `cicd work publish`.\n\nNOTE: Do not use this command along with local development (git operations, cicd work push/submit).",
2451
2451
  "examples": [
2452
2452
  "<%= config.bin %> <%= command.id %> --message \"Commit AccountService\" --metadata-name AccountService --metadata-type ApexClass --metadata-category SFDX --action Add",
2453
2453
  "<%= config.bin %> <%= command.id %> a07XXXXXXXXXXXXXXX --message \"Update Aura files\" --metadata-name accountEditor --metadata-type AuraDefinitionBundle --metadata-category SFDX --action SelectiveCommit --selection accountEditor/accountEditor.cmp --selection accountEditor/accountEditorController.js",
2454
- "<%= config.bin %> <%= command.id %> --file commit-request.json # {\"message\":\"Commit AccountService\",\"changes\":[{\"a\":\"Add\",\"c\":\"SFDX\",\"n\":\"AccountService\",\"t\":\"ApexClass\"}]}",
2454
+ "<%= config.bin %> <%= command.id %> --file commit-request.json # {\"message\":\"Commit metadata\",\"changes\":[{\"a\":\"Add\",\"c\":\"SFDX\",\"n\":\"AccountService\",\"t\":\"ApexClass\"},{\"a\":\"Add\",\"c\":\"SFDX\",\"n\":\"AccountTrigger\",\"t\":\"ApexTrigger\"}]}",
2455
2455
  "cat commit-request.json | <%= config.bin %> <%= command.id %> --stdin --json"
2456
2456
  ],
2457
2457
  "flags": {
@@ -2513,7 +2513,7 @@
2513
2513
  },
2514
2514
  "file": {
2515
2515
  "char": "f",
2516
- "description": "Path to a JSON commit request body.",
2516
+ "description": "Path to a JSON commit request with message and changes[] (one object per metadata component).",
2517
2517
  "name": "file",
2518
2518
  "hasDynamicHelp": false,
2519
2519
  "multiple": false,
@@ -2576,7 +2576,7 @@
2576
2576
  "type": "option"
2577
2577
  },
2578
2578
  "stdin": {
2579
- "description": "Read a JSON commit request body from stdin.",
2579
+ "description": "Read a JSON commit request with message and changes[] from stdin.",
2580
2580
  "name": "stdin",
2581
2581
  "allowNo": false,
2582
2582
  "type": "boolean"
@@ -2673,7 +2673,7 @@
2673
2673
  "type": "option"
2674
2674
  },
2675
2675
  "promotion-id": {
2676
- "description": "Explicit 18-character Promotion ID when the User Story belongs to multiple promotions.",
2676
+ "description": "Explicit 18-character Promotion ID when the User Story belongs to multiple promotions. Used as is; never creates a promotion.",
2677
2677
  "name": "promotion-id",
2678
2678
  "hasDynamicHelp": false,
2679
2679
  "multiple": false,
@@ -6777,19 +6777,19 @@
6777
6777
  "run.js"
6778
6778
  ]
6779
6779
  },
6780
- "cicd:repository:create": {
6780
+ "cicd:promotion:status": {
6781
6781
  "aliases": [],
6782
6782
  "args": {
6783
- "name": {
6784
- "description": "Name of the Copado Git repository to create",
6785
- "name": "name",
6783
+ "id": {
6784
+ "description": "Copado promotion ID",
6785
+ "name": "id",
6786
6786
  "required": true
6787
6787
  }
6788
6788
  },
6789
- "description": "Create a Copado Git repository shell",
6789
+ "description": "Show actionable status for a Copado promotion: user stories, current job step, queue summary, and whether a Manual Task or queue item needs attention.",
6790
6790
  "examples": [
6791
- "<%= config.bin %> <%= command.id %> my-repo --source-format DX --provider Github",
6792
- "<%= config.bin %> <%= command.id %> my-repo --source-format DX --provider GitLab --json"
6791
+ "<%= config.bin %> <%= command.id %> <promotion-id>",
6792
+ "<%= config.bin %> <%= command.id %> <promotion-id> --json"
6793
6793
  ],
6794
6794
  "flags": {
6795
6795
  "json": {
@@ -6806,52 +6806,74 @@
6806
6806
  "hasDynamicHelp": false,
6807
6807
  "multiple": false,
6808
6808
  "type": "option"
6809
- },
6810
- "allow-functions-git-cache": {
6811
- "description": "Allow Functions Git cache for this repository",
6812
- "name": "allow-functions-git-cache",
6813
- "allowNo": true,
6809
+ }
6810
+ },
6811
+ "hasDynamicHelp": false,
6812
+ "hiddenAliases": [],
6813
+ "id": "cicd:promotion:status",
6814
+ "pluginAlias": "@copado/agentia-cli",
6815
+ "pluginName": "@copado/agentia-cli",
6816
+ "pluginType": "core",
6817
+ "strict": true,
6818
+ "enableJsonFlag": true,
6819
+ "experimental": false,
6820
+ "isESM": true,
6821
+ "relativePath": [
6822
+ "dist",
6823
+ "commands",
6824
+ "cicd",
6825
+ "promotion",
6826
+ "status.js"
6827
+ ]
6828
+ },
6829
+ "cicd:stage:create": {
6830
+ "aliases": [],
6831
+ "args": {
6832
+ "name": {
6833
+ "description": "Stage name",
6834
+ "name": "name",
6835
+ "required": true
6836
+ }
6837
+ },
6838
+ "description": "Create a Copado stage",
6839
+ "examples": [
6840
+ "<%= config.bin %> <%= command.id %> Build",
6841
+ "<%= config.bin %> <%= command.id %> Test --meta-stage Test"
6842
+ ],
6843
+ "flags": {
6844
+ "json": {
6845
+ "description": "Format output as json.",
6846
+ "helpGroup": "GLOBAL",
6847
+ "name": "json",
6848
+ "allowNo": false,
6814
6849
  "type": "boolean"
6815
6850
  },
6816
- "copado-tunnel-enabled": {
6817
- "description": "Enable Copado tunnel for this repository",
6818
- "name": "copado-tunnel-enabled",
6819
- "allowNo": true,
6820
- "type": "boolean"
6851
+ "cicd-connection": {
6852
+ "description": "Named CICD connection for this invocation only (see agentia auth set --connection). Does not change stored default auth.",
6853
+ "name": "cicd-connection",
6854
+ "required": false,
6855
+ "hasDynamicHelp": false,
6856
+ "multiple": false,
6857
+ "type": "option"
6821
6858
  },
6822
- "provider": {
6823
- "description": "Git repository provider",
6824
- "name": "provider",
6825
- "required": true,
6859
+ "meta-stage": {
6860
+ "description": "Meta stage (common values: Build, Test, Production; custom values are allowed)",
6861
+ "name": "meta-stage",
6826
6862
  "hasDynamicHelp": false,
6827
6863
  "multiple": false,
6828
- "options": [
6829
- "Github",
6830
- "Bitbucket",
6831
- "GitLab",
6832
- "Azure",
6833
- "Microsoft Team Service",
6834
- "Copado Version Control",
6835
- "Others"
6836
- ],
6837
6864
  "type": "option"
6838
6865
  },
6839
- "source-format": {
6840
- "description": "Git repository source format (default: DX)",
6841
- "name": "source-format",
6842
- "default": "DX",
6866
+ "name": {
6867
+ "description": "Stage name",
6868
+ "name": "name",
6843
6869
  "hasDynamicHelp": false,
6844
6870
  "multiple": false,
6845
- "options": [
6846
- "Metadata",
6847
- "DX"
6848
- ],
6849
6871
  "type": "option"
6850
6872
  }
6851
6873
  },
6852
6874
  "hasDynamicHelp": false,
6853
6875
  "hiddenAliases": [],
6854
- "id": "cicd:repository:create",
6876
+ "id": "cicd:stage:create",
6855
6877
  "pluginAlias": "@copado/agentia-cli",
6856
6878
  "pluginName": "@copado/agentia-cli",
6857
6879
  "pluginType": "core",
@@ -6863,23 +6885,23 @@
6863
6885
  "dist",
6864
6886
  "commands",
6865
6887
  "cicd",
6866
- "repository",
6888
+ "stage",
6867
6889
  "create.js"
6868
6890
  ]
6869
6891
  },
6870
- "cicd:repository:delete": {
6892
+ "cicd:stage:delete": {
6871
6893
  "aliases": [],
6872
6894
  "args": {
6873
6895
  "id": {
6874
- "description": "Copado Git repository ID",
6896
+ "description": "Stage ID",
6875
6897
  "name": "id",
6876
6898
  "required": true
6877
6899
  }
6878
6900
  },
6879
- "description": "Delete a Copado Git repository by ID",
6901
+ "description": "Delete a Copado stage",
6880
6902
  "examples": [
6881
- "<%= config.bin %> <%= command.id %> repo-001",
6882
- "<%= config.bin %> <%= command.id %> repo-001 --json"
6903
+ "<%= config.bin %> <%= command.id %> <stage-id>",
6904
+ "<%= config.bin %> <%= command.id %> <stage-id> --yes --json"
6883
6905
  ],
6884
6906
  "flags": {
6885
6907
  "json": {
@@ -6896,11 +6918,18 @@
6896
6918
  "hasDynamicHelp": false,
6897
6919
  "multiple": false,
6898
6920
  "type": "option"
6921
+ },
6922
+ "yes": {
6923
+ "char": "y",
6924
+ "description": "Confirm deletion without prompting",
6925
+ "name": "yes",
6926
+ "allowNo": false,
6927
+ "type": "boolean"
6899
6928
  }
6900
6929
  },
6901
6930
  "hasDynamicHelp": false,
6902
6931
  "hiddenAliases": [],
6903
- "id": "cicd:repository:delete",
6932
+ "id": "cicd:stage:delete",
6904
6933
  "pluginAlias": "@copado/agentia-cli",
6905
6934
  "pluginName": "@copado/agentia-cli",
6906
6935
  "pluginType": "core",
@@ -6912,23 +6941,23 @@
6912
6941
  "dist",
6913
6942
  "commands",
6914
6943
  "cicd",
6915
- "repository",
6944
+ "stage",
6916
6945
  "delete.js"
6917
6946
  ]
6918
6947
  },
6919
- "cicd:repository:get": {
6948
+ "cicd:stage:get": {
6920
6949
  "aliases": [],
6921
6950
  "args": {
6922
6951
  "id": {
6923
- "description": "Copado Git repository ID",
6952
+ "description": "Stage ID",
6924
6953
  "name": "id",
6925
6954
  "required": true
6926
6955
  }
6927
6956
  },
6928
- "description": "Get a Copado Git repository by ID",
6957
+ "description": "Get a Copado stage",
6929
6958
  "examples": [
6930
- "<%= config.bin %> <%= command.id %> repo-001",
6931
- "<%= config.bin %> <%= command.id %> repo-001 --json"
6959
+ "<%= config.bin %> <%= command.id %> <stage-id>",
6960
+ "<%= config.bin %> <%= command.id %> <stage-id> --json"
6932
6961
  ],
6933
6962
  "flags": {
6934
6963
  "json": {
@@ -6949,7 +6978,7 @@
6949
6978
  },
6950
6979
  "hasDynamicHelp": false,
6951
6980
  "hiddenAliases": [],
6952
- "id": "cicd:repository:get",
6981
+ "id": "cicd:stage:get",
6953
6982
  "pluginAlias": "@copado/agentia-cli",
6954
6983
  "pluginName": "@copado/agentia-cli",
6955
6984
  "pluginType": "core",
@@ -6961,20 +6990,17 @@
6961
6990
  "dist",
6962
6991
  "commands",
6963
6992
  "cicd",
6964
- "repository",
6993
+ "stage",
6965
6994
  "get.js"
6966
6995
  ]
6967
6996
  },
6968
- "cicd:repository:list": {
6997
+ "cicd:stage:list": {
6969
6998
  "aliases": [],
6970
6999
  "args": {},
6971
- "description": "List Copado Git repositories",
7000
+ "description": "List Copado stages",
6972
7001
  "examples": [
6973
7002
  "<%= config.bin %> <%= command.id %>",
6974
- "<%= config.bin %> <%= command.id %> --page-size 50",
6975
- "<%= config.bin %> <%= command.id %> --cursor NEXT --json",
6976
- "<%= config.bin %> <%= command.id %> --name copado-demo --provider Github",
6977
- "<%= config.bin %> <%= command.id %> --source-format DX --json"
7003
+ "<%= config.bin %> <%= command.id %> --json"
6978
7004
  ],
6979
7005
  "flags": {
6980
7006
  "json": {
@@ -7005,45 +7031,11 @@
7005
7031
  "hasDynamicHelp": false,
7006
7032
  "multiple": false,
7007
7033
  "type": "option"
7008
- },
7009
- "name": {
7010
- "description": "Filter by name",
7011
- "name": "name",
7012
- "hasDynamicHelp": false,
7013
- "multiple": false,
7014
- "type": "option"
7015
- },
7016
- "provider": {
7017
- "description": "Filter by Git repository provider",
7018
- "name": "provider",
7019
- "hasDynamicHelp": false,
7020
- "multiple": false,
7021
- "options": [
7022
- "Github",
7023
- "Bitbucket",
7024
- "GitLab",
7025
- "Azure",
7026
- "Microsoft Team Service",
7027
- "Copado Version Control",
7028
- "Others"
7029
- ],
7030
- "type": "option"
7031
- },
7032
- "source-format": {
7033
- "description": "Filter by Git repository source format",
7034
- "name": "source-format",
7035
- "hasDynamicHelp": false,
7036
- "multiple": false,
7037
- "options": [
7038
- "Metadata",
7039
- "DX"
7040
- ],
7041
- "type": "option"
7042
7034
  }
7043
7035
  },
7044
7036
  "hasDynamicHelp": false,
7045
7037
  "hiddenAliases": [],
7046
- "id": "cicd:repository:list",
7038
+ "id": "cicd:stage:list",
7047
7039
  "pluginAlias": "@copado/agentia-cli",
7048
7040
  "pluginName": "@copado/agentia-cli",
7049
7041
  "pluginType": "core",
@@ -7055,23 +7047,23 @@
7055
7047
  "dist",
7056
7048
  "commands",
7057
7049
  "cicd",
7058
- "repository",
7050
+ "stage",
7059
7051
  "list.js"
7060
7052
  ]
7061
7053
  },
7062
- "cicd:repository:open": {
7054
+ "cicd:stage:open": {
7063
7055
  "aliases": [],
7064
7056
  "args": {
7065
7057
  "id": {
7066
- "description": "Copado Git repository ID",
7058
+ "description": "Stage ID",
7067
7059
  "name": "id",
7068
7060
  "required": true
7069
7061
  }
7070
7062
  },
7071
- "description": "Open a Copado Git repository in the browser",
7063
+ "description": "Open a Copado stage in the browser",
7072
7064
  "examples": [
7073
- "<%= config.bin %> <%= command.id %> <repository-id>",
7074
- "<%= config.bin %> <%= command.id %> <repository-id> --json"
7065
+ "<%= config.bin %> <%= command.id %> <stage-id>",
7066
+ "<%= config.bin %> <%= command.id %> <stage-id> --json"
7075
7067
  ],
7076
7068
  "flags": {
7077
7069
  "json": {
@@ -7092,7 +7084,7 @@
7092
7084
  },
7093
7085
  "hasDynamicHelp": false,
7094
7086
  "hiddenAliases": [],
7095
- "id": "cicd:repository:open",
7087
+ "id": "cicd:stage:open",
7096
7088
  "pluginAlias": "@copado/agentia-cli",
7097
7089
  "pluginName": "@copado/agentia-cli",
7098
7090
  "pluginType": "core",
@@ -7104,23 +7096,23 @@
7104
7096
  "dist",
7105
7097
  "commands",
7106
7098
  "cicd",
7107
- "repository",
7099
+ "stage",
7108
7100
  "open.js"
7109
7101
  ]
7110
7102
  },
7111
- "cicd:repository:reset": {
7103
+ "cicd:stage:update": {
7112
7104
  "aliases": [],
7113
7105
  "args": {
7114
7106
  "id": {
7115
- "description": "Copado Git repository ID",
7107
+ "description": "Stage ID",
7116
7108
  "name": "id",
7117
7109
  "required": true
7118
7110
  }
7119
7111
  },
7120
- "description": "Reset a Copado Git repository and its authentication configuration",
7112
+ "description": "Update a Copado stage",
7121
7113
  "examples": [
7122
- "<%= config.bin %> <%= command.id %> repo-001 --yes",
7123
- "<%= config.bin %> <%= command.id %> repo-001 --yes --json"
7114
+ "<%= config.bin %> <%= command.id %> <stage-id> --name QA",
7115
+ "<%= config.bin %> <%= command.id %> <stage-id> --meta-stage Test"
7124
7116
  ],
7125
7117
  "flags": {
7126
7118
  "json": {
@@ -7138,17 +7130,24 @@
7138
7130
  "multiple": false,
7139
7131
  "type": "option"
7140
7132
  },
7141
- "yes": {
7142
- "char": "y",
7143
- "description": "Confirm reset without prompting",
7144
- "name": "yes",
7145
- "allowNo": false,
7146
- "type": "boolean"
7133
+ "meta-stage": {
7134
+ "description": "Meta stage (common values: Build, Test, Production; custom values are allowed)",
7135
+ "name": "meta-stage",
7136
+ "hasDynamicHelp": false,
7137
+ "multiple": false,
7138
+ "type": "option"
7139
+ },
7140
+ "name": {
7141
+ "description": "Stage name",
7142
+ "name": "name",
7143
+ "hasDynamicHelp": false,
7144
+ "multiple": false,
7145
+ "type": "option"
7147
7146
  }
7148
7147
  },
7149
7148
  "hasDynamicHelp": false,
7150
7149
  "hiddenAliases": [],
7151
- "id": "cicd:repository:reset",
7150
+ "id": "cicd:stage:update",
7152
7151
  "pluginAlias": "@copado/agentia-cli",
7153
7152
  "pluginName": "@copado/agentia-cli",
7154
7153
  "pluginType": "core",
@@ -7160,24 +7159,23 @@
7160
7159
  "dist",
7161
7160
  "commands",
7162
7161
  "cicd",
7163
- "repository",
7164
- "reset.js"
7162
+ "stage",
7163
+ "update.js"
7165
7164
  ]
7166
7165
  },
7167
- "cicd:repository:update": {
7166
+ "cicd:repository:create": {
7168
7167
  "aliases": [],
7169
7168
  "args": {
7170
- "id": {
7171
- "description": "Copado Git repository ID",
7172
- "name": "id",
7169
+ "name": {
7170
+ "description": "Name of the Copado Git repository to create",
7171
+ "name": "name",
7173
7172
  "required": true
7174
7173
  }
7175
7174
  },
7176
- "description": "Update a Copado Git repository by ID",
7175
+ "description": "Create a Copado Git repository shell",
7177
7176
  "examples": [
7178
- "<%= config.bin %> <%= command.id %> repo-001 --uri https://github.com/org/repo.git",
7179
- "<%= config.bin %> <%= command.id %> repo-001 --clear-uri",
7180
- "<%= config.bin %> <%= command.id %> repo-001 --provider GitLab --json"
7177
+ "<%= config.bin %> <%= command.id %> my-repo --source-format DX --provider Github",
7178
+ "<%= config.bin %> <%= command.id %> my-repo --source-format DX --provider GitLab --json"
7181
7179
  ],
7182
7180
  "flags": {
7183
7181
  "json": {
@@ -7207,81 +7205,10 @@
7207
7205
  "allowNo": true,
7208
7206
  "type": "boolean"
7209
7207
  },
7210
- "clear-branch-base-url": {
7211
- "description": "Clear the repository branch base URL",
7212
- "name": "clear-branch-base-url",
7213
- "allowNo": false,
7214
- "type": "boolean"
7215
- },
7216
- "clear-commit-base-url": {
7217
- "description": "Clear the repository commit base URL",
7218
- "name": "clear-commit-base-url",
7219
- "allowNo": false,
7220
- "type": "boolean"
7221
- },
7222
- "clear-pull-request-base-url": {
7223
- "description": "Clear the repository pull request base URL",
7224
- "name": "clear-pull-request-base-url",
7225
- "allowNo": false,
7226
- "type": "boolean"
7227
- },
7228
- "clear-tag-base-url": {
7229
- "description": "Clear the repository tag base URL",
7230
- "name": "clear-tag-base-url",
7231
- "allowNo": false,
7232
- "type": "boolean"
7233
- },
7234
- "clear-uri": {
7235
- "description": "Clear the repository clone URI",
7236
- "name": "clear-uri",
7237
- "allowNo": false,
7238
- "type": "boolean"
7239
- },
7240
- "branch-base-url": {
7241
- "description": "Base URL for repository branch links",
7242
- "name": "branch-base-url",
7243
- "hasDynamicHelp": false,
7244
- "multiple": false,
7245
- "type": "option"
7246
- },
7247
- "commit-base-url": {
7248
- "description": "Base URL for repository commit links",
7249
- "name": "commit-base-url",
7250
- "hasDynamicHelp": false,
7251
- "multiple": false,
7252
- "type": "option"
7253
- },
7254
- "pull-request-base-url": {
7255
- "description": "Base URL for repository pull request links",
7256
- "name": "pull-request-base-url",
7257
- "hasDynamicHelp": false,
7258
- "multiple": false,
7259
- "type": "option"
7260
- },
7261
- "tag-base-url": {
7262
- "description": "Base URL for repository tag links",
7263
- "name": "tag-base-url",
7264
- "hasDynamicHelp": false,
7265
- "multiple": false,
7266
- "type": "option"
7267
- },
7268
- "uri": {
7269
- "description": "Repository clone URI",
7270
- "name": "uri",
7271
- "hasDynamicHelp": false,
7272
- "multiple": false,
7273
- "type": "option"
7274
- },
7275
- "name": {
7276
- "description": "Repository name",
7277
- "name": "name",
7278
- "hasDynamicHelp": false,
7279
- "multiple": false,
7280
- "type": "option"
7281
- },
7282
7208
  "provider": {
7283
7209
  "description": "Git repository provider",
7284
7210
  "name": "provider",
7211
+ "required": true,
7285
7212
  "hasDynamicHelp": false,
7286
7213
  "multiple": false,
7287
7214
  "options": [
@@ -7296,8 +7223,9 @@
7296
7223
  "type": "option"
7297
7224
  },
7298
7225
  "source-format": {
7299
- "description": "Git repository source format",
7226
+ "description": "Git repository source format (default: DX)",
7300
7227
  "name": "source-format",
7228
+ "default": "DX",
7301
7229
  "hasDynamicHelp": false,
7302
7230
  "multiple": false,
7303
7231
  "options": [
@@ -7309,7 +7237,7 @@
7309
7237
  },
7310
7238
  "hasDynamicHelp": false,
7311
7239
  "hiddenAliases": [],
7312
- "id": "cicd:repository:update",
7240
+ "id": "cicd:repository:create",
7313
7241
  "pluginAlias": "@copado/agentia-cli",
7314
7242
  "pluginName": "@copado/agentia-cli",
7315
7243
  "pluginType": "core",
@@ -7322,10 +7250,10 @@
7322
7250
  "commands",
7323
7251
  "cicd",
7324
7252
  "repository",
7325
- "update.js"
7253
+ "create.js"
7326
7254
  ]
7327
7255
  },
7328
- "cicd:repository:validate": {
7256
+ "cicd:repository:delete": {
7329
7257
  "aliases": [],
7330
7258
  "args": {
7331
7259
  "id": {
@@ -7334,7 +7262,7 @@
7334
7262
  "required": true
7335
7263
  }
7336
7264
  },
7337
- "description": "Validate Copado Git repository authentication",
7265
+ "description": "Delete a Copado Git repository by ID",
7338
7266
  "examples": [
7339
7267
  "<%= config.bin %> <%= command.id %> repo-001",
7340
7268
  "<%= config.bin %> <%= command.id %> repo-001 --json"
@@ -7358,7 +7286,7 @@
7358
7286
  },
7359
7287
  "hasDynamicHelp": false,
7360
7288
  "hiddenAliases": [],
7361
- "id": "cicd:repository:validate",
7289
+ "id": "cicd:repository:delete",
7362
7290
  "pluginAlias": "@copado/agentia-cli",
7363
7291
  "pluginName": "@copado/agentia-cli",
7364
7292
  "pluginType": "core",
@@ -7371,22 +7299,68 @@
7371
7299
  "commands",
7372
7300
  "cicd",
7373
7301
  "repository",
7374
- "validate.js"
7302
+ "delete.js"
7375
7303
  ]
7376
7304
  },
7377
- "cicd:stage:create": {
7305
+ "cicd:repository:get": {
7378
7306
  "aliases": [],
7379
7307
  "args": {
7380
- "name": {
7381
- "description": "Stage name",
7382
- "name": "name",
7308
+ "id": {
7309
+ "description": "Copado Git repository ID",
7310
+ "name": "id",
7383
7311
  "required": true
7384
7312
  }
7385
7313
  },
7386
- "description": "Create a Copado stage",
7314
+ "description": "Get a Copado Git repository by ID",
7387
7315
  "examples": [
7388
- "<%= config.bin %> <%= command.id %> Build",
7389
- "<%= config.bin %> <%= command.id %> Test --meta-stage Test"
7316
+ "<%= config.bin %> <%= command.id %> repo-001",
7317
+ "<%= config.bin %> <%= command.id %> repo-001 --json"
7318
+ ],
7319
+ "flags": {
7320
+ "json": {
7321
+ "description": "Format output as json.",
7322
+ "helpGroup": "GLOBAL",
7323
+ "name": "json",
7324
+ "allowNo": false,
7325
+ "type": "boolean"
7326
+ },
7327
+ "cicd-connection": {
7328
+ "description": "Named CICD connection for this invocation only (see agentia auth set --connection). Does not change stored default auth.",
7329
+ "name": "cicd-connection",
7330
+ "required": false,
7331
+ "hasDynamicHelp": false,
7332
+ "multiple": false,
7333
+ "type": "option"
7334
+ }
7335
+ },
7336
+ "hasDynamicHelp": false,
7337
+ "hiddenAliases": [],
7338
+ "id": "cicd:repository:get",
7339
+ "pluginAlias": "@copado/agentia-cli",
7340
+ "pluginName": "@copado/agentia-cli",
7341
+ "pluginType": "core",
7342
+ "strict": true,
7343
+ "enableJsonFlag": true,
7344
+ "experimental": false,
7345
+ "isESM": true,
7346
+ "relativePath": [
7347
+ "dist",
7348
+ "commands",
7349
+ "cicd",
7350
+ "repository",
7351
+ "get.js"
7352
+ ]
7353
+ },
7354
+ "cicd:repository:list": {
7355
+ "aliases": [],
7356
+ "args": {},
7357
+ "description": "List Copado Git repositories",
7358
+ "examples": [
7359
+ "<%= config.bin %> <%= command.id %>",
7360
+ "<%= config.bin %> <%= command.id %> --page-size 50",
7361
+ "<%= config.bin %> <%= command.id %> --cursor NEXT --json",
7362
+ "<%= config.bin %> <%= command.id %> --name copado-demo --provider Github",
7363
+ "<%= config.bin %> <%= command.id %> --source-format DX --json"
7390
7364
  ],
7391
7365
  "flags": {
7392
7366
  "json": {
@@ -7404,24 +7378,58 @@
7404
7378
  "multiple": false,
7405
7379
  "type": "option"
7406
7380
  },
7407
- "meta-stage": {
7408
- "description": "Meta stage (common values: Build, Test, Production; custom values are allowed)",
7409
- "name": "meta-stage",
7381
+ "cursor": {
7382
+ "description": "Opaque pagination cursor from a previous list response (nextCursor)",
7383
+ "name": "cursor",
7384
+ "hasDynamicHelp": false,
7385
+ "multiple": false,
7386
+ "type": "option"
7387
+ },
7388
+ "page-size": {
7389
+ "description": "Number of records per page (1-200)",
7390
+ "name": "page-size",
7410
7391
  "hasDynamicHelp": false,
7411
7392
  "multiple": false,
7412
7393
  "type": "option"
7413
7394
  },
7414
7395
  "name": {
7415
- "description": "Stage name",
7396
+ "description": "Filter by name",
7416
7397
  "name": "name",
7417
7398
  "hasDynamicHelp": false,
7418
7399
  "multiple": false,
7419
7400
  "type": "option"
7401
+ },
7402
+ "provider": {
7403
+ "description": "Filter by Git repository provider",
7404
+ "name": "provider",
7405
+ "hasDynamicHelp": false,
7406
+ "multiple": false,
7407
+ "options": [
7408
+ "Github",
7409
+ "Bitbucket",
7410
+ "GitLab",
7411
+ "Azure",
7412
+ "Microsoft Team Service",
7413
+ "Copado Version Control",
7414
+ "Others"
7415
+ ],
7416
+ "type": "option"
7417
+ },
7418
+ "source-format": {
7419
+ "description": "Filter by Git repository source format",
7420
+ "name": "source-format",
7421
+ "hasDynamicHelp": false,
7422
+ "multiple": false,
7423
+ "options": [
7424
+ "Metadata",
7425
+ "DX"
7426
+ ],
7427
+ "type": "option"
7420
7428
  }
7421
7429
  },
7422
7430
  "hasDynamicHelp": false,
7423
7431
  "hiddenAliases": [],
7424
- "id": "cicd:stage:create",
7432
+ "id": "cicd:repository:list",
7425
7433
  "pluginAlias": "@copado/agentia-cli",
7426
7434
  "pluginName": "@copado/agentia-cli",
7427
7435
  "pluginType": "core",
@@ -7433,23 +7441,23 @@
7433
7441
  "dist",
7434
7442
  "commands",
7435
7443
  "cicd",
7436
- "stage",
7437
- "create.js"
7444
+ "repository",
7445
+ "list.js"
7438
7446
  ]
7439
7447
  },
7440
- "cicd:stage:delete": {
7448
+ "cicd:repository:open": {
7441
7449
  "aliases": [],
7442
7450
  "args": {
7443
7451
  "id": {
7444
- "description": "Stage ID",
7452
+ "description": "Copado Git repository ID",
7445
7453
  "name": "id",
7446
7454
  "required": true
7447
7455
  }
7448
7456
  },
7449
- "description": "Delete a Copado stage",
7457
+ "description": "Open a Copado Git repository in the browser",
7450
7458
  "examples": [
7451
- "<%= config.bin %> <%= command.id %> <stage-id>",
7452
- "<%= config.bin %> <%= command.id %> <stage-id> --yes --json"
7459
+ "<%= config.bin %> <%= command.id %> <repository-id>",
7460
+ "<%= config.bin %> <%= command.id %> <repository-id> --json"
7453
7461
  ],
7454
7462
  "flags": {
7455
7463
  "json": {
@@ -7466,18 +7474,11 @@
7466
7474
  "hasDynamicHelp": false,
7467
7475
  "multiple": false,
7468
7476
  "type": "option"
7469
- },
7470
- "yes": {
7471
- "char": "y",
7472
- "description": "Confirm deletion without prompting",
7473
- "name": "yes",
7474
- "allowNo": false,
7475
- "type": "boolean"
7476
7477
  }
7477
7478
  },
7478
7479
  "hasDynamicHelp": false,
7479
7480
  "hiddenAliases": [],
7480
- "id": "cicd:stage:delete",
7481
+ "id": "cicd:repository:open",
7481
7482
  "pluginAlias": "@copado/agentia-cli",
7482
7483
  "pluginName": "@copado/agentia-cli",
7483
7484
  "pluginType": "core",
@@ -7489,23 +7490,23 @@
7489
7490
  "dist",
7490
7491
  "commands",
7491
7492
  "cicd",
7492
- "stage",
7493
- "delete.js"
7493
+ "repository",
7494
+ "open.js"
7494
7495
  ]
7495
7496
  },
7496
- "cicd:stage:get": {
7497
+ "cicd:repository:reset": {
7497
7498
  "aliases": [],
7498
7499
  "args": {
7499
7500
  "id": {
7500
- "description": "Stage ID",
7501
+ "description": "Copado Git repository ID",
7501
7502
  "name": "id",
7502
7503
  "required": true
7503
7504
  }
7504
7505
  },
7505
- "description": "Get a Copado stage",
7506
+ "description": "Reset a Copado Git repository and its authentication configuration",
7506
7507
  "examples": [
7507
- "<%= config.bin %> <%= command.id %> <stage-id>",
7508
- "<%= config.bin %> <%= command.id %> <stage-id> --json"
7508
+ "<%= config.bin %> <%= command.id %> repo-001 --yes",
7509
+ "<%= config.bin %> <%= command.id %> repo-001 --yes --json"
7509
7510
  ],
7510
7511
  "flags": {
7511
7512
  "json": {
@@ -7522,11 +7523,18 @@
7522
7523
  "hasDynamicHelp": false,
7523
7524
  "multiple": false,
7524
7525
  "type": "option"
7526
+ },
7527
+ "yes": {
7528
+ "char": "y",
7529
+ "description": "Confirm reset without prompting",
7530
+ "name": "yes",
7531
+ "allowNo": false,
7532
+ "type": "boolean"
7525
7533
  }
7526
7534
  },
7527
7535
  "hasDynamicHelp": false,
7528
7536
  "hiddenAliases": [],
7529
- "id": "cicd:stage:get",
7537
+ "id": "cicd:repository:reset",
7530
7538
  "pluginAlias": "@copado/agentia-cli",
7531
7539
  "pluginName": "@copado/agentia-cli",
7532
7540
  "pluginType": "core",
@@ -7538,17 +7546,24 @@
7538
7546
  "dist",
7539
7547
  "commands",
7540
7548
  "cicd",
7541
- "stage",
7542
- "get.js"
7549
+ "repository",
7550
+ "reset.js"
7543
7551
  ]
7544
7552
  },
7545
- "cicd:stage:list": {
7553
+ "cicd:repository:update": {
7546
7554
  "aliases": [],
7547
- "args": {},
7548
- "description": "List Copado stages",
7555
+ "args": {
7556
+ "id": {
7557
+ "description": "Copado Git repository ID",
7558
+ "name": "id",
7559
+ "required": true
7560
+ }
7561
+ },
7562
+ "description": "Update a Copado Git repository by ID",
7549
7563
  "examples": [
7550
- "<%= config.bin %> <%= command.id %>",
7551
- "<%= config.bin %> <%= command.id %> --json"
7564
+ "<%= config.bin %> <%= command.id %> repo-001 --uri https://github.com/org/repo.git",
7565
+ "<%= config.bin %> <%= command.id %> repo-001 --clear-uri",
7566
+ "<%= config.bin %> <%= command.id %> repo-001 --provider GitLab --json"
7552
7567
  ],
7553
7568
  "flags": {
7554
7569
  "json": {
@@ -7558,81 +7573,129 @@
7558
7573
  "allowNo": false,
7559
7574
  "type": "boolean"
7560
7575
  },
7561
- "cicd-connection": {
7562
- "description": "Named CICD connection for this invocation only (see agentia auth set --connection). Does not change stored default auth.",
7563
- "name": "cicd-connection",
7564
- "required": false,
7576
+ "cicd-connection": {
7577
+ "description": "Named CICD connection for this invocation only (see agentia auth set --connection). Does not change stored default auth.",
7578
+ "name": "cicd-connection",
7579
+ "required": false,
7580
+ "hasDynamicHelp": false,
7581
+ "multiple": false,
7582
+ "type": "option"
7583
+ },
7584
+ "allow-functions-git-cache": {
7585
+ "description": "Allow Functions Git cache for this repository",
7586
+ "name": "allow-functions-git-cache",
7587
+ "allowNo": true,
7588
+ "type": "boolean"
7589
+ },
7590
+ "copado-tunnel-enabled": {
7591
+ "description": "Enable Copado tunnel for this repository",
7592
+ "name": "copado-tunnel-enabled",
7593
+ "allowNo": true,
7594
+ "type": "boolean"
7595
+ },
7596
+ "clear-branch-base-url": {
7597
+ "description": "Clear the repository branch base URL",
7598
+ "name": "clear-branch-base-url",
7599
+ "allowNo": false,
7600
+ "type": "boolean"
7601
+ },
7602
+ "clear-commit-base-url": {
7603
+ "description": "Clear the repository commit base URL",
7604
+ "name": "clear-commit-base-url",
7605
+ "allowNo": false,
7606
+ "type": "boolean"
7607
+ },
7608
+ "clear-pull-request-base-url": {
7609
+ "description": "Clear the repository pull request base URL",
7610
+ "name": "clear-pull-request-base-url",
7611
+ "allowNo": false,
7612
+ "type": "boolean"
7613
+ },
7614
+ "clear-tag-base-url": {
7615
+ "description": "Clear the repository tag base URL",
7616
+ "name": "clear-tag-base-url",
7617
+ "allowNo": false,
7618
+ "type": "boolean"
7619
+ },
7620
+ "clear-uri": {
7621
+ "description": "Clear the repository clone URI",
7622
+ "name": "clear-uri",
7623
+ "allowNo": false,
7624
+ "type": "boolean"
7625
+ },
7626
+ "branch-base-url": {
7627
+ "description": "Base URL for repository branch links",
7628
+ "name": "branch-base-url",
7629
+ "hasDynamicHelp": false,
7630
+ "multiple": false,
7631
+ "type": "option"
7632
+ },
7633
+ "commit-base-url": {
7634
+ "description": "Base URL for repository commit links",
7635
+ "name": "commit-base-url",
7565
7636
  "hasDynamicHelp": false,
7566
7637
  "multiple": false,
7567
7638
  "type": "option"
7568
7639
  },
7569
- "cursor": {
7570
- "description": "Opaque pagination cursor from a previous list response (nextCursor)",
7571
- "name": "cursor",
7640
+ "pull-request-base-url": {
7641
+ "description": "Base URL for repository pull request links",
7642
+ "name": "pull-request-base-url",
7572
7643
  "hasDynamicHelp": false,
7573
7644
  "multiple": false,
7574
7645
  "type": "option"
7575
7646
  },
7576
- "page-size": {
7577
- "description": "Number of records per page (1-200)",
7578
- "name": "page-size",
7647
+ "tag-base-url": {
7648
+ "description": "Base URL for repository tag links",
7649
+ "name": "tag-base-url",
7579
7650
  "hasDynamicHelp": false,
7580
7651
  "multiple": false,
7581
7652
  "type": "option"
7582
- }
7583
- },
7584
- "hasDynamicHelp": false,
7585
- "hiddenAliases": [],
7586
- "id": "cicd:stage:list",
7587
- "pluginAlias": "@copado/agentia-cli",
7588
- "pluginName": "@copado/agentia-cli",
7589
- "pluginType": "core",
7590
- "strict": true,
7591
- "enableJsonFlag": true,
7592
- "experimental": false,
7593
- "isESM": true,
7594
- "relativePath": [
7595
- "dist",
7596
- "commands",
7597
- "cicd",
7598
- "stage",
7599
- "list.js"
7600
- ]
7601
- },
7602
- "cicd:stage:open": {
7603
- "aliases": [],
7604
- "args": {
7605
- "id": {
7606
- "description": "Stage ID",
7607
- "name": "id",
7608
- "required": true
7609
- }
7610
- },
7611
- "description": "Open a Copado stage in the browser",
7612
- "examples": [
7613
- "<%= config.bin %> <%= command.id %> <stage-id>",
7614
- "<%= config.bin %> <%= command.id %> <stage-id> --json"
7615
- ],
7616
- "flags": {
7617
- "json": {
7618
- "description": "Format output as json.",
7619
- "helpGroup": "GLOBAL",
7620
- "name": "json",
7621
- "allowNo": false,
7622
- "type": "boolean"
7623
7653
  },
7624
- "cicd-connection": {
7625
- "description": "Named CICD connection for this invocation only (see agentia auth set --connection). Does not change stored default auth.",
7626
- "name": "cicd-connection",
7627
- "required": false,
7654
+ "uri": {
7655
+ "description": "Repository clone URI",
7656
+ "name": "uri",
7657
+ "hasDynamicHelp": false,
7658
+ "multiple": false,
7659
+ "type": "option"
7660
+ },
7661
+ "name": {
7662
+ "description": "Repository name",
7663
+ "name": "name",
7664
+ "hasDynamicHelp": false,
7665
+ "multiple": false,
7666
+ "type": "option"
7667
+ },
7668
+ "provider": {
7669
+ "description": "Git repository provider",
7670
+ "name": "provider",
7671
+ "hasDynamicHelp": false,
7672
+ "multiple": false,
7673
+ "options": [
7674
+ "Github",
7675
+ "Bitbucket",
7676
+ "GitLab",
7677
+ "Azure",
7678
+ "Microsoft Team Service",
7679
+ "Copado Version Control",
7680
+ "Others"
7681
+ ],
7682
+ "type": "option"
7683
+ },
7684
+ "source-format": {
7685
+ "description": "Git repository source format",
7686
+ "name": "source-format",
7628
7687
  "hasDynamicHelp": false,
7629
7688
  "multiple": false,
7689
+ "options": [
7690
+ "Metadata",
7691
+ "DX"
7692
+ ],
7630
7693
  "type": "option"
7631
7694
  }
7632
7695
  },
7633
7696
  "hasDynamicHelp": false,
7634
7697
  "hiddenAliases": [],
7635
- "id": "cicd:stage:open",
7698
+ "id": "cicd:repository:update",
7636
7699
  "pluginAlias": "@copado/agentia-cli",
7637
7700
  "pluginName": "@copado/agentia-cli",
7638
7701
  "pluginType": "core",
@@ -7644,23 +7707,23 @@
7644
7707
  "dist",
7645
7708
  "commands",
7646
7709
  "cicd",
7647
- "stage",
7648
- "open.js"
7710
+ "repository",
7711
+ "update.js"
7649
7712
  ]
7650
7713
  },
7651
- "cicd:stage:update": {
7714
+ "cicd:repository:validate": {
7652
7715
  "aliases": [],
7653
7716
  "args": {
7654
7717
  "id": {
7655
- "description": "Stage ID",
7718
+ "description": "Copado Git repository ID",
7656
7719
  "name": "id",
7657
7720
  "required": true
7658
7721
  }
7659
7722
  },
7660
- "description": "Update a Copado stage",
7723
+ "description": "Validate Copado Git repository authentication",
7661
7724
  "examples": [
7662
- "<%= config.bin %> <%= command.id %> <stage-id> --name QA",
7663
- "<%= config.bin %> <%= command.id %> <stage-id> --meta-stage Test"
7725
+ "<%= config.bin %> <%= command.id %> repo-001",
7726
+ "<%= config.bin %> <%= command.id %> repo-001 --json"
7664
7727
  ],
7665
7728
  "flags": {
7666
7729
  "json": {
@@ -7677,25 +7740,11 @@
7677
7740
  "hasDynamicHelp": false,
7678
7741
  "multiple": false,
7679
7742
  "type": "option"
7680
- },
7681
- "meta-stage": {
7682
- "description": "Meta stage (common values: Build, Test, Production; custom values are allowed)",
7683
- "name": "meta-stage",
7684
- "hasDynamicHelp": false,
7685
- "multiple": false,
7686
- "type": "option"
7687
- },
7688
- "name": {
7689
- "description": "Stage name",
7690
- "name": "name",
7691
- "hasDynamicHelp": false,
7692
- "multiple": false,
7693
- "type": "option"
7694
7743
  }
7695
7744
  },
7696
7745
  "hasDynamicHelp": false,
7697
7746
  "hiddenAliases": [],
7698
- "id": "cicd:stage:update",
7747
+ "id": "cicd:repository:validate",
7699
7748
  "pluginAlias": "@copado/agentia-cli",
7700
7749
  "pluginName": "@copado/agentia-cli",
7701
7750
  "pluginType": "core",
@@ -7707,8 +7756,8 @@
7707
7756
  "dist",
7708
7757
  "commands",
7709
7758
  "cicd",
7710
- "stage",
7711
- "update.js"
7759
+ "repository",
7760
+ "validate.js"
7712
7761
  ]
7713
7762
  },
7714
7763
  "cicd:template:defaults": {
@@ -8262,7 +8311,7 @@
8262
8311
  },
8263
8312
  "file": {
8264
8313
  "char": "f",
8265
- "description": "Path to a JSON commit request body.",
8314
+ "description": "Path to a JSON commit request with message and changes[] (one object per metadata component).",
8266
8315
  "name": "file",
8267
8316
  "hasDynamicHelp": false,
8268
8317
  "multiple": false,
@@ -8325,7 +8374,7 @@
8325
8374
  "type": "option"
8326
8375
  },
8327
8376
  "stdin": {
8328
- "description": "Read a JSON commit request body from stdin.",
8377
+ "description": "Read a JSON commit request with message and changes[] from stdin.",
8329
8378
  "name": "stdin",
8330
8379
  "allowNo": false,
8331
8380
  "type": "boolean"
@@ -8494,7 +8543,7 @@
8494
8543
  "type": "option"
8495
8544
  },
8496
8545
  "record-type": {
8497
- "description": "Record type",
8546
+ "description": "Record type DeveloperName",
8498
8547
  "name": "record-type",
8499
8548
  "hasDynamicHelp": false,
8500
8549
  "multiple": false,
@@ -8600,12 +8649,12 @@
8600
8649
  "aliases": [],
8601
8650
  "args": {
8602
8651
  "id": {
8603
- "description": "User story ID",
8652
+ "description": "User story ID or name",
8604
8653
  "name": "id",
8605
8654
  "required": true
8606
8655
  }
8607
8656
  },
8608
- "description": "Delete a Copado user story by ID",
8657
+ "description": "Delete a Copado user story by ID or name",
8609
8658
  "examples": [
8610
8659
  "<%= config.bin %> <%= command.id %> a0SKC000000CmZ2AU",
8611
8660
  "<%= config.bin %> <%= command.id %> a0SKC000000CmZ2AU --json"
@@ -8699,13 +8748,16 @@
8699
8748
  "cicd:work:environment-sync": {
8700
8749
  "aliases": [],
8701
8750
  "args": {},
8702
- "description": "Sync committed metadata from the next environment onto the destination environment (or current feature branch). Back-promotes every user story behind the destination environment from the next environment branch. GET user stories ahead and behind. If none are behind, log that and stop. Otherwise create a back-promotion and POST those behind stories onto the promotion. Resolves the next-environment Git branch from --destination-environment or --dev-org-branch (the dest pipeline connection destinationBranch, or that destination environment's outbound branch). Merges origin/<next-env> with --no-ff --no-commit, restores every other path from HEAD, commits the guessed pathspecs, and pushes the dest org branch (and the feature branch when HEAD starts with feature/). If guessed pathspecs still conflict, PATCH the back-promotion status to Merge Conflict, store lastEnvironmentSyncName, resolve the files, and re-run with --continue (optional --promotion). The promotion destination environment supplies the dest org branch and the next-env branch. To discard a conflicted merge, re-run with --abort (optional --promotion); runs git merge --abort and sets the back-promotion status to Draft. After a successful sync, PATCH the back-promotion status to Completed and clear lastEnvironmentSyncName. On git/merge failure (including conflicts) and after a successful --continue, uploads the captured command transcript as a Salesforce File on the back-promotion (`Environment Sync Logs <name-or-id> <datetime>.txt`) via `/agentia/headless/file/upload`. HTTP 404 is ignored until that endpoint is rolled out; other upload failures are warned and do not change the environment-sync outcome.",
8751
+ "description": "Sync committed metadata from the next environment onto the destination environment (or current feature branch). Back-promotes every user story behind the destination environment from the next environment branch. On a feature branch, requires published commits first: stops when HEAD is ahead of origin/<feature> and suggests `cicd work publish`. GET user stories ahead and behind. If none are behind, log that and stop. Otherwise create a back-promotion via POST /agentia/headless/work/promote-action (PromoteAction with execute flags false) including those behind stories. Resolves the next-environment Git branch from --destination-environment or --dev-org-branch (the dest pipeline connection destinationBranch, or that destination environment's outbound branch). Creates promotion/<promotionName> from the dest org branch, merges origin/<next-env> pathspecs into that promotion branch (--no-ff --no-commit, restores non-pathspec paths), commits, merges the promotion branch into the dest org branch, and pushes both refs. If the run started on a feature branch, checks out that branch's changed files (vs lastBaseBranch) from the dest org, commits updates when needed, and tells you to re-check and publish again. If guessed pathspecs still conflict, PATCH the back-promotion status to Merge Conflict, store lastEnvironmentSyncName, resolve the files on promotion/<name>, and re-run with --continue (optional --promotion). To discard a conflicted merge, re-run with --abort (optional --promotion); runs git merge --abort and POST /agentia/headless/work/promote-action/complete with status Cancelled. After a successful sync, when --deployment resolves to local, runs `sf project deploy start --ignore-conflicts` against --sf-alias (Add-only changes), then POST /agentia/headless/work/promote-action/complete with status Completed and the resolved deployment (none|local|cloud; auto chooses local when every change is Add and --sf-alias is set, otherwise cloud). By default polls the cloud deployment JobExecution to a terminal status when deployment is cloud (--no-wait to skip). On git/merge failure (including conflicts) and after a successful --continue, uploads the captured command transcript as a Salesforce File on the back-promotion (`Environment Sync Logs <name-or-id> <datetime>.txt`) via `/agentia/headless/file/upload`. HTTP 404 is ignored until that endpoint is rolled out; other upload failures are warned and do not change the environment-sync outcome.",
8703
8752
  "examples": [
8704
8753
  "<%= config.bin %> <%= command.id %> --destination-environment=dev1",
8705
8754
  "<%= config.bin %> <%= command.id %> --dev-org-branch=dev1-sfp",
8706
8755
  "<%= config.bin %> <%= command.id %> --continue",
8707
8756
  "<%= config.bin %> <%= command.id %> --abort",
8708
8757
  "<%= config.bin %> <%= command.id %> --promotion=P29334 --continue",
8758
+ "<%= config.bin %> <%= command.id %> --destination-environment=dev1 --deployment=local --sf-alias=dev1",
8759
+ "<%= config.bin %> <%= command.id %> --destination-environment=dev1 --deployment=cloud",
8760
+ "<%= config.bin %> <%= command.id %> --destination-environment=dev1 --no-wait",
8709
8761
  "<%= config.bin %> <%= command.id %> --destination-environment=dev1 --json"
8710
8762
  ],
8711
8763
  "flags": {
@@ -8725,7 +8777,7 @@
8725
8777
  "type": "option"
8726
8778
  },
8727
8779
  "abort": {
8728
- "description": "Abort an in-progress merge (`git merge --abort`) and set the back-promotion status to Draft. Uses --promotion or lastEnvironmentSyncName. Exclusive with --continue.",
8780
+ "description": "Abort an in-progress merge (`git merge --abort`) and cancel the back-promotion via promote-action/complete. Uses --promotion or lastEnvironmentSyncName. Exclusive with --continue.",
8729
8781
  "exclusive": [
8730
8782
  "continue"
8731
8783
  ],
@@ -8742,8 +8794,22 @@
8742
8794
  "allowNo": false,
8743
8795
  "type": "boolean"
8744
8796
  },
8797
+ "deployment": {
8798
+ "description": "How promote-action/complete handles deployment after a successful sync: none (leave deployment job untouched), local (sf project deploy start --ignore-conflicts then mark deployment JobExecution Successful; Add-only changes; requires --sf-alias), cloud (start PromotionDeployAction), or auto (local when every change is Add and --sf-alias is set, otherwise cloud). Sent to the gateway as none|local|cloud (never auto).",
8799
+ "name": "deployment",
8800
+ "default": "auto",
8801
+ "hasDynamicHelp": false,
8802
+ "multiple": false,
8803
+ "options": [
8804
+ "none",
8805
+ "local",
8806
+ "cloud",
8807
+ "auto"
8808
+ ],
8809
+ "type": "option"
8810
+ },
8745
8811
  "destination-credential": {
8746
- "description": "Credential ID posted as destinationCredentialId when creating the back-promotion. Copado requires a credential on the next/source environment (PRO-033 if a dest/dev credential is sent) and then stores the dest/dev credential. Defaults to that source environment defaultCredential, otherwise the first source credential.",
8812
+ "description": "Credential ID recorded on the environment-sync result as destinationCredentialId. Defaults to the next/source environment defaultCredential, otherwise the first source credential. PromoteAction resolves deployment credentials itself.",
8747
8813
  "name": "destination-credential",
8748
8814
  "hasDynamicHelp": false,
8749
8815
  "multiple": false,
@@ -8782,6 +8848,27 @@
8782
8848
  "hasDynamicHelp": false,
8783
8849
  "multiple": false,
8784
8850
  "type": "option"
8851
+ },
8852
+ "sf-alias": {
8853
+ "description": "Salesforce CLI org alias or username for local deployment (`sf project deploy start -o`). Required with --deployment=local; with --deployment=auto enables local when changes are Add-only.",
8854
+ "name": "sf-alias",
8855
+ "hasDynamicHelp": false,
8856
+ "multiple": false,
8857
+ "type": "option"
8858
+ },
8859
+ "wait": {
8860
+ "description": "Poll promotion and deployment executions to terminal status.",
8861
+ "name": "wait",
8862
+ "allowNo": true,
8863
+ "type": "boolean"
8864
+ },
8865
+ "wait-timeout": {
8866
+ "description": "Maximum total seconds to wait for promotion and deployment executions.",
8867
+ "name": "wait-timeout",
8868
+ "default": 900,
8869
+ "hasDynamicHelp": false,
8870
+ "multiple": false,
8871
+ "type": "option"
8785
8872
  }
8786
8873
  },
8787
8874
  "hasDynamicHelp": false,
@@ -8792,7 +8879,7 @@
8792
8879
  "pluginType": "core",
8793
8880
  "strict": true,
8794
8881
  "enableJsonFlag": true,
8795
- "experimental": false,
8882
+ "experimental": true,
8796
8883
  "isESM": true,
8797
8884
  "relativePath": [
8798
8885
  "dist",
@@ -8806,12 +8893,12 @@
8806
8893
  "aliases": [],
8807
8894
  "args": {
8808
8895
  "id": {
8809
- "description": "User story ID (defaults to the active work item from `work set`)",
8896
+ "description": "User story ID or name (defaults to the active work item from `work set`)",
8810
8897
  "name": "id",
8811
8898
  "required": false
8812
8899
  }
8813
8900
  },
8814
- "description": "Get a Copado user story by ID",
8901
+ "description": "Get a Copado user story by ID or name",
8815
8902
  "examples": [
8816
8903
  "<%= config.bin %> <%= command.id %>",
8817
8904
  "<%= config.bin %> <%= command.id %> a0SKC000000CmZ2AU",
@@ -9536,11 +9623,12 @@
9536
9623
  "cicd:work:test": {
9537
9624
  "aliases": [],
9538
9625
  "args": {},
9539
- "description": "Run quality gates for the current work item. With --local (the default) it runs project-root .agentia_quality_gates.sh (macOS/Linux) or .agentia_quality_gates.cmd (Windows) when present. When no project script exists it warns, runs the stock Agentia setup sample from a temporary file, then deletes that file. With --cloud it runs remote Copado quality gates (not implemented yet).",
9626
+ "description": "Run quality gates for the current work item. Runs the project-root .agentia_quality_gates.sh (macOS/Linux) or .agentia_quality_gates.cmd (Windows); when none exists it warns and runs the stock Agentia sample from a temporary file. Every gate runs by default. Use --gate <id> (repeatable or comma-separated) to select gates; the selection is exported as AGENTIA_GATES. Standard ids are apex, lint and lwc; scripts declare gates with `# agentia-gate: <id> - <description>` comments (see --list-gates). `--gate apex` alone skips the script, runs the Apex tests directly and uploads the result to the work item (nested inside a script it does not upload; the outer run reports). With --cloud it runs remote Copado quality gates (not implemented yet).",
9540
9627
  "examples": [
9541
9628
  "<%= config.bin %> <%= command.id %>",
9542
- "<%= config.bin %> <%= command.id %> --local --apex-test-classes=MyTest,OtherTest",
9543
- "<%= config.bin %> <%= command.id %> --local --rerun-failed-apex-tests",
9629
+ "<%= config.bin %> <%= command.id %> --gate lint --gate lwc",
9630
+ "<%= config.bin %> <%= command.id %> --gate apex --apex-test-classes=MyTest,OtherTest",
9631
+ "<%= config.bin %> <%= command.id %> --list-gates",
9544
9632
  "<%= config.bin %> <%= command.id %> -e SKIP_LWC_TESTS=1 -e TOOL_API_KEY=secret",
9545
9633
  "<%= config.bin %> <%= command.id %> --json",
9546
9634
  "<%= config.bin %> <%= command.id %> --cloud"
@@ -9561,6 +9649,16 @@
9561
9649
  "multiple": false,
9562
9650
  "type": "option"
9563
9651
  },
9652
+ "all": {
9653
+ "description": "Run every gate in the quality-gates script (the default when no --gate is given).",
9654
+ "exclusive": [
9655
+ "gate",
9656
+ "list-gates"
9657
+ ],
9658
+ "name": "all",
9659
+ "allowNo": false,
9660
+ "type": "boolean"
9661
+ },
9564
9662
  "apex-test-classes": {
9565
9663
  "description": "Comma-separated Apex test class names passed to local quality gates as AGENTIA_APEX_TEST_CLASSES",
9566
9664
  "name": "apex-test-classes",
@@ -9582,6 +9680,23 @@
9582
9680
  "multiple": true,
9583
9681
  "type": "option"
9584
9682
  },
9683
+ "gate": {
9684
+ "description": "Run only this gate id (for example apex, lint, lwc or a custom id declared in the script). Repeatable or comma-separated. Exported to the script as AGENTIA_GATES.",
9685
+ "exclusive": [
9686
+ "all",
9687
+ "list-gates"
9688
+ ],
9689
+ "name": "gate",
9690
+ "hasDynamicHelp": false,
9691
+ "multiple": true,
9692
+ "type": "option"
9693
+ },
9694
+ "list-gates": {
9695
+ "description": "List the gates declared in the quality-gates script (or the stock sample) and exit.",
9696
+ "name": "list-gates",
9697
+ "allowNo": false,
9698
+ "type": "boolean"
9699
+ },
9585
9700
  "local": {
9586
9701
  "description": "Run local project-root quality gates scripts. Used by default when --cloud is omitted.",
9587
9702
  "name": "local",
@@ -9589,10 +9704,19 @@
9589
9704
  "type": "boolean"
9590
9705
  },
9591
9706
  "rerun-failed-apex-tests": {
9592
- "description": "Pass AGENTIA_APEX_RERUN_FAILED=--rerun-failed-apex-tests to local quality gates so sample scripts forward that flag to work test apex.",
9707
+ "description": "Pass AGENTIA_APEX_RERUN_FAILED=--rerun-failed-apex-tests to local quality gates so sample scripts forward that flag to the apex gate.",
9593
9708
  "name": "rerun-failed-apex-tests",
9594
9709
  "allowNo": false,
9595
9710
  "type": "boolean"
9711
+ },
9712
+ "wait": {
9713
+ "char": "w",
9714
+ "description": "Minutes to wait for Apex test results (only with --gate apex alone).",
9715
+ "name": "wait",
9716
+ "default": 60,
9717
+ "hasDynamicHelp": false,
9718
+ "multiple": false,
9719
+ "type": "option"
9596
9720
  }
9597
9721
  },
9598
9722
  "hasDynamicHelp": false,
@@ -9617,12 +9741,12 @@
9617
9741
  "aliases": [],
9618
9742
  "args": {
9619
9743
  "id": {
9620
- "description": "User story ID (defaults to the active work item from `work set`)",
9744
+ "description": "User story ID or name (defaults to the active work item from `work set`)",
9621
9745
  "name": "id",
9622
9746
  "required": false
9623
9747
  }
9624
9748
  },
9625
- "description": "Update a Copado user story by ID",
9749
+ "description": "Update a Copado user story by ID or name",
9626
9750
  "examples": [
9627
9751
  "<%= config.bin %> <%= command.id %> --title \"Updated story\"",
9628
9752
  "<%= config.bin %> <%= command.id %> --custom-field JIRA_Key__c=CICD-1",
@@ -9750,7 +9874,7 @@
9750
9874
  "type": "option"
9751
9875
  },
9752
9876
  "record-type": {
9753
- "description": "Record type",
9877
+ "description": "Record type DeveloperName",
9754
9878
  "name": "record-type",
9755
9879
  "hasDynamicHelp": false,
9756
9880
  "multiple": false,
@@ -10463,73 +10587,6 @@
10463
10587
  "recorder.js"
10464
10588
  ]
10465
10589
  },
10466
- "testing:browser:reports": {
10467
- "aliases": [],
10468
- "args": {
10469
- "job-id": {
10470
- "description": "CRT job ID.",
10471
- "name": "job-id",
10472
- "required": false
10473
- }
10474
- },
10475
- "deprecateAliases": true,
10476
- "description": "List or save report artifacts from an active CRT browser session",
10477
- "examples": [
10478
- "<%= config.bin %> <%= command.id %> --project <project-id>",
10479
- "<%= config.bin %> <%= command.id %> --project <project-id> --output-dir ./reports"
10480
- ],
10481
- "flags": {
10482
- "json": {
10483
- "description": "Format output as json.",
10484
- "helpGroup": "GLOBAL",
10485
- "name": "json",
10486
- "allowNo": false,
10487
- "type": "boolean"
10488
- },
10489
- "project": {
10490
- "char": "p",
10491
- "description": "CRT project ID.",
10492
- "name": "project",
10493
- "required": true,
10494
- "hasDynamicHelp": false,
10495
- "multiple": false,
10496
- "type": "option"
10497
- },
10498
- "session-id": {
10499
- "description": "Active CRT browser session ID.",
10500
- "name": "session-id",
10501
- "hasDynamicHelp": false,
10502
- "multiple": false,
10503
- "type": "option"
10504
- },
10505
- "output-dir": {
10506
- "description": "Directory for log.html, report.html, and output.xml.",
10507
- "name": "output-dir",
10508
- "hasDynamicHelp": false,
10509
- "multiple": false,
10510
- "type": "option"
10511
- }
10512
- },
10513
- "hasDynamicHelp": false,
10514
- "hiddenAliases": [
10515
- "testing:live:reports"
10516
- ],
10517
- "id": "testing:browser:reports",
10518
- "pluginAlias": "@copado/agentia-cli",
10519
- "pluginName": "@copado/agentia-cli",
10520
- "pluginType": "core",
10521
- "strict": true,
10522
- "enableJsonFlag": true,
10523
- "experimental": false,
10524
- "isESM": true,
10525
- "relativePath": [
10526
- "dist",
10527
- "commands",
10528
- "testing",
10529
- "browser",
10530
- "reports.js"
10531
- ]
10532
- },
10533
10590
  "testing:browser:screenshot": {
10534
10591
  "aliases": [],
10535
10592
  "args": {
@@ -15977,7 +16034,7 @@
15977
16034
  "type": "option"
15978
16035
  },
15979
16036
  "file-id": {
15980
- "description": "File Id returned by result-file list",
16037
+ "description": "fileId (068...) returned by result-file list; a contentDocumentId (069...) is resolved automatically",
15981
16038
  "name": "file-id",
15982
16039
  "required": true,
15983
16040
  "hasDynamicHelp": false,
@@ -20579,7 +20636,7 @@
20579
20636
  "cicd:work:test:apex": {
20580
20637
  "aliases": [],
20581
20638
  "args": {},
20582
- "description": "Run specified Apex test classes via Salesforce CLI (`sf apex run test`) with code coverage. Usually run from project-root local quality gates (`.agentia_quality_gates.sh` / `.agentia_quality_gates.cmd`) when those scripts are configured. When `--apex-test-classes` is omitted or empty, logs that no Apex tests were specified and exits without running Salesforce CLI. Failed runs save `.agentia/apex.tests.<user-story>.json`; successful runs delete that file. `--rerun-failed-apex-tests` runs the previously failed classes (optionally filtered by `--apex-test-classes`). Prints the test-run summary when the run passes, or failing tests with their messages and stack traces when it fails. Exits with the same process exit code as Salesforce CLI (`sf`), including 100 when Apex tests fail.",
20639
+ "description": "Legacy alias of `work test --gate apex`; prefer that form (it is what the sample quality-gate scripts call). Run specified Apex test classes via Salesforce CLI (`sf apex run test`) with code coverage. When `--apex-test-classes` is omitted or empty, logs that no Apex tests were specified and exits without running Salesforce CLI. Failed runs save `.agentia/apex.tests.<user-story>.json`; successful runs delete that file. `--rerun-failed-apex-tests` runs the previously failed classes (optionally filtered by `--apex-test-classes`). Prints the test-run summary when the run passes, or failing tests with their messages and stack traces when it fails. Exits with the same process exit code as Salesforce CLI (`sf`), including 100 when Apex tests fail.",
20583
20640
  "examples": [
20584
20641
  "<%= config.bin %> <%= command.id %> -t HelloWorldTest",
20585
20642
  "<%= config.bin %> <%= command.id %> --apex-test-classes=MyTest,OtherTest",
@@ -20628,6 +20685,7 @@
20628
20685
  }
20629
20686
  },
20630
20687
  "hasDynamicHelp": false,
20688
+ "hidden": true,
20631
20689
  "hiddenAliases": [],
20632
20690
  "id": "cicd:work:test:apex",
20633
20691
  "pluginAlias": "@copado/agentia-cli",
@@ -22220,5 +22278,5 @@
22220
22278
  ]
22221
22279
  }
22222
22280
  },
22223
- "version": "1.3.0"
22281
+ "version": "1.4.0"
22224
22282
  }