harness-mcp-v2 3.2.19 → 3.2.21

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 (111) hide show
  1. package/README.md +146 -75
  2. package/build/client/harness-client.d.ts.map +1 -1
  3. package/build/client/harness-client.js +32 -6
  4. package/build/client/harness-client.js.map +1 -1
  5. package/build/config.d.ts +10 -0
  6. package/build/config.d.ts.map +1 -1
  7. package/build/config.js +15 -0
  8. package/build/config.js.map +1 -1
  9. package/build/data/schemas/v0/pipeline.d.ts.map +1 -1
  10. package/build/data/schemas/v0/pipeline.js +1388 -580
  11. package/build/data/schemas/v0/pipeline.js.map +1 -1
  12. package/build/data/schemas/v0/template.d.ts.map +1 -1
  13. package/build/data/schemas/v0/template.js +1142 -166
  14. package/build/data/schemas/v0/template.js.map +1 -1
  15. package/build/data/schemas/v1/pipeline.d.ts.map +1 -1
  16. package/build/data/schemas/v1/pipeline.js +302 -90
  17. package/build/data/schemas/v1/pipeline.js.map +1 -1
  18. package/build/data/schemas/v1/template.d.ts.map +1 -1
  19. package/build/data/schemas/v1/template.js +708 -488
  20. package/build/data/schemas/v1/template.js.map +1 -1
  21. package/build/prompts/deploy-ai-agent.d.ts +3 -0
  22. package/build/prompts/deploy-ai-agent.d.ts.map +1 -0
  23. package/build/prompts/deploy-ai-agent.js +300 -0
  24. package/build/prompts/deploy-ai-agent.js.map +1 -0
  25. package/build/prompts/feature-flag-rollout.d.ts.map +1 -1
  26. package/build/prompts/feature-flag-rollout.js +19 -8
  27. package/build/prompts/feature-flag-rollout.js.map +1 -1
  28. package/build/prompts/index.d.ts.map +1 -1
  29. package/build/prompts/index.js +2 -0
  30. package/build/prompts/index.js.map +1 -1
  31. package/build/registry/extractors.d.ts +87 -10
  32. package/build/registry/extractors.d.ts.map +1 -1
  33. package/build/registry/extractors.js +426 -26
  34. package/build/registry/extractors.js.map +1 -1
  35. package/build/registry/index.d.ts.map +1 -1
  36. package/build/registry/index.js +34 -15
  37. package/build/registry/index.js.map +1 -1
  38. package/build/registry/scope-utils.d.ts +45 -0
  39. package/build/registry/scope-utils.d.ts.map +1 -1
  40. package/build/registry/scope-utils.js +78 -0
  41. package/build/registry/scope-utils.js.map +1 -1
  42. package/build/registry/toolsets/chaos-descriptions.d.ts +72 -20
  43. package/build/registry/toolsets/chaos-descriptions.d.ts.map +1 -1
  44. package/build/registry/toolsets/chaos-descriptions.js +435 -140
  45. package/build/registry/toolsets/chaos-descriptions.js.map +1 -1
  46. package/build/registry/toolsets/chaos.d.ts.map +1 -1
  47. package/build/registry/toolsets/chaos.js +967 -193
  48. package/build/registry/toolsets/chaos.js.map +1 -1
  49. package/build/registry/toolsets/feature-flags.d.ts.map +1 -1
  50. package/build/registry/toolsets/feature-flags.js +888 -85
  51. package/build/registry/toolsets/feature-flags.js.map +1 -1
  52. package/build/registry/toolsets/governance.d.ts.map +1 -1
  53. package/build/registry/toolsets/governance.js +4 -0
  54. package/build/registry/toolsets/governance.js.map +1 -1
  55. package/build/registry/toolsets/iacm.d.ts.map +1 -1
  56. package/build/registry/toolsets/iacm.js +787 -11
  57. package/build/registry/toolsets/iacm.js.map +1 -1
  58. package/build/registry/toolsets/infrastructure.d.ts.map +1 -1
  59. package/build/registry/toolsets/infrastructure.js +30 -5
  60. package/build/registry/toolsets/infrastructure.js.map +1 -1
  61. package/build/registry/toolsets/pipelines.d.ts.map +1 -1
  62. package/build/registry/toolsets/pipelines.js +208 -5
  63. package/build/registry/toolsets/pipelines.js.map +1 -1
  64. package/build/registry/toolsets/release-management.d.ts +8 -0
  65. package/build/registry/toolsets/release-management.d.ts.map +1 -0
  66. package/build/registry/toolsets/release-management.js +783 -0
  67. package/build/registry/toolsets/release-management.js.map +1 -0
  68. package/build/registry/toolsets/sto.d.ts.map +1 -1
  69. package/build/registry/toolsets/sto.js +93 -17
  70. package/build/registry/toolsets/sto.js.map +1 -1
  71. package/build/registry/types.d.ts +52 -4
  72. package/build/registry/types.d.ts.map +1 -1
  73. package/build/resources/harness-schema.d.ts.map +1 -1
  74. package/build/resources/harness-schema.js +2 -1
  75. package/build/resources/harness-schema.js.map +1 -1
  76. package/build/tools/entity-schema/live.d.ts +6 -5
  77. package/build/tools/entity-schema/live.d.ts.map +1 -1
  78. package/build/tools/entity-schema/live.js +114 -10
  79. package/build/tools/entity-schema/live.js.map +1 -1
  80. package/build/tools/entity-schema/types.d.ts +7 -1
  81. package/build/tools/entity-schema/types.d.ts.map +1 -1
  82. package/build/tools/harness-create.d.ts.map +1 -1
  83. package/build/tools/harness-create.js +5 -1
  84. package/build/tools/harness-create.js.map +1 -1
  85. package/build/tools/harness-delete.d.ts.map +1 -1
  86. package/build/tools/harness-delete.js +5 -1
  87. package/build/tools/harness-delete.js.map +1 -1
  88. package/build/tools/harness-execute.d.ts.map +1 -1
  89. package/build/tools/harness-execute.js +15 -9
  90. package/build/tools/harness-execute.js.map +1 -1
  91. package/build/tools/harness-get.d.ts.map +1 -1
  92. package/build/tools/harness-get.js +5 -1
  93. package/build/tools/harness-get.js.map +1 -1
  94. package/build/tools/harness-list.d.ts.map +1 -1
  95. package/build/tools/harness-list.js +18 -2
  96. package/build/tools/harness-list.js.map +1 -1
  97. package/build/tools/harness-schema.d.ts +2 -1
  98. package/build/tools/harness-schema.d.ts.map +1 -1
  99. package/build/tools/harness-schema.js +10 -8
  100. package/build/tools/harness-schema.js.map +1 -1
  101. package/build/tools/harness-update.d.ts.map +1 -1
  102. package/build/tools/harness-update.js +5 -1
  103. package/build/tools/harness-update.js.map +1 -1
  104. package/build/tools/index.js +1 -1
  105. package/build/tools/index.js.map +1 -1
  106. package/build/utils/url-parser.d.ts +2 -0
  107. package/build/utils/url-parser.d.ts.map +1 -1
  108. package/build/utils/url-parser.js +55 -0
  109. package/build/utils/url-parser.js.map +1 -1
  110. package/npm-shrinkwrap.json +2 -2
  111. package/package.json +1 -1
@@ -3,6 +3,7 @@
3
3
  const schema = {
4
4
  "type": "object",
5
5
  "title": "pipeline_v1",
6
+ "additionalProperties": false,
6
7
  "required": [
7
8
  "pipeline"
8
9
  ],
@@ -17,11 +18,13 @@ const schema = {
17
18
  "$ref": "#/definitions/pipeline_v1/pipeline"
18
19
  }
19
20
  },
21
+ "$schema": "http://json-schema.org/draft-07/schema#",
20
22
  "definitions": {
21
23
  "pipeline_v1": {
22
24
  "pipeline": {
23
25
  "type": "object",
24
26
  "title": "pipeline",
27
+ "additionalProperties": false,
25
28
  "properties": {
26
29
  "id": {
27
30
  "type": "string",
@@ -31,6 +34,10 @@ const schema = {
31
34
  "type": "string",
32
35
  "pattern": "^[a-zA-Z_0-9-.][-0-9a-zA-Z_\\s.]{0,127}$"
33
36
  },
37
+ "description": {
38
+ "type": "string",
39
+ "description": "Description of the pipeline."
40
+ },
34
41
  "clone": {
35
42
  "$ref": "#/definitions/pipeline_v1/Clone"
36
43
  },
@@ -111,6 +118,7 @@ const schema = {
111
118
  "Clone": {
112
119
  "title": "Clone",
113
120
  "type": "object",
121
+ "additionalProperties": false,
114
122
  "description": "Clone defines the default clone behavior.",
115
123
  "properties": {
116
124
  "depth": {
@@ -842,6 +850,7 @@ const schema = {
842
850
  "title": "TemplateRef",
843
851
  "description": "Template identifier and input configuration.",
844
852
  "type": "object",
853
+ "additionalProperties": false,
845
854
  "required": [
846
855
  "uses"
847
856
  ],
@@ -878,6 +887,7 @@ const schema = {
878
887
  "StrategyConfigV1": {
879
888
  "title": "StrategyConfigV1",
880
889
  "type": "object",
890
+ "additionalProperties": false,
881
891
  "description": "Strategy defines execution strategy configuration (matrix, for, while, repeat).",
882
892
  "properties": {
883
893
  "max-parallel": {
@@ -905,73 +915,69 @@ const schema = {
905
915
  "if": {
906
916
  "description": "Conditional expression to determine whether the strategy should execute. Supports expressions.",
907
917
  "type": "string"
918
+ },
919
+ "matrix": {
920
+ "description": "Matrix strategy for parallel execution across dimensions. Supports expressions.",
921
+ "oneOf": [
922
+ {
923
+ "$ref": "#/definitions/pipeline_v1/common/MatrixConfigV1"
924
+ },
925
+ {
926
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
927
+ }
928
+ ]
929
+ },
930
+ "for": {
931
+ "description": "For-loop strategy configuration. Supports expressions.",
932
+ "oneOf": [
933
+ {
934
+ "$ref": "#/definitions/pipeline_v1/common/ForConfigV1"
935
+ },
936
+ {
937
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
938
+ }
939
+ ]
940
+ },
941
+ "while": {
942
+ "description": "While-loop strategy configuration. Supports expressions.",
943
+ "oneOf": [
944
+ {
945
+ "$ref": "#/definitions/pipeline_v1/common/WhileConfigV1"
946
+ },
947
+ {
948
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
949
+ }
950
+ ]
951
+ },
952
+ "repeat": {
953
+ "description": "Repeat strategy configuration for iterating over items. Supports expressions.",
954
+ "oneOf": [
955
+ {
956
+ "$ref": "#/definitions/pipeline_v1/common/RepeatConfigV1"
957
+ },
958
+ {
959
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
960
+ }
961
+ ]
908
962
  }
909
963
  },
910
964
  "oneOf": [
911
965
  {
912
- "properties": {
913
- "matrix": {
914
- "oneOf": [
915
- {
916
- "$ref": "#/definitions/pipeline_v1/common/MatrixConfigV1"
917
- },
918
- {
919
- "$ref": "#/definitions/pipeline_v1/common/Expression"
920
- }
921
- ]
922
- }
923
- },
924
966
  "required": [
925
967
  "matrix"
926
968
  ]
927
969
  },
928
970
  {
929
- "properties": {
930
- "for": {
931
- "oneOf": [
932
- {
933
- "$ref": "#/definitions/pipeline_v1/common/ForConfigV1"
934
- },
935
- {
936
- "$ref": "#/definitions/pipeline_v1/common/Expression"
937
- }
938
- ]
939
- }
940
- },
941
971
  "required": [
942
972
  "for"
943
973
  ]
944
974
  },
945
975
  {
946
- "properties": {
947
- "while": {
948
- "oneOf": [
949
- {
950
- "$ref": "#/definitions/pipeline_v1/common/WhileConfigV1"
951
- },
952
- {
953
- "$ref": "#/definitions/pipeline_v1/common/Expression"
954
- }
955
- ]
956
- }
957
- },
958
976
  "required": [
959
977
  "while"
960
978
  ]
961
979
  },
962
980
  {
963
- "properties": {
964
- "repeat": {
965
- "oneOf": [
966
- {
967
- "$ref": "#/definitions/pipeline_v1/common/RepeatConfigV1"
968
- },
969
- {
970
- "$ref": "#/definitions/pipeline_v1/common/Expression"
971
- }
972
- ]
973
- }
974
- },
975
981
  "required": [
976
982
  "repeat"
977
983
  ]
@@ -1035,6 +1041,7 @@ const schema = {
1035
1041
  "ForConfigV1": {
1036
1042
  "title": "ForConfigV1",
1037
1043
  "type": "object",
1044
+ "additionalProperties": false,
1038
1045
  "description": "For loop strategy configuration.",
1039
1046
  "properties": {
1040
1047
  "iterations": {
@@ -1059,6 +1066,7 @@ const schema = {
1059
1066
  "WhileConfigV1": {
1060
1067
  "title": "WhileConfigV1",
1061
1068
  "type": "object",
1069
+ "additionalProperties": false,
1062
1070
  "description": "While loop strategy configuration.",
1063
1071
  "properties": {
1064
1072
  "iterations": {
@@ -1087,6 +1095,7 @@ const schema = {
1087
1095
  "RepeatConfigV1": {
1088
1096
  "title": "RepeatConfigV1",
1089
1097
  "type": "object",
1098
+ "additionalProperties": false,
1090
1099
  "description": "Repeat strategy configuration for iterating over items.",
1091
1100
  "properties": {
1092
1101
  "iterations": {
@@ -1187,6 +1196,7 @@ const schema = {
1187
1196
  "FailureConfigV1": {
1188
1197
  "title": "FailureConfigV1",
1189
1198
  "type": "object",
1199
+ "additionalProperties": false,
1190
1200
  "description": "Failure strategy configuration for handling errors.",
1191
1201
  "required": [
1192
1202
  "errors",
@@ -1304,6 +1314,7 @@ const schema = {
1304
1314
  "RetryFailureSpecConfigV1": {
1305
1315
  "title": "RetryFailureSpecConfigV1",
1306
1316
  "type": "object",
1317
+ "additionalProperties": false,
1307
1318
  "description": "Retry configuration for failure strategy.",
1308
1319
  "properties": {
1309
1320
  "attempts": {
@@ -1342,6 +1353,7 @@ const schema = {
1342
1353
  "ManualFailureSpecConfigV1": {
1343
1354
  "title": "ManualFailureSpecConfigV1",
1344
1355
  "type": "object",
1356
+ "additionalProperties": false,
1345
1357
  "description": "Manual intervention configuration for failure strategy.",
1346
1358
  "properties": {
1347
1359
  "timeout": {
@@ -1365,6 +1377,7 @@ const schema = {
1365
1377
  "RetryStepGroupFailureSpecConfigV1": {
1366
1378
  "title": "RetryStepGroupFailureSpecConfigV1",
1367
1379
  "type": "object",
1380
+ "additionalProperties": false,
1368
1381
  "description": "Retry step group configuration for failure strategy.",
1369
1382
  "properties": {
1370
1383
  "attempts": {
@@ -1400,6 +1413,7 @@ const schema = {
1400
1413
  "title": "OutputV1",
1401
1414
  "description": "Output variable definition for capturing step outputs.",
1402
1415
  "type": "object",
1416
+ "additionalProperties": false,
1403
1417
  "required": [
1404
1418
  "name"
1405
1419
  ],
@@ -1438,6 +1452,7 @@ const schema = {
1438
1452
  "title": "UnifiedTemplate",
1439
1453
  "description": "Template reference for steps, stages, or pipelines.",
1440
1454
  "type": "object",
1455
+ "additionalProperties": false,
1441
1456
  "properties": {
1442
1457
  "id": {
1443
1458
  "type": "string",
@@ -1477,6 +1492,10 @@ const schema = {
1477
1492
  },
1478
1493
  "sto": {
1479
1494
  "$ref": "#/definitions/pipeline_v1/common/TemplateRef"
1495
+ },
1496
+ "ai-eval": {
1497
+ "description": "Alias for AI evaluation step template.",
1498
+ "$ref": "#/definitions/pipeline_v1/common/TemplateRef"
1480
1499
  }
1481
1500
  },
1482
1501
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -1513,6 +1532,7 @@ const schema = {
1513
1532
  "title": "Reference",
1514
1533
  "description": "Reference defines a git clone reference.",
1515
1534
  "type": "object",
1535
+ "additionalProperties": false,
1516
1536
  "properties": {
1517
1537
  "name": {
1518
1538
  "description": "Name provides ref name (branch name, tag name, or PR number).",
@@ -1551,6 +1571,7 @@ const schema = {
1551
1571
  "Resource": {
1552
1572
  "title": "Resource",
1553
1573
  "type": "object",
1574
+ "additionalProperties": false,
1554
1575
  "description": "Resource defines container resource limits and requests.",
1555
1576
  "properties": {
1556
1577
  "limits": {
@@ -1567,6 +1588,7 @@ const schema = {
1567
1588
  "ResourceLimits": {
1568
1589
  "title": "ResourceLimits",
1569
1590
  "type": "object",
1591
+ "additionalProperties": false,
1570
1592
  "description": "ResourceLimits defines CPU and memory constraints.",
1571
1593
  "properties": {
1572
1594
  "cpu": {
@@ -1586,6 +1608,7 @@ const schema = {
1586
1608
  "title": "Repository",
1587
1609
  "description": "Repository defines a remote git repository.",
1588
1610
  "type": "object",
1611
+ "additionalProperties": false,
1589
1612
  "properties": {
1590
1613
  "connector": {
1591
1614
  "description": "Connector provides the repository connector.",
@@ -1595,7 +1618,8 @@ const schema = {
1595
1618
  "description": "Name provides the repository name.",
1596
1619
  "type": "string"
1597
1620
  }
1598
- }
1621
+ },
1622
+ "$schema": "http://json-schema.org/draft-07/schema#"
1599
1623
  },
1600
1624
  "On": {
1601
1625
  "title": "On",
@@ -1650,6 +1674,7 @@ const schema = {
1650
1674
  "title": "BranchFilter",
1651
1675
  "description": "BranchFilter defines branch filtering for push and pull_request events.",
1652
1676
  "type": "object",
1677
+ "additionalProperties": false,
1653
1678
  "properties": {
1654
1679
  "branches": {
1655
1680
  "type": "array",
@@ -1664,6 +1689,7 @@ const schema = {
1664
1689
  "title": "NotificationRules",
1665
1690
  "description": "NotificationRules defines notification configuration for pipeline events.",
1666
1691
  "type": "object",
1692
+ "additionalProperties": false,
1667
1693
  "properties": {
1668
1694
  "id": {
1669
1695
  "type": "string",
@@ -1805,6 +1831,7 @@ const schema = {
1805
1831
  "title": "NotificationEvent",
1806
1832
  "description": "NotificationEvent defines event types that trigger notifications.",
1807
1833
  "type": "object",
1834
+ "additionalProperties": false,
1808
1835
  "properties": {
1809
1836
  "pipeline": {
1810
1837
  "description": "Pipeline-level events.",
@@ -1967,6 +1994,7 @@ const schema = {
1967
1994
  "title": "PmsEmailChannel",
1968
1995
  "description": "Email notification channel configuration.",
1969
1996
  "type": "object",
1997
+ "additionalProperties": false,
1970
1998
  "properties": {
1971
1999
  "user-groups": {
1972
2000
  "description": "List of user group references.",
@@ -1996,6 +2024,7 @@ const schema = {
1996
2024
  "title": "PmsSlackChannel",
1997
2025
  "description": "Slack notification channel configuration.",
1998
2026
  "type": "object",
2027
+ "additionalProperties": false,
1999
2028
  "properties": {
2000
2029
  "user-groups": {
2001
2030
  "description": "List of user group references.",
@@ -2022,6 +2051,7 @@ const schema = {
2022
2051
  "title": "PmsMSTeamChannel",
2023
2052
  "description": "Microsoft Teams notification channel configuration.",
2024
2053
  "type": "object",
2054
+ "additionalProperties": false,
2025
2055
  "properties": {
2026
2056
  "keys": {
2027
2057
  "description": "List of MS Teams webhook keys.",
@@ -2051,6 +2081,7 @@ const schema = {
2051
2081
  "title": "PmsWebhookChannel",
2052
2082
  "description": "Webhook notification channel configuration.",
2053
2083
  "type": "object",
2084
+ "additionalProperties": false,
2054
2085
  "properties": {
2055
2086
  "url": {
2056
2087
  "description": "Webhook URL.",
@@ -2070,6 +2101,7 @@ const schema = {
2070
2101
  "title": "PmsPagerDutyChannel",
2071
2102
  "description": "PagerDuty notification channel configuration.",
2072
2103
  "type": "object",
2104
+ "additionalProperties": false,
2073
2105
  "properties": {
2074
2106
  "user-groups": {
2075
2107
  "description": "List of user group references.",
@@ -2096,6 +2128,7 @@ const schema = {
2096
2128
  "title": "PmsDatadogChannel",
2097
2129
  "description": "Datadog notification channel configuration.",
2098
2130
  "type": "object",
2131
+ "additionalProperties": false,
2099
2132
  "properties": {
2100
2133
  "api-key": {
2101
2134
  "description": "Datadog API key.",
@@ -2325,6 +2358,7 @@ const schema = {
2325
2358
  "title": "UnifiedStageNodeV1",
2326
2359
  "description": "Unified stage node supporting CI, CD, IaCM and other stage types.",
2327
2360
  "type": "object",
2361
+ "additionalProperties": false,
2328
2362
  "required": [
2329
2363
  "steps"
2330
2364
  ],
@@ -2352,10 +2386,6 @@ const schema = {
2352
2386
  "type": "string",
2353
2387
  "description": "Conditional execution expression. Stage is skipped if condition resolves to false."
2354
2388
  },
2355
- "variables": {
2356
- "description": "Stage-level variables.",
2357
- "$ref": "#/definitions/pipeline_v1/common/NGVariableV1Wrapper"
2358
- },
2359
2389
  "inputs": {
2360
2390
  "description": "Stage-level input variables.",
2361
2391
  "$ref": "#/definitions/pipeline_v1/common/NGVariableV1Wrapper"
@@ -2810,6 +2840,7 @@ const schema = {
2810
2840
  "title": "Toleration",
2811
2841
  "description": "Kubernetes pod toleration.",
2812
2842
  "type": "object",
2843
+ "additionalProperties": false,
2813
2844
  "properties": {
2814
2845
  "effect": {
2815
2846
  "description": "Toleration effect. Supports expressions.",
@@ -2846,6 +2877,7 @@ const schema = {
2846
2877
  "title": "CIVolumeV1",
2847
2878
  "description": "CI volume configuration. Type determined by 'uses' property.",
2848
2879
  "type": "object",
2880
+ "additionalProperties": false,
2849
2881
  "required": [
2850
2882
  "uses",
2851
2883
  "with"
@@ -2865,6 +2897,10 @@ const schema = {
2865
2897
  "config-map",
2866
2898
  "secret"
2867
2899
  ]
2900
+ },
2901
+ "with": {
2902
+ "description": "Volume-specific configuration; shape determined by `uses`.",
2903
+ "type": "object"
2868
2904
  }
2869
2905
  },
2870
2906
  "allOf": [
@@ -2955,6 +2991,7 @@ const schema = {
2955
2991
  "title": "EmptyDirYamlV1Spec",
2956
2992
  "description": "EmptyDir volume specification.",
2957
2993
  "type": "object",
2994
+ "additionalProperties": false,
2958
2995
  "required": [
2959
2996
  "mount-path"
2960
2997
  ],
@@ -2978,6 +3015,7 @@ const schema = {
2978
3015
  "title": "PersistentVolumeClaimYamlSpecV1",
2979
3016
  "description": "PersistentVolumeClaim volume specification.",
2980
3017
  "type": "object",
3018
+ "additionalProperties": false,
2981
3019
  "required": [
2982
3020
  "mount-path",
2983
3021
  "claim-name"
@@ -3009,6 +3047,7 @@ const schema = {
3009
3047
  "title": "HostPathYamlSpecV1",
3010
3048
  "description": "HostPath volume specification.",
3011
3049
  "type": "object",
3050
+ "additionalProperties": false,
3012
3051
  "required": [
3013
3052
  "mount-path",
3014
3053
  "path"
@@ -3033,6 +3072,7 @@ const schema = {
3033
3072
  "title": "ConfigMapVolumeYamlSpecV1",
3034
3073
  "description": "ConfigMap volume specification.",
3035
3074
  "type": "object",
3075
+ "additionalProperties": false,
3036
3076
  "required": [
3037
3077
  "mount-path",
3038
3078
  "name"
@@ -3064,6 +3104,7 @@ const schema = {
3064
3104
  "title": "SecretVolumeYamlSpecV1",
3065
3105
  "description": "Secret volume specification.",
3066
3106
  "type": "object",
3107
+ "additionalProperties": false,
3067
3108
  "required": [
3068
3109
  "mount-path",
3069
3110
  "name"
@@ -3095,6 +3136,7 @@ const schema = {
3095
3136
  "title": "SecurityContextV1",
3096
3137
  "description": "Kubernetes pod security context.",
3097
3138
  "type": "object",
3139
+ "additionalProperties": false,
3098
3140
  "properties": {
3099
3141
  "allow-privilege-escalation": {
3100
3142
  "description": "Whether to allow privilege escalation. Supports expressions.",
@@ -3184,6 +3226,7 @@ const schema = {
3184
3226
  "title": "Capabilities",
3185
3227
  "description": "Container capabilities configuration.",
3186
3228
  "type": "object",
3229
+ "additionalProperties": false,
3187
3230
  "properties": {
3188
3231
  "add": {
3189
3232
  "description": "Capabilities to add. Supports expressions.",
@@ -3403,7 +3446,7 @@ const schema = {
3403
3446
  ],
3404
3447
  "properties": {
3405
3448
  "group": {
3406
- "description": "Environment group configuration.",
3449
+ "description": "Environment group configuration, or an expression (e.g. <+input>).",
3407
3450
  "$ref": "#/definitions/pipeline_v1/stages/unified/EnvironmentGroup"
3408
3451
  },
3409
3452
  "parallel": {
@@ -3680,44 +3723,52 @@ const schema = {
3680
3723
  },
3681
3724
  "EnvironmentGroup": {
3682
3725
  "title": "EnvironmentGroup",
3683
- "description": "Environment group configuration.",
3684
- "type": "object",
3685
- "required": [
3686
- "id"
3687
- ],
3688
- "properties": {
3689
- "id": {
3690
- "description": "Environment group identifier.",
3691
- "type": "string"
3692
- },
3693
- "parallel": {
3694
- "description": "Execute environments in parallel (all at once). Defaults to false, so environments run one at a time (serially) unless set to true.",
3695
- "oneOf": [
3696
- {
3697
- "type": "boolean",
3698
- "default": false
3726
+ "description": "Environment group configuration, or an expression.",
3727
+ "oneOf": [
3728
+ {
3729
+ "type": "object",
3730
+ "required": [
3731
+ "id"
3732
+ ],
3733
+ "properties": {
3734
+ "id": {
3735
+ "description": "Environment group identifier.",
3736
+ "type": "string"
3699
3737
  },
3700
- {
3701
- "$ref": "#/definitions/pipeline_v1/common/Expression"
3738
+ "parallel": {
3739
+ "description": "Execute environments in parallel (all at once). Defaults to false, so environments run one at a time (serially) unless set to true.",
3740
+ "oneOf": [
3741
+ {
3742
+ "type": "boolean",
3743
+ "default": false
3744
+ },
3745
+ {
3746
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
3747
+ }
3748
+ ]
3749
+ },
3750
+ "items": {
3751
+ "description": "List of environments from the group.",
3752
+ "$ref": "#/definitions/pipeline_v1/stages/unified/EnvironmentItems"
3753
+ },
3754
+ "filters": {
3755
+ "description": "Filters for selecting environments and infrastructures.",
3756
+ "$ref": "#/definitions/pipeline_v1/stages/unified/Filters"
3702
3757
  }
3703
- ]
3704
- },
3705
- "items": {
3706
- "description": "List of environments from the group.",
3707
- "$ref": "#/definitions/pipeline_v1/stages/unified/EnvironmentItems"
3758
+ },
3759
+ "additionalProperties": false
3708
3760
  },
3709
- "filters": {
3710
- "description": "Filters for selecting environments and infrastructures.",
3711
- "$ref": "#/definitions/pipeline_v1/stages/unified/Filters"
3761
+ {
3762
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
3712
3763
  }
3713
- },
3714
- "additionalProperties": false,
3764
+ ],
3715
3765
  "$schema": "http://json-schema.org/draft-07/schema#"
3716
3766
  },
3717
3767
  "CachingV1": {
3718
3768
  "title": "CachingV1",
3719
3769
  "description": "Cache intelligence configuration.",
3720
3770
  "type": "object",
3771
+ "additionalProperties": false,
3721
3772
  "properties": {
3722
3773
  "enabled": {
3723
3774
  "description": "Whether caching is enabled. Supports expressions.",
@@ -3730,7 +3781,7 @@ const schema = {
3730
3781
  }
3731
3782
  ]
3732
3783
  },
3733
- "path": {
3784
+ "paths": {
3734
3785
  "description": "Paths to cache. Supports expressions.",
3735
3786
  "oneOf": [
3736
3787
  {
@@ -3760,6 +3811,41 @@ const schema = {
3760
3811
  "push",
3761
3812
  "pull-push"
3762
3813
  ]
3814
+ },
3815
+ "connector": {
3816
+ "description": "Cache storage connector. Supports expressions.",
3817
+ "type": "string"
3818
+ },
3819
+ "region": {
3820
+ "description": "Cache storage region. Supports expressions.",
3821
+ "type": "string"
3822
+ },
3823
+ "bucket_name": {
3824
+ "description": "Cache storage bucket name. Supports expressions.",
3825
+ "type": "string"
3826
+ },
3827
+ "container_name": {
3828
+ "description": "Cache storage container name. Supports expressions.",
3829
+ "type": "string"
3830
+ },
3831
+ "storage_account": {
3832
+ "description": "Cache storage account name. Supports expressions.",
3833
+ "type": "string"
3834
+ },
3835
+ "user": {
3836
+ "description": "User ID to run cache containers as. Supports expressions.",
3837
+ "oneOf": [
3838
+ {
3839
+ "type": "integer"
3840
+ },
3841
+ {
3842
+ "type": "string"
3843
+ }
3844
+ ]
3845
+ },
3846
+ "resources": {
3847
+ "description": "Cache container resource limits and requests.",
3848
+ "$ref": "#/definitions/pipeline_v1/Resource"
3763
3849
  }
3764
3850
  },
3765
3851
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -3768,6 +3854,7 @@ const schema = {
3768
3854
  "title": "BuildIntelligenceV1",
3769
3855
  "description": "Build intelligence configuration for test optimization.",
3770
3856
  "type": "object",
3857
+ "additionalProperties": false,
3771
3858
  "properties": {
3772
3859
  "enabled": {
3773
3860
  "description": "Whether build intelligence is enabled. Supports expressions.",
@@ -3779,6 +3866,49 @@ const schema = {
3779
3866
  "$ref": "#/definitions/pipeline_v1/common/Expression"
3780
3867
  }
3781
3868
  ]
3869
+ },
3870
+ "port": {
3871
+ "description": "Build intelligence cache service port. Supports expressions.",
3872
+ "type": "string"
3873
+ },
3874
+ "maven-url": {
3875
+ "description": "Maven repository URL used by build intelligence. Supports expressions.",
3876
+ "type": "string"
3877
+ },
3878
+ "connector": {
3879
+ "description": "Build intelligence storage connector. Supports expressions.",
3880
+ "type": "string"
3881
+ },
3882
+ "region": {
3883
+ "description": "Build intelligence storage region. Supports expressions.",
3884
+ "type": "string"
3885
+ },
3886
+ "bucket_name": {
3887
+ "description": "Build intelligence storage bucket name. Supports expressions.",
3888
+ "type": "string"
3889
+ },
3890
+ "container_name": {
3891
+ "description": "Build intelligence storage container name. Supports expressions.",
3892
+ "type": "string"
3893
+ },
3894
+ "storage_account": {
3895
+ "description": "Build intelligence storage account name. Supports expressions.",
3896
+ "type": "string"
3897
+ },
3898
+ "user": {
3899
+ "description": "User ID to run build intelligence containers as. Supports expressions.",
3900
+ "oneOf": [
3901
+ {
3902
+ "type": "integer"
3903
+ },
3904
+ {
3905
+ "type": "string"
3906
+ }
3907
+ ]
3908
+ },
3909
+ "resources": {
3910
+ "description": "Build intelligence container resource limits and requests.",
3911
+ "$ref": "#/definitions/pipeline_v1/Resource"
3782
3912
  }
3783
3913
  },
3784
3914
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -3850,6 +3980,7 @@ const schema = {
3850
3980
  "title": "PipelineStageOutputs",
3851
3981
  "description": "Output configuration for pipeline stage.",
3852
3982
  "type": "object",
3983
+ "additionalProperties": false,
3853
3984
  "required": [
3854
3985
  "name",
3855
3986
  "value"
@@ -3871,6 +4002,7 @@ const schema = {
3871
4002
  "title": "DynamicStageNodeV1",
3872
4003
  "description": "Dynamic stage node for executing child pipelines from inline or remote sources.",
3873
4004
  "type": "object",
4005
+ "additionalProperties": false,
3874
4006
  "required": [
3875
4007
  "dynamic"
3876
4008
  ],
@@ -3891,16 +4023,13 @@ const schema = {
3891
4023
  "description": "Conditional execution expression. Stage is skipped if condition resolves to false.",
3892
4024
  "type": "string"
3893
4025
  },
3894
- "variables": {
3895
- "description": "Stage-level variables.",
3896
- "$ref": "#/definitions/pipeline_v1/common/NGVariableV1Wrapper"
3897
- },
3898
4026
  "on-failure": {
3899
4027
  "$ref": "#/definitions/pipeline_v1/common/OnFailure"
3900
4028
  },
3901
4029
  "dynamic": {
3902
4030
  "description": "Dynamic stage configuration.",
3903
4031
  "type": "object",
4032
+ "additionalProperties": false,
3904
4033
  "properties": {
3905
4034
  "source": {
3906
4035
  "description": "Base64 encoded inline child pipeline YAML.",
@@ -3912,6 +4041,7 @@ const schema = {
3912
4041
  "source-config": {
3913
4042
  "description": "Remote source configuration for child pipeline.",
3914
4043
  "type": "object",
4044
+ "additionalProperties": false,
3915
4045
  "required": [
3916
4046
  "uses",
3917
4047
  "with"
@@ -3927,6 +4057,7 @@ const schema = {
3927
4057
  "with": {
3928
4058
  "description": "Git source configuration.",
3929
4059
  "type": "object",
4060
+ "additionalProperties": false,
3930
4061
  "required": [
3931
4062
  "repo",
3932
4063
  "path"
@@ -3977,6 +4108,7 @@ const schema = {
3977
4108
  "title": "ParallelStages",
3978
4109
  "description": "Parallel stages execution configuration.",
3979
4110
  "type": "object",
4111
+ "additionalProperties": false,
3980
4112
  "required": [
3981
4113
  "parallel"
3982
4114
  ],
@@ -3984,6 +4116,7 @@ const schema = {
3984
4116
  "parallel": {
3985
4117
  "description": "Stages to execute in parallel.",
3986
4118
  "type": "object",
4119
+ "additionalProperties": false,
3987
4120
  "required": [
3988
4121
  "stages"
3989
4122
  ],
@@ -4004,6 +4137,7 @@ const schema = {
4004
4137
  "title": "GroupStages",
4005
4138
  "description": "Group of stages executed sequentially.",
4006
4139
  "type": "object",
4140
+ "additionalProperties": false,
4007
4141
  "required": [
4008
4142
  "group"
4009
4143
  ],
@@ -4011,6 +4145,7 @@ const schema = {
4011
4145
  "group": {
4012
4146
  "description": "Group configuration.",
4013
4147
  "type": "object",
4148
+ "additionalProperties": false,
4014
4149
  "properties": {
4015
4150
  "id": {
4016
4151
  "description": "Unique identifier for the group.",
@@ -4152,6 +4287,11 @@ const schema = {
4152
4287
  "required": [
4153
4288
  "sto"
4154
4289
  ]
4290
+ },
4291
+ {
4292
+ "required": [
4293
+ "ai-eval"
4294
+ ]
4155
4295
  }
4156
4296
  ]
4157
4297
  },
@@ -4318,6 +4458,11 @@ const schema = {
4318
4458
  "required": [
4319
4459
  "sto"
4320
4460
  ]
4461
+ },
4462
+ {
4463
+ "required": [
4464
+ "ai-eval"
4465
+ ]
4321
4466
  }
4322
4467
  ]
4323
4468
  },
@@ -4338,6 +4483,7 @@ const schema = {
4338
4483
  "title": "StepNodeV1",
4339
4484
  "description": "Unified step node for CI/CD pipelines.",
4340
4485
  "type": "object",
4486
+ "additionalProperties": false,
4341
4487
  "anyOf": [
4342
4488
  {
4343
4489
  "required": [
@@ -4369,7 +4515,7 @@ const schema = {
4369
4515
  "description": "Display name of the step.",
4370
4516
  "type": "string"
4371
4517
  },
4372
- "desc": {
4518
+ "description": {
4373
4519
  "description": "Description of the step.",
4374
4520
  "type": "string"
4375
4521
  },
@@ -4451,6 +4597,7 @@ const schema = {
4451
4597
  "title": "PolicyConfig",
4452
4598
  "description": "Policy enforcement configuration.",
4453
4599
  "type": "object",
4600
+ "additionalProperties": false,
4454
4601
  "properties": {
4455
4602
  "policySets": {
4456
4603
  "description": "Policy sets to enforce.",
@@ -4466,6 +4613,7 @@ const schema = {
4466
4613
  "title": "RunStepInfoV1",
4467
4614
  "description": "Run step configuration for executing scripts.",
4468
4615
  "type": "object",
4616
+ "additionalProperties": false,
4469
4617
  "properties": {
4470
4618
  "shell": {
4471
4619
  "description": "Shell type to use. Supports expressions.",
@@ -4514,6 +4662,7 @@ const schema = {
4514
4662
  "oneOf": [
4515
4663
  {
4516
4664
  "type": "object",
4665
+ "additionalProperties": false,
4517
4666
  "properties": {
4518
4667
  "source": {
4519
4668
  "description": "Source URL to download from.",
@@ -4530,6 +4679,13 @@ const schema = {
4530
4679
  "fallback": {
4531
4680
  "description": "Fallback URL if primary source fails.",
4532
4681
  "type": "string"
4682
+ },
4683
+ "entrypoint": {
4684
+ "description": "Entrypoint command and arguments for the downloaded binary.",
4685
+ "type": "array",
4686
+ "items": {
4687
+ "type": "string"
4688
+ }
4533
4689
  }
4534
4690
  }
4535
4691
  },
@@ -4541,6 +4697,7 @@ const schema = {
4541
4697
  "output-alias": {
4542
4698
  "description": "Output alias configuration for exporting variables.",
4543
4699
  "type": "object",
4700
+ "additionalProperties": false,
4544
4701
  "required": [
4545
4702
  "key",
4546
4703
  "scope"
@@ -4568,6 +4725,7 @@ const schema = {
4568
4725
  "title": "Container",
4569
4726
  "description": "Container configuration for step execution.",
4570
4727
  "type": "object",
4728
+ "additionalProperties": false,
4571
4729
  "properties": {
4572
4730
  "image": {
4573
4731
  "description": "Container image to use. Supports expressions.",
@@ -4809,6 +4967,7 @@ const schema = {
4809
4967
  "title": "RunTestsStepInfoV1",
4810
4968
  "description": "Run tests step configuration for test intelligence.",
4811
4969
  "type": "object",
4970
+ "additionalProperties": false,
4812
4971
  "properties": {
4813
4972
  "shell": {
4814
4973
  "description": "Shell type to use. Supports expressions.",
@@ -4862,6 +5021,7 @@ const schema = {
4862
5021
  "intelligence": {
4863
5022
  "description": "Test intelligence configuration.",
4864
5023
  "type": "object",
5024
+ "additionalProperties": false,
4865
5025
  "properties": {
4866
5026
  "disabled": {
4867
5027
  "description": "Whether test intelligence is disabled. Supports expressions.",
@@ -4924,7 +5084,7 @@ const schema = {
4924
5084
  "description": "Display name of the step.",
4925
5085
  "type": "string"
4926
5086
  },
4927
- "desc": {
5087
+ "description": {
4928
5088
  "description": "Description of the step.",
4929
5089
  "type": "string"
4930
5090
  },
@@ -5153,6 +5313,56 @@ const schema = {
5153
5313
  "$ref": "#/definitions/pipeline_v1/common/Expression"
5154
5314
  }
5155
5315
  ]
5316
+ },
5317
+ "user-groups": {
5318
+ "description": "User groups for approval when the advisory decision requires gating. Supports single value or array. Supports expressions.",
5319
+ "oneOf": [
5320
+ {
5321
+ "type": "array",
5322
+ "items": {
5323
+ "type": "string"
5324
+ }
5325
+ },
5326
+ {
5327
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
5328
+ }
5329
+ ]
5330
+ },
5331
+ "service-accounts": {
5332
+ "description": "Service accounts for approval when the advisory decision requires gating. Supports single value or array. Supports expressions.",
5333
+ "oneOf": [
5334
+ {
5335
+ "type": "array",
5336
+ "items": {
5337
+ "type": "string"
5338
+ }
5339
+ },
5340
+ {
5341
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
5342
+ }
5343
+ ]
5344
+ },
5345
+ "approvers-min-count": {
5346
+ "description": "Minimum number of approvers required when the advisory decision requires gating. Supports expressions.",
5347
+ "oneOf": [
5348
+ {
5349
+ "type": "integer"
5350
+ },
5351
+ {
5352
+ "type": "string"
5353
+ }
5354
+ ]
5355
+ },
5356
+ "block-executor": {
5357
+ "description": "Block pipeline executor from approving when the advisory decision requires gating. Supports expressions.",
5358
+ "oneOf": [
5359
+ {
5360
+ "type": "boolean"
5361
+ },
5362
+ {
5363
+ "$ref": "#/definitions/pipeline_v1/common/Expression"
5364
+ }
5365
+ ]
5156
5366
  }
5157
5367
  }
5158
5368
  }
@@ -5570,12 +5780,14 @@ const schema = {
5570
5780
  "title": "ParallelSteps",
5571
5781
  "description": "Defines a list of steps to be executed in parallel.",
5572
5782
  "type": "object",
5783
+ "additionalProperties": false,
5573
5784
  "required": [
5574
5785
  "parallel"
5575
5786
  ],
5576
5787
  "properties": {
5577
5788
  "parallel": {
5578
5789
  "type": "object",
5790
+ "additionalProperties": false,
5579
5791
  "required": [
5580
5792
  "steps"
5581
5793
  ],
@@ -5614,7 +5826,7 @@ const schema = {
5614
5826
  "type": "string",
5615
5827
  "description": "Display name of the step group."
5616
5828
  },
5617
- "desc": {
5829
+ "description": {
5618
5830
  "type": "string",
5619
5831
  "description": "Description of the step group."
5620
5832
  },