@opensoha/contracts 0.1.24 → 0.1.26

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 (137) hide show
  1. package/COMPATIBILITY.md +24 -0
  2. package/README.md +1 -1
  3. package/agent/environment/export.go +1 -0
  4. package/agent/environment/protocol_test.go +1 -1
  5. package/agent/guest/protocol_test.go +2 -2
  6. package/auth/catalog_generated.go +2 -2
  7. package/auth/gateway_permissions_test.go +48 -0
  8. package/auth/permission-catalog.json +300 -1
  9. package/compat/consumer-revisions.json +1 -1
  10. package/compat/json-schema-ecosystem-0.1.0.json +1 -1
  11. package/compat/openapi-loose-boundaries-0.1.0.json +1 -1
  12. package/delivery/document.schema.json +127 -9
  13. package/examples/relations_compat_test.go +18 -0
  14. package/fixtures/openapi/DeliveryDocument/invalid/migration-missing-guide-build-template.json +30 -0
  15. package/fixtures/openapi/DeliveryDocument/invalid/migration-missing-guide-deployment-template.json +30 -0
  16. package/fixtures/openapi/DeliveryDocument/invalid/migration-missing-guide-workflow-template.json +27 -0
  17. package/fixtures/openapi/DeliveryDocument/valid/migration-build-template.json +31 -0
  18. package/fixtures/openapi/DeliveryDocument/valid/migration-deployment-template.json +31 -0
  19. package/fixtures/openapi/DeliveryDocument/valid/migration-workflow-template.json +28 -0
  20. package/fixtures/openapi/DeliveryPlanInput/invalid/manual-plan.json +7 -0
  21. package/fixtures/openapi/DeliveryPlanInput/valid/manual-plan.json +6 -0
  22. package/fixtures/openapi/DeliveryTargetInput/invalid/candidate-on-runtime-deploy.json +9 -0
  23. package/fixtures/openapi/DeliveryTargetInput/invalid/config-update-missing-service.json +7 -0
  24. package/fixtures/openapi/DeliveryTargetInput/valid/template-configuration-only.json +8 -0
  25. package/fixtures/openapi/DeliveryTargetInput/valid/template-configuration-without-runtime-environment.json +1 -0
  26. package/fixtures/openapi/KubernetesAgentActionCheck/invalid/unproven-state.json +6 -0
  27. package/fixtures/openapi/KubernetesAgentActionCheck/valid/configured-denied.json +9 -0
  28. package/fixtures/openapi/KubernetesAgentActionProfile/invalid/wildcard.json +1 -0
  29. package/fixtures/openapi/KubernetesAgentActionProfile/valid/workbench.json +1 -0
  30. package/fixtures/openapi/KubernetesClusterRegistrationRequest/invalid/action-profile.json +3 -0
  31. package/fixtures/openapi/KubernetesClusterRegistrationRequest/valid/action-profile.json +5 -0
  32. package/fixtures/openapi/KubernetesImportCandidateListEnvelope/invalid/source-with-spec.json +33 -0
  33. package/fixtures/openapi/KubernetesImportCandidateListEnvelope/invalid/source-without-uid.json +29 -0
  34. package/fixtures/openapi/KubernetesImportCandidateListEnvelope/valid/stable-source.json +30 -0
  35. package/fixtures/openapi/KubernetesNodeListEnvelope/invalid/condition-status-boolean.json +17 -0
  36. package/fixtures/openapi/KubernetesNodeListEnvelope/invalid/taint-effect-missing.json +16 -0
  37. package/fixtures/openapi/KubernetesNodeListEnvelope/valid/legacy-fields-absent.json +11 -0
  38. package/fixtures/openapi/KubernetesNodeListEnvelope/valid/no-taints.json +13 -0
  39. package/fixtures/openapi/KubernetesNodeListEnvelope/valid/ready-cordoned-tainted.json +28 -0
  40. package/fixtures/openapi/KubernetesNodeListEnvelope/valid/unknown-fields-null.json +13 -0
  41. package/fixtures/openapi/KubernetesPod/invalid/pod-uid.json +9 -0
  42. package/fixtures/openapi/KubernetesPod/valid/pod-uid.json +9 -0
  43. package/fixtures/openapi/KubernetesPodDetail/invalid/pod-uid.json +6 -0
  44. package/fixtures/openapi/KubernetesPodDetail/valid/pod-uid.json +6 -0
  45. package/fixtures/openapi/KubernetesServiceImportRequest/invalid/empty-source-uid.json +48 -0
  46. package/fixtures/openapi/KubernetesServiceImportRequest/valid/pinned-workloads-and-cr.json +48 -0
  47. package/fixtures/openapi/KubernetesTopologyCoverage/invalid/empty-as-success.json +5 -0
  48. package/fixtures/openapi/KubernetesTopologyCoverage/valid/not-installed.json +6 -0
  49. package/fixtures/openapi/KubernetesTopologyGraphEdge/invalid/negative-weight.json +8 -0
  50. package/fixtures/openapi/KubernetesTopologyGraphEdge/valid/zero-weight.json +20 -0
  51. package/fixtures/openapi/KubernetesTopologyGraphNode/invalid/fake-flow-kind.json +42 -0
  52. package/fixtures/openapi/KubernetesTopologyGraphNode/valid/rule.json +42 -0
  53. package/fixtures/openapi/KubernetesTopologySnapshot/invalid/raw-source-field.json +33 -0
  54. package/fixtures/openapi/KubernetesTopologySnapshot/valid/projected-source.json +32 -0
  55. package/fixtures/openapi/KubernetesTopologySnapshotRequest/invalid/arbitrary-gvr.json +8 -0
  56. package/fixtures/openapi/KubernetesTopologySnapshotRequest/valid/bounded-sources.json +11 -0
  57. package/fixtures/openapi/KubernetesTopologySourceQuery/invalid/cluster-namespace.json +4 -0
  58. package/fixtures/openapi/KubernetesTopologySourceQuery/valid/all-namespaces.json +4 -0
  59. package/fixtures/openapi/ManifestExecutionTaskPayload/invalid/initialization.json +7 -0
  60. package/fixtures/openapi/ManifestExecutionTaskPayload/valid/initialization.json +7 -0
  61. package/fixtures/openapi/ManifestRootResource/invalid/root.json +1 -0
  62. package/fixtures/openapi/ManifestRootResource/valid/root.json +1 -0
  63. package/fixtures/openapi/ResourceMonitoringPanel/invalid/unknown-quality.json +7 -0
  64. package/fixtures/openapi/ResourceMonitoringPanel/valid/not-collected.json +7 -0
  65. package/fixtures/openapi/ResourceMonitoringPoint/invalid/string-zero.json +4 -0
  66. package/fixtures/openapi/ResourceMonitoringPoint/valid/missing.json +4 -0
  67. package/fixtures/openapi/ResourceMonitoringPoint/valid/zero.json +4 -0
  68. package/fixtures/openapi/ResourceMonitoringView/invalid/raw-query.json +12 -0
  69. package/fixtures/openapi/ResourceMonitoringView/valid/unconfigured.json +12 -0
  70. package/fixtures/openapi/ResourceRelationConfig/invalid/executable-rule.json +17 -0
  71. package/fixtures/openapi/ResourceRelationConfig/valid/unknown-kind.json +13 -0
  72. package/fixtures/openapi/ServiceDeploymentTemplateInput/invalid/migration-missing-guide-valid-yaml.json +38 -0
  73. package/fixtures/openapi/ServiceDeploymentTemplateInput/valid/migration-valid-yaml.json +39 -0
  74. package/fixtures/openapi/TemplateMigrationAssessment/invalid/initialization.json +9 -0
  75. package/fixtures/openapi/TemplateMigrationAssessment/valid/initialization.json +9 -0
  76. package/fixtures/openapi/TemplateMigrationPolicy/invalid/blank-guide.json +5 -0
  77. package/fixtures/openapi/TemplateMigrationPolicy/invalid/missing-guide.json +4 -0
  78. package/fixtures/openapi/TemplateMigrationPolicy/invalid/unknown-escape-hatch.json +6 -0
  79. package/fixtures/openapi/TemplateMigrationPolicy/valid/legacy-safe.json +4 -0
  80. package/fixtures/openapi/TemplateMigrationPolicy/valid/ordered-data-change.json +5 -0
  81. package/fixtures/openapi/TemplateUpdateBatchInput/invalid/duplicate-candidates.json +11 -0
  82. package/fixtures/openapi/TemplateUpdateBatchInput/invalid/empty-identities.json +10 -0
  83. package/fixtures/openapi/TemplateUpdateBatchInput/valid/staged-adoption.json +10 -0
  84. package/fixtures/openapi/TemplateUpdatePolicyInput/invalid/unknown-mode.json +8 -0
  85. package/fixtures/openapi/TemplateUpdatePolicyInput/valid/explicit-automatic.json +8 -0
  86. package/fixtures/openapi/TemplateUpdatePreviewInput/invalid/empty-identities.json +10 -0
  87. package/fixtures/openapi/TemplateUpdatePreviewInput/invalid/empty-targets.json +6 -0
  88. package/fixtures/openapi/TemplateUpdatePreviewInput/valid/cross-version-manual.json +14 -0
  89. package/gen/go/sohaapi/client.go +1 -1
  90. package/gen/go/sohaapi/client_test.go +2 -2
  91. package/gen/go/sohaapi/import_source_compat_test.go +12 -0
  92. package/gen/go/sohaapi/kubernetes_monitoring_test.go +67 -0
  93. package/gen/go/sohaapi/types.go +2210 -387
  94. package/gen/ts/sohaapi/index.ts +1862 -5
  95. package/go.mod +2 -2
  96. package/helmrelease/delivery.go +4 -1
  97. package/helmrelease/initialization.go +10 -0
  98. package/helmrelease/runtime/delivery.go +40 -10
  99. package/helmrelease/runtime/delivery_test.go +4 -0
  100. package/helmrelease/runtime/initialization.go +186 -0
  101. package/helmrelease/runtime/initialization_test.go +203 -0
  102. package/openapi/soha-api.json +5514 -1179
  103. package/openapi/soha-api.yaml +1080 -11
  104. package/openapi/spec_generated.go +3 -3
  105. package/openapi/spec_test.go +76 -0
  106. package/package.json +1 -1
  107. package/resource/agent_access.go +12 -0
  108. package/resource/agent_profiles.go +62 -0
  109. package/resource/agent_profiles_test.go +36 -0
  110. package/resource/kubernetes_kinds.go +73 -0
  111. package/resource/kubernetes_kinds_test.go +38 -0
  112. package/resource/models.go +25 -14
  113. package/resource/network_topology.go +166 -0
  114. package/resource/network_topology_projection.go +208 -0
  115. package/resource/network_topology_projection_test.go +53 -0
  116. package/resource/network_topology_test.go +51 -0
  117. package/resource/network_topology_validation.go +29 -0
  118. package/resource/node_drain.go +34 -0
  119. package/resource/relations.go +225 -0
  120. package/resource/relations_test.go +47 -0
  121. package/resource/resource_monitoring.go +99 -0
  122. package/resource/root_cr.go +38 -0
  123. package/resource/runtime/argocd_integration_test.go +1 -1
  124. package/resource/runtime/initialization.go +66 -0
  125. package/resource/runtime/initialization_test.go +80 -0
  126. package/resource/runtime/network_topology.go +232 -0
  127. package/resource/runtime/network_topology_test.go +62 -0
  128. package/resource/runtime/node_drain.go +124 -0
  129. package/resource/runtime/node_drain_test.go +95 -0
  130. package/resource/runtime/relations.go +161 -0
  131. package/resource/runtime/relations_test.go +100 -0
  132. package/resource/runtime/resource_edit.go +128 -0
  133. package/resource/runtime/resource_edit_test.go +183 -0
  134. package/resource/runtime/resource_monitoring.go +243 -0
  135. package/resource/runtime/resource_monitoring_test.go +88 -0
  136. package/resource/runtime/root_cr.go +79 -0
  137. package/resource/runtime/root_cr_test.go +118 -0
@@ -1317,6 +1317,40 @@ export interface paths {
1317
1317
  patch?: never;
1318
1318
  trace?: never;
1319
1319
  };
1320
+ "/application-environments/{applicationEnvironmentID}/targets/{targetID}/source": {
1321
+ parameters: {
1322
+ query?: never;
1323
+ header?: never;
1324
+ path?: never;
1325
+ cookie?: never;
1326
+ };
1327
+ /** @description Read a linked source through existing Kubernetes authorization. Rejects replaced UIDs. Custom resource YAML additionally requires sensitive-data read permission. Responses must not be persisted in browser caches. */
1328
+ get: operations["getApplicationEnvironmentTargetSource"];
1329
+ put?: never;
1330
+ post?: never;
1331
+ delete?: never;
1332
+ options?: never;
1333
+ head?: never;
1334
+ patch?: never;
1335
+ trace?: never;
1336
+ };
1337
+ "/application-environments/{applicationEnvironmentID}/targets/{targetID}/relations": {
1338
+ parameters: {
1339
+ query?: never;
1340
+ header?: never;
1341
+ path?: never;
1342
+ cookie?: never;
1343
+ };
1344
+ /** @description Read UID-verified metadata relationships for an imported root. Every source retains Kubernetes and Soha authorization. Rules are observational metadata, never permission grants. Partial coverage is explicit; no provider configuration values are returned. */
1345
+ get: operations["getApplicationEnvironmentTargetRelations"];
1346
+ put?: never;
1347
+ post?: never;
1348
+ delete?: never;
1349
+ options?: never;
1350
+ head?: never;
1351
+ patch?: never;
1352
+ trace?: never;
1353
+ };
1320
1354
  "/application-environments/target-candidates": {
1321
1355
  parameters: {
1322
1356
  query?: never;
@@ -2150,6 +2184,110 @@ export interface paths {
2150
2184
  patch?: never;
2151
2185
  trace?: never;
2152
2186
  };
2187
+ "/delivery/template-updates/targets": {
2188
+ parameters: {
2189
+ query?: never;
2190
+ header?: never;
2191
+ path?: never;
2192
+ cookie?: never;
2193
+ };
2194
+ /**
2195
+ * Preview affected application bindings with honest paginated totals
2196
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2197
+ */
2198
+ get: operations["listTemplateUpdateTargets"];
2199
+ put?: never;
2200
+ post?: never;
2201
+ delete?: never;
2202
+ options?: never;
2203
+ head?: never;
2204
+ patch?: never;
2205
+ trace?: never;
2206
+ };
2207
+ "/delivery/template-updates/previews": {
2208
+ parameters: {
2209
+ query?: never;
2210
+ header?: never;
2211
+ path?: never;
2212
+ cookie?: never;
2213
+ };
2214
+ get?: never;
2215
+ put?: never;
2216
+ /**
2217
+ * Freeze final template adoption and cumulative plus adjacent-version differences
2218
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2219
+ */
2220
+ post: operations["createTemplateUpdatePreview"];
2221
+ delete?: never;
2222
+ options?: never;
2223
+ head?: never;
2224
+ patch?: never;
2225
+ trace?: never;
2226
+ };
2227
+ "/delivery/template-updates/previews/{previewID}": {
2228
+ parameters: {
2229
+ query?: never;
2230
+ header?: never;
2231
+ path?: never;
2232
+ cookie?: never;
2233
+ };
2234
+ /**
2235
+ * Read a frozen adoption preview with current scope revalidation
2236
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2237
+ */
2238
+ get: operations["getTemplateUpdatePreview"];
2239
+ put?: never;
2240
+ post?: never;
2241
+ delete?: never;
2242
+ options?: never;
2243
+ head?: never;
2244
+ patch?: never;
2245
+ trace?: never;
2246
+ };
2247
+ "/delivery/template-updates/previews/{previewID}/batches": {
2248
+ parameters: {
2249
+ query?: never;
2250
+ header?: never;
2251
+ path?: never;
2252
+ cookie?: never;
2253
+ };
2254
+ get?: never;
2255
+ put?: never;
2256
+ /**
2257
+ * Adopt selected candidates in waves through existing DeliveryBatch and Plan approvals
2258
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2259
+ */
2260
+ post: operations["createTemplateUpdateBatch"];
2261
+ delete?: never;
2262
+ options?: never;
2263
+ head?: never;
2264
+ patch?: never;
2265
+ trace?: never;
2266
+ };
2267
+ "/delivery/template-updates/policies": {
2268
+ parameters: {
2269
+ query?: never;
2270
+ header?: never;
2271
+ path?: never;
2272
+ cookie?: never;
2273
+ };
2274
+ /**
2275
+ * List explicit adoption policies visible to the current principal
2276
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2277
+ */
2278
+ get: operations["listTemplateUpdatePolicies"];
2279
+ /**
2280
+ * Save fixed manual automatic or approval policy using a binding-scoped CAS
2281
+ * @description Uses current application and environment permissions. Published immutable template versions only; adoption changes configuration and never deploys resources. Fixed and detached bindings are excluded from automatic propagation. Concurrent changes return 409.
2282
+ */
2283
+ put: operations["saveTemplateUpdatePolicy"];
2284
+ post?: never;
2285
+ delete?: never;
2286
+ options?: never;
2287
+ head?: never;
2288
+ patch?: never;
2289
+ trace?: never;
2290
+ };
2153
2291
  "/delivery/manifest-packages": {
2154
2292
  parameters: {
2155
2293
  query?: never;
@@ -6079,6 +6217,23 @@ export interface paths {
6079
6217
  patch?: never;
6080
6218
  trace?: never;
6081
6219
  };
6220
+ "/clusters/{clusterID}/resource-monitoring": {
6221
+ parameters: {
6222
+ query?: never;
6223
+ header?: never;
6224
+ path?: never;
6225
+ cookie?: never;
6226
+ };
6227
+ /** @description Fixed bounded monitoring templates. The selected view requires its exact permission plus cluster-wide nodes.view. Raw PromQL is never accepted. Current snapshots and historical series have separate observation times. */
6228
+ get: operations["getKubernetesResourceMonitoring"];
6229
+ put?: never;
6230
+ post?: never;
6231
+ delete?: never;
6232
+ options?: never;
6233
+ head?: never;
6234
+ patch?: never;
6235
+ trace?: never;
6236
+ };
6082
6237
  "/clusters/{clusterID}/network/topology": {
6083
6238
  parameters: {
6084
6239
  query?: never;
@@ -11778,6 +11933,7 @@ export interface paths {
11778
11933
  };
11779
11934
  get?: never;
11780
11935
  put?: never;
11936
+ /** @description Cordon the node and evict eligible pods. A 409 with node_drain_pdb_blocked, node_drain_eviction_blocked, node_drain_timeout, node_drain_canceled, node_drain_pod_selection or node_drain_failed means this drain did not complete. Inspect current node schedulability and remaining pods before retrying or explicitly restoring scheduling. Transport failure leaves the outcome unknown. */
11781
11937
  post: operations["drainKubernetesNode"];
11782
11938
  delete?: never;
11783
11939
  options?: never;
@@ -11881,6 +12037,214 @@ export interface paths {
11881
12037
  patch?: never;
11882
12038
  trace?: never;
11883
12039
  };
12040
+ "/clusters/{clusterID}/network/httproutes/{name}": {
12041
+ parameters: {
12042
+ query?: never;
12043
+ header?: never;
12044
+ path?: never;
12045
+ cookie?: never;
12046
+ };
12047
+ get?: never;
12048
+ put?: never;
12049
+ post?: never;
12050
+ delete: operations["deleteKubernetesHTTPRoute"];
12051
+ options?: never;
12052
+ head?: never;
12053
+ patch?: never;
12054
+ trace?: never;
12055
+ };
12056
+ "/clusters/{clusterID}/network/httproutes/{name}/yaml": {
12057
+ parameters: {
12058
+ query?: never;
12059
+ header?: never;
12060
+ path?: never;
12061
+ cookie?: never;
12062
+ };
12063
+ get: operations["getKubernetesHTTPRouteYaml"];
12064
+ put: operations["applyKubernetesHTTPRouteYaml"];
12065
+ post?: never;
12066
+ delete?: never;
12067
+ options?: never;
12068
+ head?: never;
12069
+ patch?: never;
12070
+ trace?: never;
12071
+ };
12072
+ "/clusters/{clusterID}/network/grpcroutes/{name}": {
12073
+ parameters: {
12074
+ query?: never;
12075
+ header?: never;
12076
+ path?: never;
12077
+ cookie?: never;
12078
+ };
12079
+ get?: never;
12080
+ put?: never;
12081
+ post?: never;
12082
+ delete: operations["deleteKubernetesGRPCRoute"];
12083
+ options?: never;
12084
+ head?: never;
12085
+ patch?: never;
12086
+ trace?: never;
12087
+ };
12088
+ "/clusters/{clusterID}/network/grpcroutes/{name}/yaml": {
12089
+ parameters: {
12090
+ query?: never;
12091
+ header?: never;
12092
+ path?: never;
12093
+ cookie?: never;
12094
+ };
12095
+ get: operations["getKubernetesGRPCRouteYaml"];
12096
+ put: operations["applyKubernetesGRPCRouteYaml"];
12097
+ post?: never;
12098
+ delete?: never;
12099
+ options?: never;
12100
+ head?: never;
12101
+ patch?: never;
12102
+ trace?: never;
12103
+ };
12104
+ "/clusters/{clusterID}/network/backendtlspolicies/{name}": {
12105
+ parameters: {
12106
+ query?: never;
12107
+ header?: never;
12108
+ path?: never;
12109
+ cookie?: never;
12110
+ };
12111
+ get?: never;
12112
+ put?: never;
12113
+ post?: never;
12114
+ delete: operations["deleteKubernetesBackendTLSPolicy"];
12115
+ options?: never;
12116
+ head?: never;
12117
+ patch?: never;
12118
+ trace?: never;
12119
+ };
12120
+ "/clusters/{clusterID}/network/backendtlspolicies/{name}/yaml": {
12121
+ parameters: {
12122
+ query?: never;
12123
+ header?: never;
12124
+ path?: never;
12125
+ cookie?: never;
12126
+ };
12127
+ get: operations["getKubernetesBackendTLSPolicyYaml"];
12128
+ put: operations["applyKubernetesBackendTLSPolicyYaml"];
12129
+ post?: never;
12130
+ delete?: never;
12131
+ options?: never;
12132
+ head?: never;
12133
+ patch?: never;
12134
+ trace?: never;
12135
+ };
12136
+ "/clusters/{clusterID}/network/referencegrants/{name}": {
12137
+ parameters: {
12138
+ query?: never;
12139
+ header?: never;
12140
+ path?: never;
12141
+ cookie?: never;
12142
+ };
12143
+ get?: never;
12144
+ put?: never;
12145
+ post?: never;
12146
+ delete: operations["deleteKubernetesReferenceGrant"];
12147
+ options?: never;
12148
+ head?: never;
12149
+ patch?: never;
12150
+ trace?: never;
12151
+ };
12152
+ "/clusters/{clusterID}/network/referencegrants/{name}/yaml": {
12153
+ parameters: {
12154
+ query?: never;
12155
+ header?: never;
12156
+ path?: never;
12157
+ cookie?: never;
12158
+ };
12159
+ get: operations["getKubernetesReferenceGrantYaml"];
12160
+ put: operations["applyKubernetesReferenceGrantYaml"];
12161
+ post?: never;
12162
+ delete?: never;
12163
+ options?: never;
12164
+ head?: never;
12165
+ patch?: never;
12166
+ trace?: never;
12167
+ };
12168
+ "/clusters/{clusterID}/configuration/hpas/{name}": {
12169
+ parameters: {
12170
+ query?: never;
12171
+ header?: never;
12172
+ path?: never;
12173
+ cookie?: never;
12174
+ };
12175
+ get?: never;
12176
+ put?: never;
12177
+ post?: never;
12178
+ delete: operations["deleteKubernetesHorizontalPodAutoscaler"];
12179
+ options?: never;
12180
+ head?: never;
12181
+ patch?: never;
12182
+ trace?: never;
12183
+ };
12184
+ "/clusters/{clusterID}/configuration/hpas/{name}/yaml": {
12185
+ parameters: {
12186
+ query?: never;
12187
+ header?: never;
12188
+ path?: never;
12189
+ cookie?: never;
12190
+ };
12191
+ get: operations["getKubernetesHorizontalPodAutoscalerYaml"];
12192
+ put: operations["applyKubernetesHorizontalPodAutoscalerYaml"];
12193
+ post?: never;
12194
+ delete?: never;
12195
+ options?: never;
12196
+ head?: never;
12197
+ patch?: never;
12198
+ trace?: never;
12199
+ };
12200
+ "/clusters/{clusterID}/configuration/poddisruptionbudgets/{name}": {
12201
+ parameters: {
12202
+ query?: never;
12203
+ header?: never;
12204
+ path?: never;
12205
+ cookie?: never;
12206
+ };
12207
+ get?: never;
12208
+ put?: never;
12209
+ post?: never;
12210
+ delete: operations["deleteKubernetesPodDisruptionBudget"];
12211
+ options?: never;
12212
+ head?: never;
12213
+ patch?: never;
12214
+ trace?: never;
12215
+ };
12216
+ "/clusters/{clusterID}/configuration/poddisruptionbudgets/{name}/yaml": {
12217
+ parameters: {
12218
+ query?: never;
12219
+ header?: never;
12220
+ path?: never;
12221
+ cookie?: never;
12222
+ };
12223
+ get: operations["getKubernetesPodDisruptionBudgetYaml"];
12224
+ put: operations["applyKubernetesPodDisruptionBudgetYaml"];
12225
+ post?: never;
12226
+ delete?: never;
12227
+ options?: never;
12228
+ head?: never;
12229
+ patch?: never;
12230
+ trace?: never;
12231
+ };
12232
+ "/clusters/{clusterID}/workloads/replicationcontrollers/{name}": {
12233
+ parameters: {
12234
+ query?: never;
12235
+ header?: never;
12236
+ path?: never;
12237
+ cookie?: never;
12238
+ };
12239
+ get?: never;
12240
+ put?: never;
12241
+ post?: never;
12242
+ delete: operations["deleteKubernetesReplicationController"];
12243
+ options?: never;
12244
+ head?: never;
12245
+ patch?: never;
12246
+ trace?: never;
12247
+ };
11884
12248
  }
11885
12249
  export type webhooks = Record<string, never>;
11886
12250
  export interface components {
@@ -16925,6 +17289,7 @@ export interface components {
16925
17289
  codeVerifier: string;
16926
17290
  };
16927
17291
  StreamTicketRequest: {
17292
+ /** @description Same-origin stream pathname. UID-aware Pod sessions include expectedUid, namespace, container and shell query fields to bind the one-use ticket to that exact target; other query fields are not part of the binding. */
16928
17293
  path: string;
16929
17294
  };
16930
17295
  StreamTicket: {
@@ -17454,6 +17819,62 @@ export interface components {
17454
17819
  /** Format: date-time */
17455
17820
  updatedAt: string;
17456
17821
  };
17822
+ ResourceRelationSource: {
17823
+ apiVersion: string;
17824
+ resource: string;
17825
+ kind: string;
17826
+ namespace: string;
17827
+ };
17828
+ ResourceRelationRule: {
17829
+ id: string;
17830
+ /** @enum {string} */
17831
+ type: "reference" | "manual" | "selector";
17832
+ target: components["schemas"]["ResourceRelationSource"];
17833
+ name?: string;
17834
+ uid?: string;
17835
+ selector?: {
17836
+ [key: string]: string;
17837
+ };
17838
+ };
17839
+ ResourceRelationConfig: {
17840
+ /** @constant */
17841
+ version: "v1";
17842
+ rootUid: string;
17843
+ sources: components["schemas"]["ResourceRelationSource"][];
17844
+ rules: components["schemas"]["ResourceRelationRule"][];
17845
+ };
17846
+ ResourceRelationNode: {
17847
+ resource: components["schemas"]["KubernetesResourceRef"];
17848
+ /** @enum {string} */
17849
+ role: "root" | "owned" | "manual" | "reference" | "candidate";
17850
+ depth: number;
17851
+ };
17852
+ ResourceRelationEdge: {
17853
+ fromUid: string;
17854
+ toUid: string;
17855
+ /** @enum {string} */
17856
+ type: "owns" | "manual" | "references" | "selector_candidate";
17857
+ ruleId?: string;
17858
+ };
17859
+ ResourceRelationCoverage: {
17860
+ queryId: string;
17861
+ /** @enum {string} */
17862
+ state: "available" | "partial" | "denied" | "error" | "not_installed" | "unsupported";
17863
+ reasonCode?: string;
17864
+ truncated: boolean;
17865
+ };
17866
+ ResourceRelationsView: {
17867
+ root: components["schemas"]["KubernetesResourceRef"];
17868
+ config: components["schemas"]["ResourceRelationConfig"];
17869
+ nodes: components["schemas"]["ResourceRelationNode"][];
17870
+ edges: components["schemas"]["ResourceRelationEdge"][];
17871
+ coverage: components["schemas"]["ResourceRelationCoverage"][];
17872
+ partial: boolean;
17873
+ observedAt: string;
17874
+ };
17875
+ ResourceRelationsEnvelope: {
17876
+ data: components["schemas"]["ResourceRelationsView"];
17877
+ };
17457
17878
  ReleaseTarget: {
17458
17879
  docker?: components["schemas"]["DockerDeliveryConfiguration"];
17459
17880
  helm?: components["schemas"]["HelmDeliveryConfiguration"];
@@ -17660,6 +18081,8 @@ export interface components {
17660
18081
  hook?: boolean;
17661
18082
  };
17662
18083
  HelmDeliverySnapshot: {
18084
+ templateInputs?: components["schemas"]["TemplateVersionReference"];
18085
+ migration?: components["schemas"]["TemplateMigrationAssessment"];
17663
18086
  deliveryPlanId: string;
17664
18087
  targetId: string;
17665
18088
  applicationId: string;
@@ -17697,6 +18120,8 @@ export interface components {
17697
18120
  action: "preflight" | "apply" | "observe";
17698
18121
  snapshot: components["schemas"]["HelmDeliverySnapshot"];
17699
18122
  prepared?: components["schemas"]["HelmPreparedRelease"];
18123
+ /** @description Server-derived original successful initialization apply receipt. Required for initialization observation or already-applied recovery; current same-name objects cannot establish original ownership. */
18124
+ initializationResources?: components["schemas"]["ManifestResourceInventory"][];
17700
18125
  };
17701
18126
  HelmExecutionTaskResult: {
17702
18127
  ready: boolean;
@@ -17731,6 +18156,7 @@ export interface components {
17731
18156
  timeoutSeconds: number;
17732
18157
  };
17733
18158
  ServiceDeploymentTemplateInput: {
18159
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
17734
18160
  copiedFrom?: components["schemas"]["TemplateCopyOrigin"];
17735
18161
  key: string;
17736
18162
  name: string;
@@ -17749,6 +18175,7 @@ export interface components {
17749
18175
  expectedRevision?: number;
17750
18176
  };
17751
18177
  ServiceDeploymentTemplate: {
18178
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
17752
18179
  id: string;
17753
18180
  key: string;
17754
18181
  name: string;
@@ -17817,6 +18244,7 @@ export interface components {
17817
18244
  expectedRevision: number;
17818
18245
  };
17819
18246
  WorkflowTemplate: {
18247
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
17820
18248
  /** @description Current editable revision used for conditional saves. */
17821
18249
  revision?: number;
17822
18250
  /** @description Latest immutable published version; zero means unpublished. */
@@ -17840,6 +18268,7 @@ export interface components {
17840
18268
  updatedAt: string;
17841
18269
  };
17842
18270
  WorkflowTemplateInput: {
18271
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
17843
18272
  copiedFrom?: components["schemas"]["TemplateCopyOrigin"];
17844
18273
  /** @description Reject an update if the stored revision differs. */
17845
18274
  expectedRevision?: number;
@@ -17925,11 +18354,34 @@ export interface components {
17925
18354
  kind: "Service" | "Ingress" | "HorizontalPodAutoscaler";
17926
18355
  name: string;
17927
18356
  };
18357
+ KubernetesImportOwnerReference: {
18358
+ apiVersion: string;
18359
+ kind: string;
18360
+ name: string;
18361
+ uid: string;
18362
+ controller?: boolean;
18363
+ blockOwnerDeletion?: boolean;
18364
+ };
18365
+ /** @description Safe source identity captured from an authorized live read. No YAML, spec values, annotations or status are persisted here. For native workloads specDigest covers configuration and ownership metadata excluding status/resourceVersion. For CRs it fences the public UID, generation and owner references without hashing secret content; metadata-only edits are outside that fence. CRs without a positive generation are rejected. UID identifies recreation. */
18366
+ KubernetesImportSource: {
18367
+ resource: components["schemas"]["KubernetesResourceRef"] & {
18368
+ uid: string;
18369
+ };
18370
+ specDigest: string;
18371
+ /** Format: int64 */
18372
+ generation?: number;
18373
+ crdName?: string;
18374
+ plural?: string;
18375
+ /** Format: date-time */
18376
+ observedAt: string;
18377
+ owners?: components["schemas"]["KubernetesImportOwnerReference"][];
18378
+ };
17928
18379
  KubernetesImportCandidate: {
18380
+ source?: components["schemas"]["KubernetesImportSource"];
17929
18381
  clusterId: string;
17930
18382
  namespace: string;
17931
18383
  /** @enum {string} */
17932
- workloadKind: "Deployment" | "StatefulSet" | "DaemonSet";
18384
+ workloadKind: "Deployment" | "StatefulSet" | "DaemonSet" | "Job" | "CronJob" | "CustomResource";
17933
18385
  workloadName: string;
17934
18386
  desiredReplicas: number;
17935
18387
  readyReplicas: number;
@@ -17944,10 +18396,15 @@ export interface components {
17944
18396
  truncated: boolean;
17945
18397
  };
17946
18398
  KubernetesWorkloadImportInput: {
18399
+ expectedUid?: string;
18400
+ expectedSpecDigest?: string;
18401
+ /** @description Required for CustomResource. Resolve the served GVR and scope from this CRD; never infer API group or plural from Kind. */
18402
+ crdName?: string;
17947
18403
  /** @enum {string} */
17948
- workloadKind: "Deployment" | "StatefulSet" | "DaemonSet";
18404
+ workloadKind: "Deployment" | "StatefulSet" | "DaemonSet" | "Job" | "CronJob" | "CustomResource";
17949
18405
  workloadName: string;
17950
18406
  };
18407
+ /** @description Initial association is observe_only. A managed request is rejected until a separate UID-aware ownership handoff and release preflight are available; it must never silently enable publishing. */
17951
18408
  KubernetesServiceImportRequest: {
17952
18409
  clusterId: string;
17953
18410
  namespace: string;
@@ -17970,14 +18427,15 @@ export interface components {
17970
18427
  key: string;
17971
18428
  name: string;
17972
18429
  /** @enum {string} */
17973
- workloadKind: "Deployment" | "StatefulSet" | "DaemonSet";
18430
+ workloadKind: "Deployment" | "StatefulSet" | "DaemonSet" | "Job" | "CronJob" | "CustomResource";
17974
18431
  workloadName: string;
17975
18432
  created: boolean;
17976
18433
  };
17977
18434
  KubernetesImportedTarget: {
18435
+ source?: components["schemas"]["KubernetesImportSource"];
17978
18436
  id: string;
17979
18437
  /** @enum {string} */
17980
- workloadKind: "Deployment" | "StatefulSet" | "DaemonSet";
18438
+ workloadKind: "Deployment" | "StatefulSet" | "DaemonSet" | "Job" | "CronJob" | "CustomResource";
17981
18439
  workloadName: string;
17982
18440
  created: boolean;
17983
18441
  };
@@ -18034,6 +18492,7 @@ export interface components {
18034
18492
  data: components["schemas"]["HelmReleaseImportResult"];
18035
18493
  };
18036
18494
  BuildTemplate: {
18495
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
18037
18496
  /** @description Current editable revision used for conditional saves. */
18038
18497
  revision?: number;
18039
18498
  /** @description Latest immutable published version; zero means unpublished. */
@@ -18063,6 +18522,7 @@ export interface components {
18063
18522
  updatedAt: string;
18064
18523
  };
18065
18524
  BuildTemplateInput: {
18525
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
18066
18526
  copiedFrom?: components["schemas"]["TemplateCopyOrigin"];
18067
18527
  /** @description Reject an update if the stored revision differs. */
18068
18528
  expectedRevision?: number;
@@ -18124,6 +18584,7 @@ export interface components {
18124
18584
  summary?: string;
18125
18585
  };
18126
18586
  DeliveryTargetInput: {
18587
+ templateCandidateId?: string;
18127
18588
  id: string;
18128
18589
  applicationId: string;
18129
18590
  serviceId: string;
@@ -18164,6 +18625,7 @@ export interface components {
18164
18625
  maxLength?: number;
18165
18626
  };
18166
18627
  DeliveryBuildTemplateSpec: {
18628
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
18167
18629
  /** @default custom */
18168
18630
  builderKind?: string;
18169
18631
  dockerfileTemplate?: string;
@@ -18180,6 +18642,7 @@ export interface components {
18180
18642
  dockerfileTemplate: string;
18181
18643
  } | unknown);
18182
18644
  DeliveryDeploymentTemplateSpec: {
18645
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
18183
18646
  source: components["schemas"]["DeploymentTemplateSource"];
18184
18647
  parameterSchema: components["schemas"]["TemplateParameterSchema"];
18185
18648
  defaults: components["schemas"]["TemplateParameterValues"];
@@ -18258,6 +18721,7 @@ export interface components {
18258
18721
  onFailure?: components["schemas"]["DeliveryDocumentStep"][];
18259
18722
  } & (unknown | unknown | unknown);
18260
18723
  DeliveryWorkflowTemplateSpec: {
18724
+ migrationPolicy?: components["schemas"]["TemplateMigrationPolicy"];
18261
18725
  /** @default release */
18262
18726
  category?: string;
18263
18727
  definition: components["schemas"]["DeliveryBatchTemplateDefinition"] | components["schemas"]["DeliveryDocumentDAG"];
@@ -18779,6 +19243,7 @@ export interface components {
18779
19243
  sourceCommit?: components["schemas"]["DeliverySourceCommit"];
18780
19244
  } & (unknown | unknown);
18781
19245
  DeliveryTargetSnapshot: {
19246
+ templateUpdate?: components["schemas"]["TemplateUpdateReceipt"];
18782
19247
  target: components["schemas"]["DeliveryTargetInput"];
18783
19248
  applicationName: string;
18784
19249
  serviceName: string;
@@ -18989,6 +19454,10 @@ export interface components {
18989
19454
  latestRelease?: components["schemas"]["ReleaseRecord"];
18990
19455
  };
18991
19456
  ApplicationRuntimeWorkload: {
19457
+ targetId?: string;
19458
+ source?: components["schemas"]["KubernetesImportSource"];
19459
+ /** @enum {string} */
19460
+ sourceStatus?: "linked" | "changed" | "replaced" | "missing" | "unavailable" | "forbidden";
18992
19461
  applicationEnvironmentId: string;
18993
19462
  clusterId: string;
18994
19463
  namespace: string;
@@ -19329,8 +19798,24 @@ export interface components {
19329
19798
  };
19330
19799
  /** @enum {string} */
19331
19800
  ManifestTaskAction: "preflight" | "apply" | "observe" | "repair" | "adopt" | "rollback" | "sync" | "rollout_control";
19801
+ /** @description Server-frozen imported namespaced CR identity and user-reviewed generation. Publication requires the original imported target with metadata ownershipMode=managed, rootCRGeneration matching the reviewed generation, and configRef selecting its Manifest binding. Only spec may be updated; missing roots are never created. Current user or token permissions, external ownership and UID are rechecked. Requires manifest.root-cr.v1 Agent capability and manifest_root_cr_v1 provider. Configuration copies, revisions, plans and deployments retain the sensitive configuration read permission; ordinary task summaries omit root documents. */
19802
+ ManifestRootResource: {
19803
+ targetId: string;
19804
+ deliveryPlanId: string;
19805
+ apiVersion: string;
19806
+ kind: string;
19807
+ namespace: string;
19808
+ name: string;
19809
+ uid: string;
19810
+ /** Format: int64 */
19811
+ generation: number;
19812
+ crdName: string;
19813
+ };
19332
19814
  /** @description Controller-aware tasks use providerKind manifest_agent_v3.<clusterId> and require manifest.execution.v3. Older runners must not claim these tasks or bypass GitOps and Rollout ownership. */
19333
19815
  ManifestExecutionTaskPayload: {
19816
+ /** @description Server-frozen initialization Plan identity. Requires manifest.initialize.v1 and its dedicated provider; preflight uses create dry-run, apply creates only, and observation verifies the created UIDs. Never a force or adoption flag. */
19817
+ initializationPlanId?: string;
19818
+ rootResource?: components["schemas"]["ManifestRootResource"];
19334
19819
  rolloutControl?: components["schemas"]["ProgressiveRolloutControlInput"];
19335
19820
  /** @description Server-rendered child resources from the single Argo Application's immutable Git source and image overrides; used for ownership admission and live verification, never direct apply. */
19336
19821
  gitOpsDocuments?: components["schemas"]["ManifestRenderedDocument"][];
@@ -19371,6 +19856,8 @@ export interface components {
19371
19856
  data: components["schemas"]["ManifestExecutionTask"];
19372
19857
  };
19373
19858
  ManifestPreflightResult: {
19859
+ /** @description Server-frozen initialization Plan identity. Requires manifest.initialize.v1 and its dedicated provider; preflight uses create dry-run, apply creates only, and observation verifies the created UIDs. Never a force or adoption flag. */
19860
+ initializationPlanId?: string;
19374
19861
  ready: boolean;
19375
19862
  /** @enum {string} */
19376
19863
  capability: "available" | "degraded" | "unsupported";
@@ -19400,6 +19887,8 @@ export interface components {
19400
19887
  evidenceRefs: string[];
19401
19888
  };
19402
19889
  ManifestExecutionTaskResult: {
19890
+ /** @description Server-frozen initialization Plan identity. Requires manifest.initialize.v1 and its dedicated provider; preflight uses create dry-run, apply creates only, and observation verifies the created UIDs. Never a force or adoption flag. */
19891
+ initializationPlanId?: string;
19403
19892
  rollout?: components["schemas"]["ProgressiveRolloutStatus"];
19404
19893
  action: components["schemas"]["ManifestTaskAction"];
19405
19894
  deploymentId?: string;
@@ -19476,6 +19965,7 @@ export interface components {
19476
19965
  /** @enum {string} */
19477
19966
  ManifestDeletionPolicy: "orphan" | "delete_managed";
19478
19967
  ManifestBinding: {
19968
+ templateSelection?: components["schemas"]["ManifestTemplateSelection"];
19479
19969
  templateParameters?: components["schemas"]["TemplateParameterValues"];
19480
19970
  id: string;
19481
19971
  packageId: string;
@@ -19593,6 +20083,7 @@ export interface components {
19593
20083
  deletionPolicy: components["schemas"]["ManifestDeletionPolicy"];
19594
20084
  };
19595
20085
  ManifestDeploymentStatus: {
20086
+ appliedTemplate?: components["schemas"]["TemplateVersionReference"];
19596
20087
  /** Format: int64 */
19597
20088
  observedGeneration: number;
19598
20089
  appliedRevision?: number;
@@ -19882,6 +20373,7 @@ export interface components {
19882
20373
  spec: components["schemas"]["RenderedDeliverySpec"];
19883
20374
  };
19884
20375
  DeliveryPlan: {
20376
+ templateCandidateId?: string;
19885
20377
  dockerSnapshots?: components["schemas"]["DockerDeliverySnapshot"][];
19886
20378
  helmSnapshots?: components["schemas"]["HelmDeliverySnapshot"][];
19887
20379
  id: string;
@@ -19940,6 +20432,8 @@ export interface components {
19940
20432
  releaseBundleId?: string;
19941
20433
  };
19942
20434
  ManifestDeliverySnapshot: {
20435
+ migration?: components["schemas"]["TemplateMigrationAssessment"];
20436
+ rootResource?: components["schemas"]["ManifestRootResource"];
19943
20437
  /** @description Frozen GitOps child resources sharing this plan's preflight, ownership and observation boundaries. */
19944
20438
  gitOpsDocuments?: components["schemas"]["ManifestRenderedDocument"][];
19945
20439
  deliveryPlanId: string;
@@ -21321,6 +21815,7 @@ export interface components {
21321
21815
  lastTransition?: string;
21322
21816
  };
21323
21817
  KubernetesClusterDiagnostics: {
21818
+ actionChecks?: components["schemas"]["KubernetesAgentActionCheck"][];
21324
21819
  transport: string;
21325
21820
  syncStrategy: string;
21326
21821
  cacheStatus: string;
@@ -21331,6 +21826,25 @@ export interface components {
21331
21826
  connectionState: string;
21332
21827
  message?: string;
21333
21828
  };
21829
+ KubernetesAgentActionCheck: {
21830
+ action: string;
21831
+ /** @enum {string} */
21832
+ implementation: "supported" | "unsupported" | "unknown";
21833
+ /** @enum {string} */
21834
+ configured: "allowed" | "denied" | "unknown";
21835
+ /** @enum {string} */
21836
+ kubernetesRBAC: "allowed" | "denied" | "unknown" | "not_applicable";
21837
+ /** Format: date-time */
21838
+ checkedAt?: string;
21839
+ reasonCode?: string;
21840
+ /** @enum {string} */
21841
+ scope?: "cluster";
21842
+ };
21843
+ /**
21844
+ * @description Installation preset only. Legacy preserves existing permissions; selecting workbench or read-only requires regenerating and reviewing the installation manifest.
21845
+ * @enum {string}
21846
+ */
21847
+ KubernetesAgentActionProfile: "legacy" | "workbench" | "read-only";
21334
21848
  KubernetesClusterConnectionDetail: {
21335
21849
  mode: components["schemas"]["KubernetesConnectionMode"];
21336
21850
  credentialType: string;
@@ -21341,6 +21855,7 @@ export interface components {
21341
21855
  hasInlineKubeconfig: boolean;
21342
21856
  hasToken: boolean;
21343
21857
  usesInformerCache: boolean;
21858
+ actionProfile?: components["schemas"]["KubernetesAgentActionProfile"];
21344
21859
  customResourceRules?: components["schemas"]["KubernetesAgentCustomResourceRule"][];
21345
21860
  };
21346
21861
  KubernetesCustomResourceAccess: {
@@ -21367,6 +21882,7 @@ export interface components {
21367
21882
  prometheusClusterLabel?: string;
21368
21883
  grafanaBaseUrl?: string;
21369
21884
  prometheusTransport?: components["schemas"]["KubernetesPrometheusTransport"];
21885
+ agentActionProfile?: components["schemas"]["KubernetesAgentActionProfile"];
21370
21886
  agentCustomResourceRules?: components["schemas"]["KubernetesAgentCustomResourceRule"][];
21371
21887
  };
21372
21888
  KubernetesAgentCustomResourceRule: {
@@ -21455,6 +21971,10 @@ export interface components {
21455
21971
  name: string;
21456
21972
  status: string;
21457
21973
  unschedulable: boolean;
21974
+ /** @description Current Node spec taints. Empty means none; null or absent means not reported. */
21975
+ taints?: components["schemas"]["KubernetesNodeTaint"][] | null;
21976
+ /** @description Current Node conditions, independent of scheduling and drain operations. */
21977
+ conditions?: components["schemas"]["KubernetesWorkloadCondition"][] | null;
21458
21978
  roles?: string[];
21459
21979
  version?: string;
21460
21980
  internalIp?: string;
@@ -21556,6 +22076,8 @@ export interface components {
21556
22076
  data: components["schemas"]["KubernetesWorkloadOverview"];
21557
22077
  };
21558
22078
  KubernetesPod: {
22079
+ /** @description Immutable Pod identity. Required by clients restoring a saved live session; absent on older providers. */
22080
+ uid?: string;
21559
22081
  name: string;
21560
22082
  namespace: string;
21561
22083
  phase: string;
@@ -21624,6 +22146,8 @@ export interface components {
21624
22146
  relation?: string;
21625
22147
  };
21626
22148
  KubernetesPodDetail: {
22149
+ /** @description Immutable Pod identity. Required by clients restoring a saved live session; absent on older providers. */
22150
+ uid?: string;
21627
22151
  name: string;
21628
22152
  namespace: string;
21629
22153
  phase: string;
@@ -22852,6 +23376,204 @@ export interface components {
22852
23376
  KubernetesNetworkPolicyDetailEnvelope: {
22853
23377
  data: components["schemas"]["KubernetesNetworkPolicyDetail"];
22854
23378
  };
23379
+ /** @enum {string} */
23380
+ KubernetesTopologyProvider: "kubernetes" | "gateway" | "traefik" | "apisix";
23381
+ /** @enum {string} */
23382
+ KubernetesTopologyResolution: "resolved" | "unresolved" | "not_found" | "not_visible" | "no_ready_endpoints" | "external" | "unsupported_fragment" | "unknown";
23383
+ KubernetesTopologyProperty: {
23384
+ name: string;
23385
+ value: string;
23386
+ };
23387
+ KubernetesTopologyMatch: {
23388
+ type: string;
23389
+ name?: string;
23390
+ operator?: string;
23391
+ value?: string;
23392
+ };
23393
+ KubernetesTopologyRule: {
23394
+ name?: string;
23395
+ index: number;
23396
+ /** @description Groups are ORed; matches inside each group are ANDed. Opaque expressions remain a bounded summary and are marked unsupported_fragment. */
23397
+ matchGroups?: components["schemas"]["KubernetesTopologyMatch"][][];
23398
+ matchSummary?: string;
23399
+ /** Format: int64 */
23400
+ priority?: number;
23401
+ tlsMode?: string;
23402
+ };
23403
+ KubernetesTopologyCondition: {
23404
+ type: string;
23405
+ status: string;
23406
+ reason?: string;
23407
+ /** Format: int64 */
23408
+ observedGeneration?: number;
23409
+ /** Format: date-time */
23410
+ lastTransitionTime?: string;
23411
+ };
23412
+ KubernetesTopologyGraphNode: {
23413
+ id: string;
23414
+ /** @enum {string} */
23415
+ type: "entry" | "rule" | "processor" | "backend-group" | "service" | "endpoint-group" | "pod" | "external";
23416
+ label: string;
23417
+ provider: components["schemas"]["KubernetesTopologyProvider"];
23418
+ protocol?: string;
23419
+ resolutionState: components["schemas"]["KubernetesTopologyResolution"];
23420
+ resource?: components["schemas"]["KubernetesResourceRef"];
23421
+ rule?: components["schemas"]["KubernetesTopologyRule"];
23422
+ /** Format: int64 */
23423
+ generation?: number;
23424
+ properties?: components["schemas"]["KubernetesTopologyProperty"][];
23425
+ conditions?: components["schemas"]["KubernetesTopologyCondition"][];
23426
+ };
23427
+ KubernetesTopologyGraphEdge: {
23428
+ id: string;
23429
+ source: string;
23430
+ target: string;
23431
+ /** @enum {string} */
23432
+ relation: "matches" | "processes" | "forwards" | "weights" | "mirrors" | "resolves" | "selects";
23433
+ resolutionState: components["schemas"]["KubernetesTopologyResolution"];
23434
+ protocol?: string;
23435
+ port?: string;
23436
+ /** Format: int64 */
23437
+ weight?: number;
23438
+ /** Format: int64 */
23439
+ totalWeight?: number;
23440
+ mirrorPercent?: number;
23441
+ ruleRef?: string;
23442
+ sourceRef?: components["schemas"]["KubernetesResourceRef"];
23443
+ note?: string;
23444
+ };
23445
+ KubernetesTopologyCoverage: {
23446
+ provider: components["schemas"]["KubernetesTopologyProvider"];
23447
+ sourceId: string;
23448
+ /** @enum {string} */
23449
+ state: "available" | "not_installed" | "unsupported" | "denied" | "error" | "partial";
23450
+ namespace?: string;
23451
+ supportedKinds?: string[];
23452
+ reasonCode?: string;
23453
+ /** Format: date-time */
23454
+ checkedAt?: string;
23455
+ /** Format: date-time */
23456
+ observedAt?: string;
23457
+ truncated?: boolean;
23458
+ };
23459
+ KubernetesTopologySourceQuery: {
23460
+ /** @enum {string} */
23461
+ sourceId: "kubernetes.services" | "kubernetes.pods" | "kubernetes.endpointslices" | "kubernetes.ingresses" | "kubernetes.ingressclasses" | "gateway.gateways" | "gateway.gatewayclasses" | "gateway.httproutes" | "gateway.grpcroutes" | "gateway.tcproutes" | "gateway.tlsroutes" | "gateway.udproutes" | "gateway.referencegrants" | "traefik.ingressroutes" | "traefik.ingressroutetcps" | "traefik.ingressrouteudps" | "traefik.traefikservices" | "traefik.middlewares" | "traefik.middlewaretcps" | "apisix.apisixroutes" | "apisix.apisixupstreams" | "apisix.apisixtls";
23462
+ namespace?: string;
23463
+ } & unknown;
23464
+ KubernetesTopologySnapshotRequest: {
23465
+ queries: components["schemas"]["KubernetesTopologySourceQuery"][];
23466
+ };
23467
+ KubernetesTopologySourceObject: {
23468
+ resource: components["schemas"]["KubernetesResourceRef"];
23469
+ /** Format: int64 */
23470
+ generation?: number;
23471
+ /** @description Fixed source-schema projection encoded as JSON. Unknown fields, raw annotations, Secret values, plugin configuration and credential material are removed before transport. This is not an original Kubernetes manifest. */
23472
+ content: string;
23473
+ };
23474
+ KubernetesTopologySourceResult: {
23475
+ coverage: components["schemas"]["KubernetesTopologyCoverage"];
23476
+ objects: components["schemas"]["KubernetesTopologySourceObject"][];
23477
+ };
23478
+ KubernetesTopologySnapshot: {
23479
+ version: string;
23480
+ sources: components["schemas"]["KubernetesTopologySourceResult"][];
23481
+ };
23482
+ /** @enum {string} */
23483
+ ResourceMonitoringQuality: "valid" | "partial" | "stale" | "not_configured" | "not_collected" | "unsupported" | "denied" | "error" | "empty";
23484
+ /** @enum {string} */
23485
+ ResourceMonitoringViewName: "overview" | "cpu" | "memory" | "conntrack" | "pods";
23486
+ ResourceMonitoringQuantity: {
23487
+ /** Format: double */
23488
+ cpuCores: number | null;
23489
+ /** Format: double */
23490
+ memoryBytes: number | null;
23491
+ /** Format: double */
23492
+ podSlots: number | null;
23493
+ };
23494
+ ResourceMonitoringNode: {
23495
+ nodeRef: components["schemas"]["KubernetesResourceRef"];
23496
+ internalIP?: string;
23497
+ os?: string;
23498
+ /** Format: date-time */
23499
+ createdAt?: string;
23500
+ ready: string;
23501
+ cordoned: boolean;
23502
+ memoryPressure: string;
23503
+ diskPressure: string;
23504
+ pidPressure: string;
23505
+ capacity: components["schemas"]["ResourceMonitoringQuantity"];
23506
+ allocatable: components["schemas"]["ResourceMonitoringQuantity"];
23507
+ requests: components["schemas"]["ResourceMonitoringQuantity"];
23508
+ limits: components["schemas"]["ResourceMonitoringQuantity"];
23509
+ cpuLimitsComplete: boolean;
23510
+ memoryLimitsComplete: boolean;
23511
+ /** Format: double */
23512
+ boundPods: number | null;
23513
+ /** Format: double */
23514
+ pendingPods: number | null;
23515
+ /** Format: double */
23516
+ remainingPodSlots: number | null;
23517
+ /** Format: double */
23518
+ overflowPodSlots: number | null;
23519
+ quality: components["schemas"]["ResourceMonitoringQuality"];
23520
+ /** Format: date-time */
23521
+ observedAt?: string;
23522
+ };
23523
+ ResourceMonitoringPoint: {
23524
+ /** Format: date-time */
23525
+ timestamp: string;
23526
+ /** Format: double */
23527
+ value: number | null;
23528
+ };
23529
+ ResourceMonitoringSeries: {
23530
+ nodeRef: components["schemas"]["KubernetesResourceRef"];
23531
+ metricKey: string;
23532
+ /** @enum {string} */
23533
+ unit: "cores" | "bytes" | "count" | "events/s" | "events" | "percent";
23534
+ quality: components["schemas"]["ResourceMonitoringQuality"];
23535
+ reasonCode?: string;
23536
+ source: string;
23537
+ /** Format: date-time */
23538
+ sampledAt?: string;
23539
+ /** Format: double */
23540
+ latest: number | null;
23541
+ points: components["schemas"]["ResourceMonitoringPoint"][];
23542
+ };
23543
+ ResourceMonitoringPanel: {
23544
+ key: string;
23545
+ label: string;
23546
+ unit: string;
23547
+ quality: components["schemas"]["ResourceMonitoringQuality"];
23548
+ reasonCode?: string;
23549
+ estimated?: boolean;
23550
+ windowSeconds?: number;
23551
+ series: components["schemas"]["ResourceMonitoringSeries"][];
23552
+ };
23553
+ ResourceMonitoringView: {
23554
+ clusterId: string;
23555
+ view: components["schemas"]["ResourceMonitoringViewName"];
23556
+ node?: string;
23557
+ /** Format: date-time */
23558
+ from: string;
23559
+ /** Format: date-time */
23560
+ to: string;
23561
+ stepSeconds: number;
23562
+ /** Format: date-time */
23563
+ generatedAt: string;
23564
+ /** Format: date-time */
23565
+ snapshotObservedAt?: string;
23566
+ snapshotQuality: components["schemas"]["ResourceMonitoringQuality"];
23567
+ /** Format: double */
23568
+ unscheduledPendingPods: number | null;
23569
+ nodes: components["schemas"]["ResourceMonitoringNode"][];
23570
+ panels: components["schemas"]["ResourceMonitoringPanel"][];
23571
+ truncated?: boolean;
23572
+ nodeOptions?: components["schemas"]["KubernetesResourceRef"][];
23573
+ };
23574
+ ResourceMonitoringEnvelope: {
23575
+ data: components["schemas"]["ResourceMonitoringView"];
23576
+ };
22855
23577
  KubernetesNetworkTopologySummary: {
22856
23578
  entryCount: number;
22857
23579
  routeCount: number;
@@ -22886,6 +23608,13 @@ export interface components {
22886
23608
  source: string;
22887
23609
  generatedAt: string;
22888
23610
  summary: components["schemas"]["KubernetesNetworkTopologySummary"];
23611
+ graphVersion?: string;
23612
+ nodes?: components["schemas"]["KubernetesTopologyGraphNode"][];
23613
+ edges?: components["schemas"]["KubernetesTopologyGraphEdge"][];
23614
+ coverage?: components["schemas"]["KubernetesTopologyCoverage"][];
23615
+ /** Format: date-time */
23616
+ observedAt?: string;
23617
+ truncated?: boolean;
22889
23618
  traces?: components["schemas"]["KubernetesNetworkTopologyTrace"][];
22890
23619
  warnings?: string[];
22891
23620
  };
@@ -24484,6 +25213,7 @@ export interface components {
24484
25213
  namespace?: string;
24485
25214
  scopeMode: components["schemas"]["KubernetesResourceScopeMode"];
24486
25215
  uid?: string;
25216
+ resourceVersion?: string;
24487
25217
  };
24488
25218
  /** @enum {string} */
24489
25219
  KubernetesResourceStreamEventType: "status" | "added" | "modified" | "deleted" | "reset" | "error";
@@ -27907,6 +28637,201 @@ export interface components {
27907
28637
  NetworkPolicyPreviewEnvelope: {
27908
28638
  data: components["schemas"]["NetworkPolicyPreviewResult"];
27909
28639
  };
28640
+ /** @enum {string} */
28641
+ TemplateUpdateKind: "deployment" | "build" | "workflow" | "blueprint";
28642
+ /** @enum {string} */
28643
+ TemplateUpdateMode: "fixed" | "manual" | "automatic" | "approval";
28644
+ ManifestTemplateSelection: {
28645
+ templateId: string;
28646
+ /** Format: int64 */
28647
+ version: number;
28648
+ parameters: components["schemas"]["TemplateParameterValues"];
28649
+ baseFilesDigest: string;
28650
+ adoptionId: string;
28651
+ };
28652
+ TemplateUpdateTarget: {
28653
+ id: string;
28654
+ kind: components["schemas"]["TemplateUpdateKind"];
28655
+ templateId: string;
28656
+ applicationId: string;
28657
+ applicationName: string;
28658
+ serviceId: string;
28659
+ serviceName: string;
28660
+ applicationEnvironmentId: string;
28661
+ environmentName: string;
28662
+ releaseTargetId: string;
28663
+ /** Format: int64 */
28664
+ fromVersion: number;
28665
+ mode: components["schemas"]["TemplateUpdateMode"];
28666
+ requiresApproval: boolean;
28667
+ eligible: boolean;
28668
+ reason: string;
28669
+ independentOverrides: string[];
28670
+ bindingRevision: string;
28671
+ /** @enum {string} */
28672
+ scope: "environment" | "application" | "creation_only";
28673
+ };
28674
+ TemplateUpdateTargetPage: {
28675
+ items: components["schemas"]["TemplateUpdateTarget"][];
28676
+ /** Format: int64 */
28677
+ total: number;
28678
+ /** Format: int64 */
28679
+ page: number;
28680
+ /** Format: int64 */
28681
+ pageSize: number;
28682
+ };
28683
+ TemplateUpdateSelection: {
28684
+ targetId: string;
28685
+ parameters?: components["schemas"]["TemplateParameterValues"];
28686
+ useNewDefaults?: string[];
28687
+ /** Format: int64 */
28688
+ wave?: number;
28689
+ };
28690
+ TemplateUpdatePreviewInput: {
28691
+ kind: components["schemas"]["TemplateUpdateKind"];
28692
+ templateId: string;
28693
+ /** Format: int64 */
28694
+ toVersion: number;
28695
+ targets: components["schemas"]["TemplateUpdateSelection"][];
28696
+ applicationId?: string;
28697
+ };
28698
+ TemplateUpdateChange: {
28699
+ /** @enum {string} */
28700
+ section: "source" | "schema" | "defaults" | "parameters" | "resources";
28701
+ path: string;
28702
+ before: string;
28703
+ after: string;
28704
+ };
28705
+ TemplateUpdateDiff: {
28706
+ /** Format: int64 */
28707
+ fromVersion: number;
28708
+ /** Format: int64 */
28709
+ toVersion: number;
28710
+ changes: components["schemas"]["TemplateUpdateChange"][];
28711
+ /** @enum {string} */
28712
+ renderStatus: "available" | "unavailable" | "invalid";
28713
+ diagnostics: string[];
28714
+ historyGap: boolean;
28715
+ migration?: components["schemas"]["TemplateMigrationAssessment"];
28716
+ };
28717
+ TemplateUpdateCandidate: {
28718
+ id: string;
28719
+ target: components["schemas"]["TemplateUpdateTarget"];
28720
+ /** Format: int64 */
28721
+ toVersion: number;
28722
+ digest: string;
28723
+ parameters: components["schemas"]["TemplateParameterValues"];
28724
+ cumulative: components["schemas"]["TemplateUpdateDiff"];
28725
+ versions: components["schemas"]["TemplateUpdateDiff"][];
28726
+ eligible: boolean;
28727
+ reason: string;
28728
+ requiresApproval: boolean;
28729
+ /** Format: int64 */
28730
+ wave: number;
28731
+ };
28732
+ TemplateUpdatePreview: {
28733
+ id: string;
28734
+ kind: components["schemas"]["TemplateUpdateKind"];
28735
+ templateId: string;
28736
+ /** Format: int64 */
28737
+ toVersion: number;
28738
+ digest: string;
28739
+ candidates: components["schemas"]["TemplateUpdateCandidate"][];
28740
+ /** Format: date-time */
28741
+ createdAt: string;
28742
+ /** Format: date-time */
28743
+ expiresAt: string;
28744
+ /** @constant */
28745
+ configurationOnly: true;
28746
+ };
28747
+ TemplateUpdateBatchInput: {
28748
+ previewDigest: string;
28749
+ candidateIds: string[];
28750
+ /** Format: int64 */
28751
+ waveSize: number;
28752
+ stopOnFailure: boolean;
28753
+ acknowledgeHistoryGaps: boolean;
28754
+ idempotencyKey: string;
28755
+ };
28756
+ TemplateUpdatePolicyInput: {
28757
+ kind: components["schemas"]["TemplateUpdateKind"];
28758
+ templateId: string;
28759
+ targetId: string;
28760
+ mode: components["schemas"]["TemplateUpdateMode"];
28761
+ paused: boolean;
28762
+ /** Format: int64 */
28763
+ expectedVersion: number;
28764
+ };
28765
+ TemplateUpdatePolicy: {
28766
+ id: string;
28767
+ kind: components["schemas"]["TemplateUpdateKind"];
28768
+ templateId: string;
28769
+ targetId: string;
28770
+ mode: components["schemas"]["TemplateUpdateMode"];
28771
+ paused: boolean;
28772
+ /** Format: int64 */
28773
+ version: number;
28774
+ lastBatchId: string;
28775
+ lastError: string;
28776
+ /** Format: date-time */
28777
+ updatedAt: string;
28778
+ };
28779
+ TemplateUpdateTargetPageEnvelope: {
28780
+ data: components["schemas"]["TemplateUpdateTargetPage"];
28781
+ };
28782
+ TemplateUpdatePreviewEnvelope: {
28783
+ data: components["schemas"]["TemplateUpdatePreview"];
28784
+ };
28785
+ TemplateUpdatePolicyEnvelope: {
28786
+ data: components["schemas"]["TemplateUpdatePolicy"];
28787
+ };
28788
+ TemplateUpdatePolicyListEnvelope: {
28789
+ data: components["schemas"]["TemplateUpdatePolicy"][];
28790
+ };
28791
+ TemplateUpdateReceipt: {
28792
+ kind: components["schemas"]["TemplateUpdateKind"];
28793
+ templateId: string;
28794
+ bindingId: string;
28795
+ previewId: string;
28796
+ candidateId: string;
28797
+ /** Format: int64 */
28798
+ fromVersion: number;
28799
+ /** Format: int64 */
28800
+ toVersion: number;
28801
+ requiresApproval: boolean;
28802
+ };
28803
+ TemplateMigrationPolicy: {
28804
+ /** @description Must cross this boundary as adjacent published versions; approval cannot waive it. */
28805
+ sequential: boolean;
28806
+ /** @description Forward changes require approval; ordinary rollback across this boundary is forbidden. */
28807
+ irreversible: boolean;
28808
+ /** @description Human migration/recovery instructions. Never executed as a script. */
28809
+ guide?: string;
28810
+ };
28811
+ TemplateVersionReference: {
28812
+ templateId: string;
28813
+ /** Format: int64 */
28814
+ templateVersion: number;
28815
+ templateDigest: string;
28816
+ };
28817
+ TemplateMigrationStep: {
28818
+ /** Format: int64 */
28819
+ version: number;
28820
+ contentDigest: string;
28821
+ policy: components["schemas"]["TemplateMigrationPolicy"];
28822
+ };
28823
+ TemplateMigrationAssessment: {
28824
+ /** @description Server-classified first-deployment candidate; requires create-only preflight and explicit Plan approval. It is not a successful runtime baseline or proof that external data is empty. */
28825
+ initialization?: boolean;
28826
+ /** Format: int64 */
28827
+ fromVersion: number;
28828
+ /** Format: int64 */
28829
+ toVersion: number;
28830
+ blocked: boolean;
28831
+ requiresApproval: boolean;
28832
+ reason: string;
28833
+ steps: components["schemas"]["TemplateMigrationStep"][];
28834
+ };
27910
28835
  };
27911
28836
  responses: {
27912
28837
  /** @description Stable redacted Identity protocol or management error. */
@@ -28824,6 +29749,14 @@ export type BuildPolicy = components['schemas']['BuildPolicy'];
28824
29749
  export type ResourceSelector = components['schemas']['ResourceSelector'];
28825
29750
  export type ReleasePolicy = components['schemas']['ReleasePolicy'];
28826
29751
  export type DeliveryEnvironment = components['schemas']['DeliveryEnvironment'];
29752
+ export type ResourceRelationSource = components['schemas']['ResourceRelationSource'];
29753
+ export type ResourceRelationRule = components['schemas']['ResourceRelationRule'];
29754
+ export type ResourceRelationConfig = components['schemas']['ResourceRelationConfig'];
29755
+ export type ResourceRelationNode = components['schemas']['ResourceRelationNode'];
29756
+ export type ResourceRelationEdge = components['schemas']['ResourceRelationEdge'];
29757
+ export type ResourceRelationCoverage = components['schemas']['ResourceRelationCoverage'];
29758
+ export type ResourceRelationsView = components['schemas']['ResourceRelationsView'];
29759
+ export type ResourceRelationsEnvelope = components['schemas']['ResourceRelationsEnvelope'];
28827
29760
  export type ReleaseTarget = components['schemas']['ReleaseTarget'];
28828
29761
  export type ReleaseTargetInput = components['schemas']['ReleaseTargetInput'];
28829
29762
  export type DockerDeliveryConfiguration = components['schemas']['DockerDeliveryConfiguration'];
@@ -28869,6 +29802,8 @@ export type ApplicationWorkflowInput = components['schemas']['ApplicationWorkflo
28869
29802
  export type ApplicationEnvironment = components['schemas']['ApplicationEnvironment'];
28870
29803
  export type ApplicationEnvironmentInput = components['schemas']['ApplicationEnvironmentInput'];
28871
29804
  export type KubernetesRelatedResource = components['schemas']['KubernetesRelatedResource'];
29805
+ export type KubernetesImportOwnerReference = components['schemas']['KubernetesImportOwnerReference'];
29806
+ export type KubernetesImportSource = components['schemas']['KubernetesImportSource'];
28872
29807
  export type KubernetesImportCandidate = components['schemas']['KubernetesImportCandidate'];
28873
29808
  export type KubernetesImportCandidateListEnvelope = components['schemas']['KubernetesImportCandidateListEnvelope'];
28874
29809
  export type KubernetesWorkloadImportInput = components['schemas']['KubernetesWorkloadImportInput'];
@@ -29012,6 +29947,7 @@ export type ProgressiveRolloutMetric = components['schemas']['ProgressiveRollout
29012
29947
  export type ProgressiveRolloutStatus = components['schemas']['ProgressiveRolloutStatus'];
29013
29948
  export type ProgressiveRolloutStatusEnvelope = components['schemas']['ProgressiveRolloutStatusEnvelope'];
29014
29949
  export type ManifestTaskAction = components['schemas']['ManifestTaskAction'];
29950
+ export type ManifestRootResource = components['schemas']['ManifestRootResource'];
29015
29951
  export type ManifestExecutionTaskPayload = components['schemas']['ManifestExecutionTaskPayload'];
29016
29952
  export type ManifestExecutionTask = components['schemas']['ManifestExecutionTask'];
29017
29953
  export type ManifestExecutionTaskEnvelope = components['schemas']['ManifestExecutionTaskEnvelope'];
@@ -29228,6 +30164,8 @@ export type KubernetesClusterSummary = components['schemas']['KubernetesClusterS
29228
30164
  export type KubernetesClusterListEnvelope = components['schemas']['KubernetesClusterListEnvelope'];
29229
30165
  export type KubernetesCacheResourceDiagnostic = components['schemas']['KubernetesCacheResourceDiagnostic'];
29230
30166
  export type KubernetesClusterDiagnostics = components['schemas']['KubernetesClusterDiagnostics'];
30167
+ export type KubernetesAgentActionCheck = components['schemas']['KubernetesAgentActionCheck'];
30168
+ export type KubernetesAgentActionProfile = components['schemas']['KubernetesAgentActionProfile'];
29231
30169
  export type KubernetesClusterConnectionDetail = components['schemas']['KubernetesClusterConnectionDetail'];
29232
30170
  export type KubernetesCustomResourceAccess = components['schemas']['KubernetesCustomResourceAccess'];
29233
30171
  export type KubernetesCustomResourceAccessEnvelope = components['schemas']['KubernetesCustomResourceAccessEnvelope'];
@@ -29420,6 +30358,29 @@ export type KubernetesNetworkPolicyPort = components['schemas']['KubernetesNetwo
29420
30358
  export type KubernetesNetworkPolicyRule = components['schemas']['KubernetesNetworkPolicyRule'];
29421
30359
  export type KubernetesNetworkPolicyDetail = components['schemas']['KubernetesNetworkPolicyDetail'];
29422
30360
  export type KubernetesNetworkPolicyDetailEnvelope = components['schemas']['KubernetesNetworkPolicyDetailEnvelope'];
30361
+ export type KubernetesTopologyProvider = components['schemas']['KubernetesTopologyProvider'];
30362
+ export type KubernetesTopologyResolution = components['schemas']['KubernetesTopologyResolution'];
30363
+ export type KubernetesTopologyProperty = components['schemas']['KubernetesTopologyProperty'];
30364
+ export type KubernetesTopologyMatch = components['schemas']['KubernetesTopologyMatch'];
30365
+ export type KubernetesTopologyRule = components['schemas']['KubernetesTopologyRule'];
30366
+ export type KubernetesTopologyCondition = components['schemas']['KubernetesTopologyCondition'];
30367
+ export type KubernetesTopologyGraphNode = components['schemas']['KubernetesTopologyGraphNode'];
30368
+ export type KubernetesTopologyGraphEdge = components['schemas']['KubernetesTopologyGraphEdge'];
30369
+ export type KubernetesTopologyCoverage = components['schemas']['KubernetesTopologyCoverage'];
30370
+ export type KubernetesTopologySourceQuery = components['schemas']['KubernetesTopologySourceQuery'];
30371
+ export type KubernetesTopologySnapshotRequest = components['schemas']['KubernetesTopologySnapshotRequest'];
30372
+ export type KubernetesTopologySourceObject = components['schemas']['KubernetesTopologySourceObject'];
30373
+ export type KubernetesTopologySourceResult = components['schemas']['KubernetesTopologySourceResult'];
30374
+ export type KubernetesTopologySnapshot = components['schemas']['KubernetesTopologySnapshot'];
30375
+ export type ResourceMonitoringQuality = components['schemas']['ResourceMonitoringQuality'];
30376
+ export type ResourceMonitoringViewName = components['schemas']['ResourceMonitoringViewName'];
30377
+ export type ResourceMonitoringQuantity = components['schemas']['ResourceMonitoringQuantity'];
30378
+ export type ResourceMonitoringNode = components['schemas']['ResourceMonitoringNode'];
30379
+ export type ResourceMonitoringPoint = components['schemas']['ResourceMonitoringPoint'];
30380
+ export type ResourceMonitoringSeries = components['schemas']['ResourceMonitoringSeries'];
30381
+ export type ResourceMonitoringPanel = components['schemas']['ResourceMonitoringPanel'];
30382
+ export type ResourceMonitoringView = components['schemas']['ResourceMonitoringView'];
30383
+ export type ResourceMonitoringEnvelope = components['schemas']['ResourceMonitoringEnvelope'];
29423
30384
  export type KubernetesNetworkTopologySummary = components['schemas']['KubernetesNetworkTopologySummary'];
29424
30385
  export type KubernetesNetworkTopologyNode = components['schemas']['KubernetesNetworkTopologyNode'];
29425
30386
  export type KubernetesNetworkTopologyTrace = components['schemas']['KubernetesNetworkTopologyTrace'];
@@ -30048,6 +31009,29 @@ export type NetworkSessionCommandEnvelope = components['schemas']['NetworkSessio
30048
31009
  export type NetworkPolicyPreviewRequest = components['schemas']['NetworkPolicyPreviewRequest'];
30049
31010
  export type NetworkPolicyPreviewResult = components['schemas']['NetworkPolicyPreviewResult'];
30050
31011
  export type NetworkPolicyPreviewEnvelope = components['schemas']['NetworkPolicyPreviewEnvelope'];
31012
+ export type TemplateUpdateKind = components['schemas']['TemplateUpdateKind'];
31013
+ export type TemplateUpdateMode = components['schemas']['TemplateUpdateMode'];
31014
+ export type ManifestTemplateSelection = components['schemas']['ManifestTemplateSelection'];
31015
+ export type TemplateUpdateTarget = components['schemas']['TemplateUpdateTarget'];
31016
+ export type TemplateUpdateTargetPage = components['schemas']['TemplateUpdateTargetPage'];
31017
+ export type TemplateUpdateSelection = components['schemas']['TemplateUpdateSelection'];
31018
+ export type TemplateUpdatePreviewInput = components['schemas']['TemplateUpdatePreviewInput'];
31019
+ export type TemplateUpdateChange = components['schemas']['TemplateUpdateChange'];
31020
+ export type TemplateUpdateDiff = components['schemas']['TemplateUpdateDiff'];
31021
+ export type TemplateUpdateCandidate = components['schemas']['TemplateUpdateCandidate'];
31022
+ export type TemplateUpdatePreview = components['schemas']['TemplateUpdatePreview'];
31023
+ export type TemplateUpdateBatchInput = components['schemas']['TemplateUpdateBatchInput'];
31024
+ export type TemplateUpdatePolicyInput = components['schemas']['TemplateUpdatePolicyInput'];
31025
+ export type TemplateUpdatePolicy = components['schemas']['TemplateUpdatePolicy'];
31026
+ export type TemplateUpdateTargetPageEnvelope = components['schemas']['TemplateUpdateTargetPageEnvelope'];
31027
+ export type TemplateUpdatePreviewEnvelope = components['schemas']['TemplateUpdatePreviewEnvelope'];
31028
+ export type TemplateUpdatePolicyEnvelope = components['schemas']['TemplateUpdatePolicyEnvelope'];
31029
+ export type TemplateUpdatePolicyListEnvelope = components['schemas']['TemplateUpdatePolicyListEnvelope'];
31030
+ export type TemplateUpdateReceipt = components['schemas']['TemplateUpdateReceipt'];
31031
+ export type TemplateMigrationPolicy = components['schemas']['TemplateMigrationPolicy'];
31032
+ export type TemplateVersionReference = components['schemas']['TemplateVersionReference'];
31033
+ export type TemplateMigrationStep = components['schemas']['TemplateMigrationStep'];
31034
+ export type TemplateMigrationAssessment = components['schemas']['TemplateMigrationAssessment'];
30051
31035
  export type ResponseIdentityError = components['responses']['IdentityError'];
30052
31036
  export type ResponseError = components['responses']['Error'];
30053
31037
  export type ResponseComputeError = components['responses']['ComputeError'];
@@ -32968,9 +33952,67 @@ export interface operations {
32968
33952
  400: components["responses"]["Error"];
32969
33953
  };
32970
33954
  };
33955
+ getApplicationEnvironmentTargetSource: {
33956
+ parameters: {
33957
+ query?: never;
33958
+ header?: never;
33959
+ path: {
33960
+ applicationEnvironmentID: string;
33961
+ targetID: string;
33962
+ };
33963
+ cookie?: never;
33964
+ };
33965
+ requestBody?: never;
33966
+ responses: {
33967
+ /** @description Current cluster YAML for the linked resource, never a fabricated source file. */
33968
+ 200: {
33969
+ headers: {
33970
+ "Cache-Control": "no-store";
33971
+ [name: string]: unknown;
33972
+ };
33973
+ content: {
33974
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
33975
+ };
33976
+ };
33977
+ 403: components["responses"]["Error"];
33978
+ 404: components["responses"]["Error"];
33979
+ 409: components["responses"]["Error"];
33980
+ };
33981
+ };
33982
+ getApplicationEnvironmentTargetRelations: {
33983
+ parameters: {
33984
+ query?: never;
33985
+ header?: never;
33986
+ path: {
33987
+ applicationEnvironmentID: string;
33988
+ targetID: string;
33989
+ };
33990
+ cookie?: never;
33991
+ };
33992
+ requestBody?: never;
33993
+ responses: {
33994
+ /** @description Bounded observed relations, including coverage gaps. */
33995
+ 200: {
33996
+ headers: {
33997
+ "Cache-Control": "no-store";
33998
+ [name: string]: unknown;
33999
+ };
34000
+ content: {
34001
+ "application/json": components["schemas"]["ResourceRelationsEnvelope"];
34002
+ };
34003
+ };
34004
+ 400: components["responses"]["Error"];
34005
+ 403: components["responses"]["Error"];
34006
+ 404: components["responses"]["Error"];
34007
+ 409: components["responses"]["Error"];
34008
+ };
34009
+ };
32971
34010
  listApplicationEnvironmentTargetCandidates: {
32972
34011
  parameters: {
32973
34012
  query: {
34013
+ workloadKind?: "Deployment" | "StatefulSet" | "DaemonSet" | "Job" | "CronJob" | "CustomResource";
34014
+ /** @description Explicit CRD selection for CustomResource discovery. Only this served resource and namespace are queried. */
34015
+ crdName?: string;
32974
34016
  clusterId: string;
32975
34017
  namespace: string;
32976
34018
  search?: string;
@@ -34907,6 +35949,178 @@ export interface operations {
34907
35949
  403: components["responses"]["Error"];
34908
35950
  };
34909
35951
  };
35952
+ listTemplateUpdateTargets: {
35953
+ parameters: {
35954
+ query: {
35955
+ kind: components["schemas"]["TemplateUpdateKind"];
35956
+ templateId: string;
35957
+ applicationId?: string;
35958
+ page?: number;
35959
+ pageSize?: number;
35960
+ serviceId?: string;
35961
+ applicationEnvironmentId?: string;
35962
+ };
35963
+ header?: never;
35964
+ path?: never;
35965
+ cookie?: never;
35966
+ };
35967
+ requestBody?: never;
35968
+ responses: {
35969
+ /** @description Success */
35970
+ 200: {
35971
+ headers: {
35972
+ [name: string]: unknown;
35973
+ };
35974
+ content: {
35975
+ "application/json": components["schemas"]["TemplateUpdateTargetPageEnvelope"];
35976
+ };
35977
+ };
35978
+ 400: components["responses"]["Error"];
35979
+ 403: components["responses"]["Error"];
35980
+ 404: components["responses"]["Error"];
35981
+ 409: components["responses"]["Error"];
35982
+ };
35983
+ };
35984
+ createTemplateUpdatePreview: {
35985
+ parameters: {
35986
+ query?: never;
35987
+ header?: never;
35988
+ path?: never;
35989
+ cookie?: never;
35990
+ };
35991
+ requestBody: {
35992
+ content: {
35993
+ "application/json": components["schemas"]["TemplateUpdatePreviewInput"];
35994
+ };
35995
+ };
35996
+ responses: {
35997
+ /** @description Success */
35998
+ 200: {
35999
+ headers: {
36000
+ [name: string]: unknown;
36001
+ };
36002
+ content: {
36003
+ "application/json": components["schemas"]["TemplateUpdatePreviewEnvelope"];
36004
+ };
36005
+ };
36006
+ 400: components["responses"]["Error"];
36007
+ 403: components["responses"]["Error"];
36008
+ 404: components["responses"]["Error"];
36009
+ 409: components["responses"]["Error"];
36010
+ };
36011
+ };
36012
+ getTemplateUpdatePreview: {
36013
+ parameters: {
36014
+ query?: never;
36015
+ header?: never;
36016
+ path: {
36017
+ previewID: string;
36018
+ };
36019
+ cookie?: never;
36020
+ };
36021
+ requestBody?: never;
36022
+ responses: {
36023
+ /** @description Success */
36024
+ 200: {
36025
+ headers: {
36026
+ [name: string]: unknown;
36027
+ };
36028
+ content: {
36029
+ "application/json": components["schemas"]["TemplateUpdatePreviewEnvelope"];
36030
+ };
36031
+ };
36032
+ 400: components["responses"]["Error"];
36033
+ 403: components["responses"]["Error"];
36034
+ 404: components["responses"]["Error"];
36035
+ 409: components["responses"]["Error"];
36036
+ };
36037
+ };
36038
+ createTemplateUpdateBatch: {
36039
+ parameters: {
36040
+ query?: never;
36041
+ header?: never;
36042
+ path: {
36043
+ previewID: string;
36044
+ };
36045
+ cookie?: never;
36046
+ };
36047
+ requestBody: {
36048
+ content: {
36049
+ "application/json": components["schemas"]["TemplateUpdateBatchInput"];
36050
+ };
36051
+ };
36052
+ responses: {
36053
+ /** @description Success */
36054
+ 200: {
36055
+ headers: {
36056
+ [name: string]: unknown;
36057
+ };
36058
+ content: {
36059
+ "application/json": components["schemas"]["DeliveryBatchEnvelope"];
36060
+ };
36061
+ };
36062
+ 400: components["responses"]["Error"];
36063
+ 403: components["responses"]["Error"];
36064
+ 404: components["responses"]["Error"];
36065
+ 409: components["responses"]["Error"];
36066
+ };
36067
+ };
36068
+ listTemplateUpdatePolicies: {
36069
+ parameters: {
36070
+ query: {
36071
+ kind: components["schemas"]["TemplateUpdateKind"];
36072
+ templateId: string;
36073
+ applicationId?: string;
36074
+ };
36075
+ header?: never;
36076
+ path?: never;
36077
+ cookie?: never;
36078
+ };
36079
+ requestBody?: never;
36080
+ responses: {
36081
+ /** @description Success */
36082
+ 200: {
36083
+ headers: {
36084
+ [name: string]: unknown;
36085
+ };
36086
+ content: {
36087
+ "application/json": components["schemas"]["TemplateUpdatePolicyListEnvelope"];
36088
+ };
36089
+ };
36090
+ 400: components["responses"]["Error"];
36091
+ 403: components["responses"]["Error"];
36092
+ 404: components["responses"]["Error"];
36093
+ 409: components["responses"]["Error"];
36094
+ };
36095
+ };
36096
+ saveTemplateUpdatePolicy: {
36097
+ parameters: {
36098
+ query?: never;
36099
+ header?: never;
36100
+ path?: never;
36101
+ cookie?: never;
36102
+ };
36103
+ requestBody: {
36104
+ content: {
36105
+ "application/json": components["schemas"]["TemplateUpdatePolicyInput"];
36106
+ };
36107
+ };
36108
+ responses: {
36109
+ /** @description Success */
36110
+ 200: {
36111
+ headers: {
36112
+ [name: string]: unknown;
36113
+ };
36114
+ content: {
36115
+ "application/json": components["schemas"]["TemplateUpdatePolicyEnvelope"];
36116
+ };
36117
+ };
36118
+ 400: components["responses"]["Error"];
36119
+ 403: components["responses"]["Error"];
36120
+ 404: components["responses"]["Error"];
36121
+ 409: components["responses"]["Error"];
36122
+ };
36123
+ };
34910
36124
  listManifestPackages: {
34911
36125
  parameters: {
34912
36126
  query?: {
@@ -40705,6 +41919,8 @@ export interface operations {
40705
41919
  parameters: {
40706
41920
  query?: {
40707
41921
  namespace?: components["parameters"]["KubernetesNamespaceDefaultQuery"];
41922
+ /** @description Reject the request if the live Pod UID differs. Omit only for legacy clients, never when restoring a saved session. */
41923
+ expectedUid?: string;
40708
41924
  container?: string;
40709
41925
  tailLines?: number;
40710
41926
  sinceSeconds?: number;
@@ -40730,6 +41946,15 @@ export interface operations {
40730
41946
  };
40731
41947
  403: components["responses"]["Error"];
40732
41948
  404: components["responses"]["Error"];
41949
+ /** @description The current Pod UID differs from expectedUid; open the current Pod instead of adopting it by name. */
41950
+ 409: {
41951
+ headers: {
41952
+ [name: string]: unknown;
41953
+ };
41954
+ content: {
41955
+ "application/json": components["schemas"]["ErrorEnvelope"];
41956
+ };
41957
+ };
40733
41958
  503: components["responses"]["Error"];
40734
41959
  };
40735
41960
  };
@@ -42508,6 +43733,39 @@ export interface operations {
42508
43733
  503: components["responses"]["Error"];
42509
43734
  };
42510
43735
  };
43736
+ getKubernetesResourceMonitoring: {
43737
+ parameters: {
43738
+ query: {
43739
+ view: components["schemas"]["ResourceMonitoringViewName"];
43740
+ node?: string;
43741
+ from?: string;
43742
+ to?: string;
43743
+ rangeMinutes?: number;
43744
+ stepSeconds?: number;
43745
+ };
43746
+ header?: never;
43747
+ path: {
43748
+ clusterID: components["parameters"]["ClusterID"];
43749
+ };
43750
+ cookie?: never;
43751
+ };
43752
+ requestBody?: never;
43753
+ responses: {
43754
+ /** @description Per-panel quality and bounded node series. */
43755
+ 200: {
43756
+ headers: {
43757
+ [name: string]: unknown;
43758
+ };
43759
+ content: {
43760
+ "application/json": components["schemas"]["ResourceMonitoringEnvelope"];
43761
+ };
43762
+ };
43763
+ 400: components["responses"]["Error"];
43764
+ 403: components["responses"]["Error"];
43765
+ 404: components["responses"]["Error"];
43766
+ 503: components["responses"]["Error"];
43767
+ };
43768
+ };
42511
43769
  getKubernetesNetworkTopology: {
42512
43770
  parameters: {
42513
43771
  query?: {
@@ -42522,7 +43780,7 @@ export interface operations {
42522
43780
  };
42523
43781
  requestBody?: never;
42524
43782
  responses: {
42525
- /** @description Resolved ingress and Gateway API topology for the selected scope. */
43783
+ /** @description Bounded permission-filtered Kubernetes, Gateway API, Traefik and APISIX topology, with per-source coverage and explicit unresolved relationships. */
42526
43784
  200: {
42527
43785
  headers: {
42528
43786
  [name: string]: unknown;
@@ -54983,4 +56241,603 @@ export interface operations {
54983
56241
  503: components["responses"]["Error"];
54984
56242
  };
54985
56243
  };
56244
+ deleteKubernetesHTTPRoute: {
56245
+ parameters: {
56246
+ query?: {
56247
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56248
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56249
+ };
56250
+ header?: never;
56251
+ path: {
56252
+ clusterID: components["parameters"]["ClusterID"];
56253
+ name: components["parameters"]["KubernetesResourceName"];
56254
+ };
56255
+ cookie?: never;
56256
+ };
56257
+ requestBody?: never;
56258
+ responses: {
56259
+ /** @description Resource deleted. */
56260
+ 204: {
56261
+ headers: {
56262
+ [name: string]: unknown;
56263
+ };
56264
+ content?: never;
56265
+ };
56266
+ 400: components["responses"]["Error"];
56267
+ 403: components["responses"]["Error"];
56268
+ 404: components["responses"]["Error"];
56269
+ 409: components["responses"]["Error"];
56270
+ 503: components["responses"]["Error"];
56271
+ };
56272
+ };
56273
+ getKubernetesHTTPRouteYaml: {
56274
+ parameters: {
56275
+ query?: {
56276
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56277
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56278
+ };
56279
+ header?: never;
56280
+ path: {
56281
+ clusterID: components["parameters"]["ClusterID"];
56282
+ name: components["parameters"]["KubernetesResourceName"];
56283
+ };
56284
+ cookie?: never;
56285
+ };
56286
+ requestBody?: never;
56287
+ responses: {
56288
+ /** @description Authorized Kubernetes resource YAML. */
56289
+ 200: {
56290
+ headers: {
56291
+ [name: string]: unknown;
56292
+ };
56293
+ content: {
56294
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56295
+ };
56296
+ };
56297
+ 400: components["responses"]["Error"];
56298
+ 403: components["responses"]["Error"];
56299
+ 404: components["responses"]["Error"];
56300
+ 409: components["responses"]["Error"];
56301
+ 503: components["responses"]["Error"];
56302
+ };
56303
+ };
56304
+ applyKubernetesHTTPRouteYaml: {
56305
+ parameters: {
56306
+ query?: {
56307
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56308
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56309
+ };
56310
+ header?: never;
56311
+ path: {
56312
+ clusterID: components["parameters"]["ClusterID"];
56313
+ name: components["parameters"]["KubernetesResourceName"];
56314
+ };
56315
+ cookie?: never;
56316
+ };
56317
+ requestBody: {
56318
+ content: {
56319
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56320
+ };
56321
+ };
56322
+ responses: {
56323
+ /** @description Authorized Kubernetes resource YAML. */
56324
+ 200: {
56325
+ headers: {
56326
+ [name: string]: unknown;
56327
+ };
56328
+ content: {
56329
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56330
+ };
56331
+ };
56332
+ 400: components["responses"]["Error"];
56333
+ 403: components["responses"]["Error"];
56334
+ 404: components["responses"]["Error"];
56335
+ 409: components["responses"]["Error"];
56336
+ 503: components["responses"]["Error"];
56337
+ };
56338
+ };
56339
+ deleteKubernetesGRPCRoute: {
56340
+ parameters: {
56341
+ query?: {
56342
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56343
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56344
+ };
56345
+ header?: never;
56346
+ path: {
56347
+ clusterID: components["parameters"]["ClusterID"];
56348
+ name: components["parameters"]["KubernetesResourceName"];
56349
+ };
56350
+ cookie?: never;
56351
+ };
56352
+ requestBody?: never;
56353
+ responses: {
56354
+ /** @description Resource deleted. */
56355
+ 204: {
56356
+ headers: {
56357
+ [name: string]: unknown;
56358
+ };
56359
+ content?: never;
56360
+ };
56361
+ 400: components["responses"]["Error"];
56362
+ 403: components["responses"]["Error"];
56363
+ 404: components["responses"]["Error"];
56364
+ 409: components["responses"]["Error"];
56365
+ 503: components["responses"]["Error"];
56366
+ };
56367
+ };
56368
+ getKubernetesGRPCRouteYaml: {
56369
+ parameters: {
56370
+ query?: {
56371
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56372
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56373
+ };
56374
+ header?: never;
56375
+ path: {
56376
+ clusterID: components["parameters"]["ClusterID"];
56377
+ name: components["parameters"]["KubernetesResourceName"];
56378
+ };
56379
+ cookie?: never;
56380
+ };
56381
+ requestBody?: never;
56382
+ responses: {
56383
+ /** @description Authorized Kubernetes resource YAML. */
56384
+ 200: {
56385
+ headers: {
56386
+ [name: string]: unknown;
56387
+ };
56388
+ content: {
56389
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56390
+ };
56391
+ };
56392
+ 400: components["responses"]["Error"];
56393
+ 403: components["responses"]["Error"];
56394
+ 404: components["responses"]["Error"];
56395
+ 409: components["responses"]["Error"];
56396
+ 503: components["responses"]["Error"];
56397
+ };
56398
+ };
56399
+ applyKubernetesGRPCRouteYaml: {
56400
+ parameters: {
56401
+ query?: {
56402
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56403
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56404
+ };
56405
+ header?: never;
56406
+ path: {
56407
+ clusterID: components["parameters"]["ClusterID"];
56408
+ name: components["parameters"]["KubernetesResourceName"];
56409
+ };
56410
+ cookie?: never;
56411
+ };
56412
+ requestBody: {
56413
+ content: {
56414
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56415
+ };
56416
+ };
56417
+ responses: {
56418
+ /** @description Authorized Kubernetes resource YAML. */
56419
+ 200: {
56420
+ headers: {
56421
+ [name: string]: unknown;
56422
+ };
56423
+ content: {
56424
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56425
+ };
56426
+ };
56427
+ 400: components["responses"]["Error"];
56428
+ 403: components["responses"]["Error"];
56429
+ 404: components["responses"]["Error"];
56430
+ 409: components["responses"]["Error"];
56431
+ 503: components["responses"]["Error"];
56432
+ };
56433
+ };
56434
+ deleteKubernetesBackendTLSPolicy: {
56435
+ parameters: {
56436
+ query?: {
56437
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56438
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56439
+ };
56440
+ header?: never;
56441
+ path: {
56442
+ clusterID: components["parameters"]["ClusterID"];
56443
+ name: components["parameters"]["KubernetesResourceName"];
56444
+ };
56445
+ cookie?: never;
56446
+ };
56447
+ requestBody?: never;
56448
+ responses: {
56449
+ /** @description Resource deleted. */
56450
+ 204: {
56451
+ headers: {
56452
+ [name: string]: unknown;
56453
+ };
56454
+ content?: never;
56455
+ };
56456
+ 400: components["responses"]["Error"];
56457
+ 403: components["responses"]["Error"];
56458
+ 404: components["responses"]["Error"];
56459
+ 409: components["responses"]["Error"];
56460
+ 503: components["responses"]["Error"];
56461
+ };
56462
+ };
56463
+ getKubernetesBackendTLSPolicyYaml: {
56464
+ parameters: {
56465
+ query?: {
56466
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56467
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56468
+ };
56469
+ header?: never;
56470
+ path: {
56471
+ clusterID: components["parameters"]["ClusterID"];
56472
+ name: components["parameters"]["KubernetesResourceName"];
56473
+ };
56474
+ cookie?: never;
56475
+ };
56476
+ requestBody?: never;
56477
+ responses: {
56478
+ /** @description Authorized Kubernetes resource YAML. */
56479
+ 200: {
56480
+ headers: {
56481
+ [name: string]: unknown;
56482
+ };
56483
+ content: {
56484
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56485
+ };
56486
+ };
56487
+ 400: components["responses"]["Error"];
56488
+ 403: components["responses"]["Error"];
56489
+ 404: components["responses"]["Error"];
56490
+ 409: components["responses"]["Error"];
56491
+ 503: components["responses"]["Error"];
56492
+ };
56493
+ };
56494
+ applyKubernetesBackendTLSPolicyYaml: {
56495
+ parameters: {
56496
+ query?: {
56497
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56498
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56499
+ };
56500
+ header?: never;
56501
+ path: {
56502
+ clusterID: components["parameters"]["ClusterID"];
56503
+ name: components["parameters"]["KubernetesResourceName"];
56504
+ };
56505
+ cookie?: never;
56506
+ };
56507
+ requestBody: {
56508
+ content: {
56509
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56510
+ };
56511
+ };
56512
+ responses: {
56513
+ /** @description Authorized Kubernetes resource YAML. */
56514
+ 200: {
56515
+ headers: {
56516
+ [name: string]: unknown;
56517
+ };
56518
+ content: {
56519
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56520
+ };
56521
+ };
56522
+ 400: components["responses"]["Error"];
56523
+ 403: components["responses"]["Error"];
56524
+ 404: components["responses"]["Error"];
56525
+ 409: components["responses"]["Error"];
56526
+ 503: components["responses"]["Error"];
56527
+ };
56528
+ };
56529
+ deleteKubernetesReferenceGrant: {
56530
+ parameters: {
56531
+ query?: {
56532
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56533
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56534
+ };
56535
+ header?: never;
56536
+ path: {
56537
+ clusterID: components["parameters"]["ClusterID"];
56538
+ name: components["parameters"]["KubernetesResourceName"];
56539
+ };
56540
+ cookie?: never;
56541
+ };
56542
+ requestBody?: never;
56543
+ responses: {
56544
+ /** @description Resource deleted. */
56545
+ 204: {
56546
+ headers: {
56547
+ [name: string]: unknown;
56548
+ };
56549
+ content?: never;
56550
+ };
56551
+ 400: components["responses"]["Error"];
56552
+ 403: components["responses"]["Error"];
56553
+ 404: components["responses"]["Error"];
56554
+ 409: components["responses"]["Error"];
56555
+ 503: components["responses"]["Error"];
56556
+ };
56557
+ };
56558
+ getKubernetesReferenceGrantYaml: {
56559
+ parameters: {
56560
+ query?: {
56561
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56562
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56563
+ };
56564
+ header?: never;
56565
+ path: {
56566
+ clusterID: components["parameters"]["ClusterID"];
56567
+ name: components["parameters"]["KubernetesResourceName"];
56568
+ };
56569
+ cookie?: never;
56570
+ };
56571
+ requestBody?: never;
56572
+ responses: {
56573
+ /** @description Authorized Kubernetes resource YAML. */
56574
+ 200: {
56575
+ headers: {
56576
+ [name: string]: unknown;
56577
+ };
56578
+ content: {
56579
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56580
+ };
56581
+ };
56582
+ 400: components["responses"]["Error"];
56583
+ 403: components["responses"]["Error"];
56584
+ 404: components["responses"]["Error"];
56585
+ 409: components["responses"]["Error"];
56586
+ 503: components["responses"]["Error"];
56587
+ };
56588
+ };
56589
+ applyKubernetesReferenceGrantYaml: {
56590
+ parameters: {
56591
+ query?: {
56592
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56593
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56594
+ };
56595
+ header?: never;
56596
+ path: {
56597
+ clusterID: components["parameters"]["ClusterID"];
56598
+ name: components["parameters"]["KubernetesResourceName"];
56599
+ };
56600
+ cookie?: never;
56601
+ };
56602
+ requestBody: {
56603
+ content: {
56604
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56605
+ };
56606
+ };
56607
+ responses: {
56608
+ /** @description Authorized Kubernetes resource YAML. */
56609
+ 200: {
56610
+ headers: {
56611
+ [name: string]: unknown;
56612
+ };
56613
+ content: {
56614
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56615
+ };
56616
+ };
56617
+ 400: components["responses"]["Error"];
56618
+ 403: components["responses"]["Error"];
56619
+ 404: components["responses"]["Error"];
56620
+ 409: components["responses"]["Error"];
56621
+ 503: components["responses"]["Error"];
56622
+ };
56623
+ };
56624
+ deleteKubernetesHorizontalPodAutoscaler: {
56625
+ parameters: {
56626
+ query?: {
56627
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56628
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56629
+ };
56630
+ header?: never;
56631
+ path: {
56632
+ clusterID: components["parameters"]["ClusterID"];
56633
+ name: components["parameters"]["KubernetesResourceName"];
56634
+ };
56635
+ cookie?: never;
56636
+ };
56637
+ requestBody?: never;
56638
+ responses: {
56639
+ /** @description Resource deleted. */
56640
+ 204: {
56641
+ headers: {
56642
+ [name: string]: unknown;
56643
+ };
56644
+ content?: never;
56645
+ };
56646
+ 400: components["responses"]["Error"];
56647
+ 403: components["responses"]["Error"];
56648
+ 404: components["responses"]["Error"];
56649
+ 409: components["responses"]["Error"];
56650
+ 503: components["responses"]["Error"];
56651
+ };
56652
+ };
56653
+ getKubernetesHorizontalPodAutoscalerYaml: {
56654
+ parameters: {
56655
+ query?: {
56656
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56657
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56658
+ };
56659
+ header?: never;
56660
+ path: {
56661
+ clusterID: components["parameters"]["ClusterID"];
56662
+ name: components["parameters"]["KubernetesResourceName"];
56663
+ };
56664
+ cookie?: never;
56665
+ };
56666
+ requestBody?: never;
56667
+ responses: {
56668
+ /** @description Authorized Kubernetes resource YAML. */
56669
+ 200: {
56670
+ headers: {
56671
+ [name: string]: unknown;
56672
+ };
56673
+ content: {
56674
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56675
+ };
56676
+ };
56677
+ 400: components["responses"]["Error"];
56678
+ 403: components["responses"]["Error"];
56679
+ 404: components["responses"]["Error"];
56680
+ 409: components["responses"]["Error"];
56681
+ 503: components["responses"]["Error"];
56682
+ };
56683
+ };
56684
+ applyKubernetesHorizontalPodAutoscalerYaml: {
56685
+ parameters: {
56686
+ query?: {
56687
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56688
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56689
+ };
56690
+ header?: never;
56691
+ path: {
56692
+ clusterID: components["parameters"]["ClusterID"];
56693
+ name: components["parameters"]["KubernetesResourceName"];
56694
+ };
56695
+ cookie?: never;
56696
+ };
56697
+ requestBody: {
56698
+ content: {
56699
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56700
+ };
56701
+ };
56702
+ responses: {
56703
+ /** @description Authorized Kubernetes resource YAML. */
56704
+ 200: {
56705
+ headers: {
56706
+ [name: string]: unknown;
56707
+ };
56708
+ content: {
56709
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56710
+ };
56711
+ };
56712
+ 400: components["responses"]["Error"];
56713
+ 403: components["responses"]["Error"];
56714
+ 404: components["responses"]["Error"];
56715
+ 409: components["responses"]["Error"];
56716
+ 503: components["responses"]["Error"];
56717
+ };
56718
+ };
56719
+ deleteKubernetesPodDisruptionBudget: {
56720
+ parameters: {
56721
+ query?: {
56722
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56723
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56724
+ };
56725
+ header?: never;
56726
+ path: {
56727
+ clusterID: components["parameters"]["ClusterID"];
56728
+ name: components["parameters"]["KubernetesResourceName"];
56729
+ };
56730
+ cookie?: never;
56731
+ };
56732
+ requestBody?: never;
56733
+ responses: {
56734
+ /** @description Resource deleted. */
56735
+ 204: {
56736
+ headers: {
56737
+ [name: string]: unknown;
56738
+ };
56739
+ content?: never;
56740
+ };
56741
+ 400: components["responses"]["Error"];
56742
+ 403: components["responses"]["Error"];
56743
+ 404: components["responses"]["Error"];
56744
+ 409: components["responses"]["Error"];
56745
+ 503: components["responses"]["Error"];
56746
+ };
56747
+ };
56748
+ getKubernetesPodDisruptionBudgetYaml: {
56749
+ parameters: {
56750
+ query?: {
56751
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56752
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56753
+ };
56754
+ header?: never;
56755
+ path: {
56756
+ clusterID: components["parameters"]["ClusterID"];
56757
+ name: components["parameters"]["KubernetesResourceName"];
56758
+ };
56759
+ cookie?: never;
56760
+ };
56761
+ requestBody?: never;
56762
+ responses: {
56763
+ /** @description Authorized Kubernetes resource YAML. */
56764
+ 200: {
56765
+ headers: {
56766
+ [name: string]: unknown;
56767
+ };
56768
+ content: {
56769
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56770
+ };
56771
+ };
56772
+ 400: components["responses"]["Error"];
56773
+ 403: components["responses"]["Error"];
56774
+ 404: components["responses"]["Error"];
56775
+ 409: components["responses"]["Error"];
56776
+ 503: components["responses"]["Error"];
56777
+ };
56778
+ };
56779
+ applyKubernetesPodDisruptionBudgetYaml: {
56780
+ parameters: {
56781
+ query?: {
56782
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56783
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56784
+ };
56785
+ header?: never;
56786
+ path: {
56787
+ clusterID: components["parameters"]["ClusterID"];
56788
+ name: components["parameters"]["KubernetesResourceName"];
56789
+ };
56790
+ cookie?: never;
56791
+ };
56792
+ requestBody: {
56793
+ content: {
56794
+ "application/json": components["schemas"]["KubernetesResourceYamlInput"];
56795
+ };
56796
+ };
56797
+ responses: {
56798
+ /** @description Authorized Kubernetes resource YAML. */
56799
+ 200: {
56800
+ headers: {
56801
+ [name: string]: unknown;
56802
+ };
56803
+ content: {
56804
+ "application/json": components["schemas"]["KubernetesResourceYamlEnvelope"];
56805
+ };
56806
+ };
56807
+ 400: components["responses"]["Error"];
56808
+ 403: components["responses"]["Error"];
56809
+ 404: components["responses"]["Error"];
56810
+ 409: components["responses"]["Error"];
56811
+ 503: components["responses"]["Error"];
56812
+ };
56813
+ };
56814
+ deleteKubernetesReplicationController: {
56815
+ parameters: {
56816
+ query?: {
56817
+ /** @description Omit to aggregate across namespaces when the operation supports cluster-wide reads. */
56818
+ namespace?: components["parameters"]["KubernetesNamespaceQuery"];
56819
+ };
56820
+ header?: never;
56821
+ path: {
56822
+ clusterID: components["parameters"]["ClusterID"];
56823
+ name: components["parameters"]["KubernetesResourceName"];
56824
+ };
56825
+ cookie?: never;
56826
+ };
56827
+ requestBody?: never;
56828
+ responses: {
56829
+ /** @description Resource deleted. */
56830
+ 204: {
56831
+ headers: {
56832
+ [name: string]: unknown;
56833
+ };
56834
+ content?: never;
56835
+ };
56836
+ 400: components["responses"]["Error"];
56837
+ 403: components["responses"]["Error"];
56838
+ 404: components["responses"]["Error"];
56839
+ 409: components["responses"]["Error"];
56840
+ 503: components["responses"]["Error"];
56841
+ };
56842
+ };
54986
56843
  }