From 3c6deeb55bef7d68a2b312bcdaeca48189e82077 Mon Sep 17 00:00:00 2001
From: Yann Hamon <yann+github@mandragor.org>
Date: Wed, 19 Mar 2025 10:39:07 +0000
Subject: [PATCH] Adding new schemas

---
 master-local/_definitions.json                | 35 +++++++++++++++---
 master-local/all.json                         |  3 ++
 master-local/csidriverspec-storage-v1.json    |  8 +++++
 master-local/csidriverspec.json               |  8 +++++
 ...ources-admissionregistration-v1alpha1.json |  8 ++---
 master-local/nodeswapstatus-v1.json           | 15 ++++++++
 master-local/nodeswapstatus.json              | 15 ++++++++
 master-local/nodesysteminfo-v1.json           |  4 +++
 master-local/nodesysteminfo.json              |  4 +++
 master-local/podstatus-v1.json                |  2 +-
 master-local/podstatus.json                   |  2 +-
 master-local/volumeerror-storage-v1.json      |  8 +++++
 master-local/volumeerror.json                 |  8 +++++
 master-standalone-strict/_definitions.json    | 36 ++++++++++++++++---
 master-standalone-strict/all.json             |  3 ++
 .../csidriver-storage-v1.json                 |  8 +++++
 master-standalone-strict/csidriver.json       |  8 +++++
 .../csidriverlist-storage-v1.json             |  8 +++++
 master-standalone-strict/csidriverlist.json   |  8 +++++
 .../csidriverspec-storage-v1.json             |  8 +++++
 master-standalone-strict/csidriverspec.json   |  8 +++++
 ...ources-admissionregistration-v1alpha1.json |  6 ++--
 ...policy-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicy.json              |  6 ++--
 ...inding-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybinding.json       |  6 ++--
 ...nglist-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybindinglist.json   |  6 ++--
 ...ngspec-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybindingspec.json   |  6 ++--
 ...cylist-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicylist.json          |  6 ++--
 ...cyspec-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicyspec.json          |  6 ++--
 master-standalone-strict/node-v1.json         | 18 ++++++++++
 master-standalone-strict/node.json            | 18 ++++++++++
 master-standalone-strict/nodelist-v1.json     | 18 ++++++++++
 master-standalone-strict/nodelist.json        | 18 ++++++++++
 master-standalone-strict/nodestatus-v1.json   | 18 ++++++++++
 master-standalone-strict/nodestatus.json      | 18 ++++++++++
 .../nodeswapstatus-v1.json                    | 16 +++++++++
 master-standalone-strict/nodeswapstatus.json  | 16 +++++++++
 .../nodesysteminfo-v1.json                    | 18 ++++++++++
 master-standalone-strict/nodesysteminfo.json  | 18 ++++++++++
 master-standalone-strict/pod-v1.json          |  2 +-
 master-standalone-strict/pod.json             |  2 +-
 master-standalone-strict/podlist-v1.json      |  2 +-
 master-standalone-strict/podlist.json         |  2 +-
 master-standalone-strict/podstatus-v1.json    |  2 +-
 master-standalone-strict/podstatus.json       |  2 +-
 .../volumeattachment-storage-v1.json          | 16 +++++++++
 .../volumeattachment.json                     | 16 +++++++++
 .../volumeattachmentlist-storage-v1.json      | 16 +++++++++
 .../volumeattachmentlist.json                 | 16 +++++++++
 .../volumeattachmentstatus-storage-v1.json    | 16 +++++++++
 .../volumeattachmentstatus.json               | 16 +++++++++
 .../volumeerror-storage-v1.json               |  8 +++++
 master-standalone-strict/volumeerror.json     |  8 +++++
 master-standalone/_definitions.json           | 35 +++++++++++++++---
 master-standalone/all.json                    |  3 ++
 master-standalone/csidriver-storage-v1.json   |  8 +++++
 master-standalone/csidriver.json              |  8 +++++
 .../csidriverlist-storage-v1.json             |  8 +++++
 master-standalone/csidriverlist.json          |  8 +++++
 .../csidriverspec-storage-v1.json             |  8 +++++
 master-standalone/csidriverspec.json          |  8 +++++
 ...ources-admissionregistration-v1alpha1.json |  6 ++--
 ...policy-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicy.json              |  6 ++--
 ...inding-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybinding.json       |  6 ++--
 ...nglist-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybindinglist.json   |  6 ++--
 ...ngspec-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicybindingspec.json   |  6 ++--
 ...cylist-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicylist.json          |  6 ++--
 ...cyspec-admissionregistration-v1alpha1.json |  6 ++--
 .../mutatingadmissionpolicyspec.json          |  6 ++--
 master-standalone/node-v1.json                | 17 +++++++++
 master-standalone/node.json                   | 17 +++++++++
 master-standalone/nodelist-v1.json            | 17 +++++++++
 master-standalone/nodelist.json               | 17 +++++++++
 master-standalone/nodestatus-v1.json          | 17 +++++++++
 master-standalone/nodestatus.json             | 17 +++++++++
 master-standalone/nodeswapstatus-v1.json      | 15 ++++++++
 master-standalone/nodeswapstatus.json         | 15 ++++++++
 master-standalone/nodesysteminfo-v1.json      | 17 +++++++++
 master-standalone/nodesysteminfo.json         | 17 +++++++++
 master-standalone/pod-v1.json                 |  2 +-
 master-standalone/pod.json                    |  2 +-
 master-standalone/podlist-v1.json             |  2 +-
 master-standalone/podlist.json                |  2 +-
 master-standalone/podstatus-v1.json           |  2 +-
 master-standalone/podstatus.json              |  2 +-
 .../volumeattachment-storage-v1.json          | 16 +++++++++
 master-standalone/volumeattachment.json       | 16 +++++++++
 .../volumeattachmentlist-storage-v1.json      | 16 +++++++++
 master-standalone/volumeattachmentlist.json   | 16 +++++++++
 .../volumeattachmentstatus-storage-v1.json    | 16 +++++++++
 master-standalone/volumeattachmentstatus.json | 16 +++++++++
 master-standalone/volumeerror-storage-v1.json |  8 +++++
 master-standalone/volumeerror.json            |  8 +++++
 master/_definitions.json                      | 35 +++++++++++++++---
 master/all.json                               |  3 ++
 master/csidriverspec-storage-v1.json          |  8 +++++
 master/csidriverspec.json                     |  8 +++++
 ...ources-admissionregistration-v1alpha1.json |  8 ++---
 master/nodeswapstatus-v1.json                 | 15 ++++++++
 master/nodeswapstatus.json                    | 15 ++++++++
 master/nodesysteminfo-v1.json                 |  4 +++
 master/nodesysteminfo.json                    |  4 +++
 master/podstatus-v1.json                      |  2 +-
 master/podstatus.json                         |  2 +-
 master/volumeerror-storage-v1.json            |  8 +++++
 master/volumeerror.json                       |  8 +++++
 116 files changed, 1037 insertions(+), 122 deletions(-)
 create mode 100644 master-local/nodeswapstatus-v1.json
 create mode 100644 master-local/nodeswapstatus.json
 create mode 100644 master-standalone-strict/nodeswapstatus-v1.json
 create mode 100644 master-standalone-strict/nodeswapstatus.json
 create mode 100644 master-standalone/nodeswapstatus-v1.json
 create mode 100644 master-standalone/nodeswapstatus.json
 create mode 100644 master/nodeswapstatus-v1.json
 create mode 100644 master/nodeswapstatus.json

diff --git a/master-local/_definitions.json b/master-local/_definitions.json
index 45efe750ad..2b27b1bee1 100644
--- a/master-local/_definitions.json
+++ b/master-local/_definitions.json
@@ -931,7 +931,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -939,7 +939,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": "string"
         },
         "namespaceSelector": {
@@ -948,10 +948,10 @@
         },
         "objectSelector": {
           "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-          "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+          "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -8952,6 +8952,17 @@
       },
       "type": "object"
     },
+    "io.k8s.api.core.v1.NodeSwapStatus": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": "integer"
+        }
+      },
+      "type": "object"
+    },
     "io.k8s.api.core.v1.NodeSystemInfo": {
       "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
       "properties": {
@@ -8991,6 +9002,10 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "$ref": "#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+          "description": "Swap Info reported by the node."
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
@@ -10339,7 +10354,7 @@
           "type": "string"
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": "string"
         },
         "resourceClaimStatuses": {
@@ -17226,6 +17241,11 @@
           "description": "fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.\n\nDefaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce.",
           "type": "string"
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": "integer"
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": "boolean"
@@ -17742,6 +17762,11 @@
     "io.k8s.api.storage.v1.VolumeError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": "integer"
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": "string"
diff --git a/master-local/all.json b/master-local/all.json
index bfabd71e7a..c50db642e6 100644
--- a/master-local/all.json
+++ b/master-local/all.json
@@ -891,6 +891,9 @@
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeStatus"
     },
+    {
+      "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus"
+    },
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSystemInfo"
     },
diff --git a/master-local/csidriverspec-storage-v1.json b/master-local/csidriverspec-storage-v1.json
index 5984e93e68..bb64a38bfd 100644
--- a/master-local/csidriverspec-storage-v1.json
+++ b/master-local/csidriverspec-storage-v1.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-local/csidriverspec.json b/master-local/csidriverspec.json
index 5984e93e68..bb64a38bfd 100644
--- a/master-local/csidriverspec.json
+++ b/master-local/csidriverspec.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-local/matchresources-admissionregistration-v1alpha1.json b/master-local/matchresources-admissionregistration-v1alpha1.json
index 8cab5ceff2..195b6d279d 100644
--- a/master-local/matchresources-admissionregistration-v1alpha1.json
+++ b/master-local/matchresources-admissionregistration-v1alpha1.json
@@ -2,7 +2,7 @@
   "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
   "properties": {
     "excludeResourceRules": {
-      "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+      "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "items": {
         "$ref": "_definitions.json#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
       },
@@ -13,7 +13,7 @@
       "x-kubernetes-list-type": "atomic"
     },
     "matchPolicy": {
-      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
       "type": [
         "string",
         "null"
@@ -25,10 +25,10 @@
     },
     "objectSelector": {
       "$ref": "_definitions.json#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-      "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+      "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
     },
     "resourceRules": {
-      "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+      "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
       "items": {
         "$ref": "_definitions.json#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
       },
diff --git a/master-local/nodeswapstatus-v1.json b/master-local/nodeswapstatus-v1.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master-local/nodeswapstatus-v1.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-local/nodeswapstatus.json b/master-local/nodeswapstatus.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master-local/nodeswapstatus.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-local/nodesysteminfo-v1.json b/master-local/nodesysteminfo-v1.json
index 2b8bb78400..0cb18c3502 100644
--- a/master-local/nodesysteminfo-v1.json
+++ b/master-local/nodesysteminfo-v1.json
@@ -64,6 +64,10 @@
         "null"
       ]
     },
+    "swap": {
+      "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+      "description": "Swap Info reported by the node."
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-local/nodesysteminfo.json b/master-local/nodesysteminfo.json
index 2b8bb78400..0cb18c3502 100644
--- a/master-local/nodesysteminfo.json
+++ b/master-local/nodesysteminfo.json
@@ -64,6 +64,10 @@
         "null"
       ]
     },
+    "swap": {
+      "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+      "description": "Swap Info reported by the node."
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-local/podstatus-v1.json b/master-local/podstatus-v1.json
index 1032637cf8..cb47907ff4 100644
--- a/master-local/podstatus-v1.json
+++ b/master-local/podstatus-v1.json
@@ -137,7 +137,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-local/podstatus.json b/master-local/podstatus.json
index 1032637cf8..cb47907ff4 100644
--- a/master-local/podstatus.json
+++ b/master-local/podstatus.json
@@ -137,7 +137,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-local/volumeerror-storage-v1.json b/master-local/volumeerror-storage-v1.json
index 987a1075b6..c2e4680854 100644
--- a/master-local/volumeerror-storage-v1.json
+++ b/master-local/volumeerror-storage-v1.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master-local/volumeerror.json b/master-local/volumeerror.json
index 987a1075b6..c2e4680854 100644
--- a/master-local/volumeerror.json
+++ b/master-local/volumeerror.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master-standalone-strict/_definitions.json b/master-standalone-strict/_definitions.json
index adb2cb0fe8..97dfc24c04 100644
--- a/master-standalone-strict/_definitions.json
+++ b/master-standalone-strict/_definitions.json
@@ -960,7 +960,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -968,7 +968,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": "string"
         },
         "namespaceSelector": {
@@ -977,10 +977,10 @@
         },
         "objectSelector": {
           "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-          "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+          "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -9248,6 +9248,18 @@
       "type": "object",
       "additionalProperties": false
     },
+    "io.k8s.api.core.v1.NodeSwapStatus": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": "integer"
+        }
+      },
+      "type": "object",
+      "additionalProperties": false
+    },
     "io.k8s.api.core.v1.NodeSystemInfo": {
       "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
       "properties": {
@@ -9287,6 +9299,10 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "$ref": "#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+          "description": "Swap Info reported by the node."
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
@@ -10666,7 +10682,7 @@
           "type": "string"
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": "string"
         },
         "resourceClaimStatuses": {
@@ -17791,6 +17807,11 @@
           "description": "fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.\n\nDefaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce.",
           "type": "string"
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": "integer"
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": "boolean"
@@ -18322,6 +18343,11 @@
     "io.k8s.api.storage.v1.VolumeError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": "integer"
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": "string"
diff --git a/master-standalone-strict/all.json b/master-standalone-strict/all.json
index bfabd71e7a..c50db642e6 100644
--- a/master-standalone-strict/all.json
+++ b/master-standalone-strict/all.json
@@ -891,6 +891,9 @@
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeStatus"
     },
+    {
+      "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus"
+    },
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSystemInfo"
     },
diff --git a/master-standalone-strict/csidriver-storage-v1.json b/master-standalone-strict/csidriver-storage-v1.json
index ebdbfc9fcf..20fd17eabe 100644
--- a/master-standalone-strict/csidriver-storage-v1.json
+++ b/master-standalone-strict/csidriver-storage-v1.json
@@ -291,6 +291,14 @@
             "null"
           ]
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": [
diff --git a/master-standalone-strict/csidriver.json b/master-standalone-strict/csidriver.json
index 446fc2dc36..5082787fc3 100644
--- a/master-standalone-strict/csidriver.json
+++ b/master-standalone-strict/csidriver.json
@@ -288,6 +288,14 @@
             "null"
           ]
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": [
diff --git a/master-standalone-strict/csidriverlist-storage-v1.json b/master-standalone-strict/csidriverlist-storage-v1.json
index 9e0cd8fe53..6ce2888f20 100644
--- a/master-standalone-strict/csidriverlist-storage-v1.json
+++ b/master-standalone-strict/csidriverlist-storage-v1.json
@@ -306,6 +306,14 @@
                   "null"
                 ]
               },
+              "nodeAllocatableUpdatePeriodSeconds": {
+                "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+                "format": "int64",
+                "type": [
+                  "integer",
+                  "null"
+                ]
+              },
               "podInfoOnMount": {
                 "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
                 "type": [
diff --git a/master-standalone-strict/csidriverlist.json b/master-standalone-strict/csidriverlist.json
index a36aaa0b0d..2853a3b0b5 100644
--- a/master-standalone-strict/csidriverlist.json
+++ b/master-standalone-strict/csidriverlist.json
@@ -300,6 +300,14 @@
                   "null"
                 ]
               },
+              "nodeAllocatableUpdatePeriodSeconds": {
+                "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+                "format": "int64",
+                "type": [
+                  "integer",
+                  "null"
+                ]
+              },
               "podInfoOnMount": {
                 "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
                 "type": [
diff --git a/master-standalone-strict/csidriverspec-storage-v1.json b/master-standalone-strict/csidriverspec-storage-v1.json
index c36d941d4f..6311a996c1 100644
--- a/master-standalone-strict/csidriverspec-storage-v1.json
+++ b/master-standalone-strict/csidriverspec-storage-v1.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-standalone-strict/csidriverspec.json b/master-standalone-strict/csidriverspec.json
index c36d941d4f..6311a996c1 100644
--- a/master-standalone-strict/csidriverspec.json
+++ b/master-standalone-strict/csidriverspec.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-standalone-strict/matchresources-admissionregistration-v1alpha1.json b/master-standalone-strict/matchresources-admissionregistration-v1alpha1.json
index 3ba0c1f49f..28cac0e69f 100644
--- a/master-standalone-strict/matchresources-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/matchresources-admissionregistration-v1alpha1.json
@@ -2,7 +2,7 @@
   "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
   "properties": {
     "excludeResourceRules": {
-      "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+      "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "items": {
         "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
         "properties": {
@@ -98,7 +98,7 @@
       "x-kubernetes-list-type": "atomic"
     },
     "matchPolicy": {
-      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
       "type": [
         "string",
         "null"
@@ -241,7 +241,7 @@
       "additionalProperties": false
     },
     "resourceRules": {
-      "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+      "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
       "items": {
         "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
         "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicy-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
index d2045c6286..df9ab2462e 100644
--- a/master-standalone-strict/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
@@ -322,7 +322,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -418,7 +418,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -561,7 +561,7 @@
               "additionalProperties": false
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicy.json b/master-standalone-strict/mutatingadmissionpolicy.json
index 651521f4f3..9af76c5382 100644
--- a/master-standalone-strict/mutatingadmissionpolicy.json
+++ b/master-standalone-strict/mutatingadmissionpolicy.json
@@ -319,7 +319,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -415,7 +415,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -558,7 +558,7 @@
               "additionalProperties": false
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
index 5d8fe8efc6..83ad3322d7 100644
--- a/master-standalone-strict/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
@@ -281,7 +281,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -377,7 +377,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -520,7 +520,7 @@
               "additionalProperties": false
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybinding.json b/master-standalone-strict/mutatingadmissionpolicybinding.json
index e86659efdc..4edf02250f 100644
--- a/master-standalone-strict/mutatingadmissionpolicybinding.json
+++ b/master-standalone-strict/mutatingadmissionpolicybinding.json
@@ -278,7 +278,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -374,7 +374,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -517,7 +517,7 @@
               "additionalProperties": false
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
index 82c0c37846..1933d40c81 100644
--- a/master-standalone-strict/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
@@ -296,7 +296,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -392,7 +392,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -535,7 +535,7 @@
                     "additionalProperties": false
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybindinglist.json b/master-standalone-strict/mutatingadmissionpolicybindinglist.json
index 4ce7ba6589..4b1ba6c9c9 100644
--- a/master-standalone-strict/mutatingadmissionpolicybindinglist.json
+++ b/master-standalone-strict/mutatingadmissionpolicybindinglist.json
@@ -290,7 +290,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -386,7 +386,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -529,7 +529,7 @@
                     "additionalProperties": false
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
index 9ac5429129..6f4f49af1a 100644
--- a/master-standalone-strict/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
@@ -5,7 +5,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -101,7 +101,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -244,7 +244,7 @@
           "additionalProperties": false
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicybindingspec.json b/master-standalone-strict/mutatingadmissionpolicybindingspec.json
index 9ac5429129..6f4f49af1a 100644
--- a/master-standalone-strict/mutatingadmissionpolicybindingspec.json
+++ b/master-standalone-strict/mutatingadmissionpolicybindingspec.json
@@ -5,7 +5,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -101,7 +101,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -244,7 +244,7 @@
           "additionalProperties": false
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
index 6b894ba506..e2ada0bccb 100644
--- a/master-standalone-strict/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
@@ -337,7 +337,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -433,7 +433,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -576,7 +576,7 @@
                     "additionalProperties": false
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicylist.json b/master-standalone-strict/mutatingadmissionpolicylist.json
index 08dd9ba70e..9b1911800a 100644
--- a/master-standalone-strict/mutatingadmissionpolicylist.json
+++ b/master-standalone-strict/mutatingadmissionpolicylist.json
@@ -331,7 +331,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -427,7 +427,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -570,7 +570,7 @@
                     "additionalProperties": false
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json b/master-standalone-strict/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
index 8d2da03b0a..b31f57427f 100644
--- a/master-standalone-strict/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
+++ b/master-standalone-strict/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
@@ -46,7 +46,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -142,7 +142,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -285,7 +285,7 @@
           "additionalProperties": false
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone-strict/mutatingadmissionpolicyspec.json b/master-standalone-strict/mutatingadmissionpolicyspec.json
index 8d2da03b0a..b31f57427f 100644
--- a/master-standalone-strict/mutatingadmissionpolicyspec.json
+++ b/master-standalone-strict/mutatingadmissionpolicyspec.json
@@ -46,7 +46,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -142,7 +142,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -285,7 +285,7 @@
           "additionalProperties": false
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone-strict/node-v1.json b/master-standalone-strict/node-v1.json
index 29bda0689e..f5485f12c5 100644
--- a/master-standalone-strict/node-v1.json
+++ b/master-standalone-strict/node-v1.json
@@ -866,6 +866,24 @@
               "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
               "type": "string"
             },
+            "swap": {
+              "description": "NodeSwapStatus represents swap memory information.",
+              "properties": {
+                "capacity": {
+                  "description": "Total amount of swap memory in bytes.",
+                  "format": "int64",
+                  "type": [
+                    "integer",
+                    "null"
+                  ]
+                }
+              },
+              "type": [
+                "object",
+                "null"
+              ],
+              "additionalProperties": false
+            },
             "systemUUID": {
               "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
               "type": "string"
diff --git a/master-standalone-strict/node.json b/master-standalone-strict/node.json
index 7dee2181d5..d6cd3eb69e 100644
--- a/master-standalone-strict/node.json
+++ b/master-standalone-strict/node.json
@@ -863,6 +863,24 @@
               "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
               "type": "string"
             },
+            "swap": {
+              "description": "NodeSwapStatus represents swap memory information.",
+              "properties": {
+                "capacity": {
+                  "description": "Total amount of swap memory in bytes.",
+                  "format": "int64",
+                  "type": [
+                    "integer",
+                    "null"
+                  ]
+                }
+              },
+              "type": [
+                "object",
+                "null"
+              ],
+              "additionalProperties": false
+            },
             "systemUUID": {
               "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
               "type": "string"
diff --git a/master-standalone-strict/nodelist-v1.json b/master-standalone-strict/nodelist-v1.json
index fac9f09ef6..e38ab0fe47 100644
--- a/master-standalone-strict/nodelist-v1.json
+++ b/master-standalone-strict/nodelist-v1.json
@@ -881,6 +881,24 @@
                     "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
                     "type": "string"
                   },
+                  "swap": {
+                    "description": "NodeSwapStatus represents swap memory information.",
+                    "properties": {
+                      "capacity": {
+                        "description": "Total amount of swap memory in bytes.",
+                        "format": "int64",
+                        "type": [
+                          "integer",
+                          "null"
+                        ]
+                      }
+                    },
+                    "type": [
+                      "object",
+                      "null"
+                    ],
+                    "additionalProperties": false
+                  },
                   "systemUUID": {
                     "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
                     "type": "string"
diff --git a/master-standalone-strict/nodelist.json b/master-standalone-strict/nodelist.json
index 778a940562..04abe6f671 100644
--- a/master-standalone-strict/nodelist.json
+++ b/master-standalone-strict/nodelist.json
@@ -875,6 +875,24 @@
                     "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
                     "type": "string"
                   },
+                  "swap": {
+                    "description": "NodeSwapStatus represents swap memory information.",
+                    "properties": {
+                      "capacity": {
+                        "description": "Total amount of swap memory in bytes.",
+                        "format": "int64",
+                        "type": [
+                          "integer",
+                          "null"
+                        ]
+                      }
+                    },
+                    "type": [
+                      "object",
+                      "null"
+                    ],
+                    "additionalProperties": false
+                  },
                   "systemUUID": {
                     "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
                     "type": "string"
diff --git a/master-standalone-strict/nodestatus-v1.json b/master-standalone-strict/nodestatus-v1.json
index 39c4430baa..6e0ed389c3 100644
--- a/master-standalone-strict/nodestatus-v1.json
+++ b/master-standalone-strict/nodestatus-v1.json
@@ -441,6 +441,24 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "description": "NodeSwapStatus represents swap memory information.",
+          "properties": {
+            "capacity": {
+              "description": "Total amount of swap memory in bytes.",
+              "format": "int64",
+              "type": [
+                "integer",
+                "null"
+              ]
+            }
+          },
+          "type": [
+            "object",
+            "null"
+          ],
+          "additionalProperties": false
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
diff --git a/master-standalone-strict/nodestatus.json b/master-standalone-strict/nodestatus.json
index 39c4430baa..6e0ed389c3 100644
--- a/master-standalone-strict/nodestatus.json
+++ b/master-standalone-strict/nodestatus.json
@@ -441,6 +441,24 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "description": "NodeSwapStatus represents swap memory information.",
+          "properties": {
+            "capacity": {
+              "description": "Total amount of swap memory in bytes.",
+              "format": "int64",
+              "type": [
+                "integer",
+                "null"
+              ]
+            }
+          },
+          "type": [
+            "object",
+            "null"
+          ],
+          "additionalProperties": false
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
diff --git a/master-standalone-strict/nodeswapstatus-v1.json b/master-standalone-strict/nodeswapstatus-v1.json
new file mode 100644
index 0000000000..fefe5e47cd
--- /dev/null
+++ b/master-standalone-strict/nodeswapstatus-v1.json
@@ -0,0 +1,16 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "additionalProperties": false,
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-standalone-strict/nodeswapstatus.json b/master-standalone-strict/nodeswapstatus.json
new file mode 100644
index 0000000000..fefe5e47cd
--- /dev/null
+++ b/master-standalone-strict/nodeswapstatus.json
@@ -0,0 +1,16 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "additionalProperties": false,
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-standalone-strict/nodesysteminfo-v1.json b/master-standalone-strict/nodesysteminfo-v1.json
index 31084b9b81..08c65cd59f 100644
--- a/master-standalone-strict/nodesysteminfo-v1.json
+++ b/master-standalone-strict/nodesysteminfo-v1.json
@@ -64,6 +64,24 @@
         "null"
       ]
     },
+    "swap": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        }
+      },
+      "type": [
+        "object",
+        "null"
+      ],
+      "additionalProperties": false
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-standalone-strict/nodesysteminfo.json b/master-standalone-strict/nodesysteminfo.json
index 31084b9b81..08c65cd59f 100644
--- a/master-standalone-strict/nodesysteminfo.json
+++ b/master-standalone-strict/nodesysteminfo.json
@@ -64,6 +64,24 @@
         "null"
       ]
     },
+    "swap": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        }
+      },
+      "type": [
+        "object",
+        "null"
+      ],
+      "additionalProperties": false
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-standalone-strict/pod-v1.json b/master-standalone-strict/pod-v1.json
index 9b9ccb7021..ed8ce2975d 100644
--- a/master-standalone-strict/pod-v1.json
+++ b/master-standalone-strict/pod-v1.json
@@ -12394,7 +12394,7 @@
           ]
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": [
             "string",
             "null"
diff --git a/master-standalone-strict/pod.json b/master-standalone-strict/pod.json
index fdddb9d2c2..c41b1cda0a 100644
--- a/master-standalone-strict/pod.json
+++ b/master-standalone-strict/pod.json
@@ -12391,7 +12391,7 @@
           ]
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": [
             "string",
             "null"
diff --git a/master-standalone-strict/podlist-v1.json b/master-standalone-strict/podlist-v1.json
index b066ba4a50..0d093e10f5 100644
--- a/master-standalone-strict/podlist-v1.json
+++ b/master-standalone-strict/podlist-v1.json
@@ -12409,7 +12409,7 @@
                 ]
               },
               "resize": {
-                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
                 "type": [
                   "string",
                   "null"
diff --git a/master-standalone-strict/podlist.json b/master-standalone-strict/podlist.json
index 6006652f56..1750cc902b 100644
--- a/master-standalone-strict/podlist.json
+++ b/master-standalone-strict/podlist.json
@@ -12403,7 +12403,7 @@
                 ]
               },
               "resize": {
-                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
                 "type": [
                   "string",
                   "null"
diff --git a/master-standalone-strict/podstatus-v1.json b/master-standalone-strict/podstatus-v1.json
index 06ba2b92cb..d0c15109bd 100644
--- a/master-standalone-strict/podstatus-v1.json
+++ b/master-standalone-strict/podstatus-v1.json
@@ -1890,7 +1890,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-standalone-strict/podstatus.json b/master-standalone-strict/podstatus.json
index 06ba2b92cb..d0c15109bd 100644
--- a/master-standalone-strict/podstatus.json
+++ b/master-standalone-strict/podstatus.json
@@ -1890,7 +1890,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-standalone-strict/volumeattachment-storage-v1.json b/master-standalone-strict/volumeattachment-storage-v1.json
index 22afda18ae..3b960d908b 100644
--- a/master-standalone-strict/volumeattachment-storage-v1.json
+++ b/master-standalone-strict/volumeattachment-storage-v1.json
@@ -1864,6 +1864,14 @@
         "attachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
@@ -1906,6 +1914,14 @@
         "detachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
diff --git a/master-standalone-strict/volumeattachment.json b/master-standalone-strict/volumeattachment.json
index 6c7aa867a8..fa415073f4 100644
--- a/master-standalone-strict/volumeattachment.json
+++ b/master-standalone-strict/volumeattachment.json
@@ -1861,6 +1861,14 @@
         "attachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
@@ -1903,6 +1911,14 @@
         "detachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
diff --git a/master-standalone-strict/volumeattachmentlist-storage-v1.json b/master-standalone-strict/volumeattachmentlist-storage-v1.json
index 25ea36b6fa..ebc5a5b98a 100644
--- a/master-standalone-strict/volumeattachmentlist-storage-v1.json
+++ b/master-standalone-strict/volumeattachmentlist-storage-v1.json
@@ -1876,6 +1876,14 @@
               "attachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
@@ -1918,6 +1926,14 @@
               "detachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
diff --git a/master-standalone-strict/volumeattachmentlist.json b/master-standalone-strict/volumeattachmentlist.json
index fa18766c28..12a11c1867 100644
--- a/master-standalone-strict/volumeattachmentlist.json
+++ b/master-standalone-strict/volumeattachmentlist.json
@@ -1870,6 +1870,14 @@
               "attachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
@@ -1912,6 +1920,14 @@
               "detachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
diff --git a/master-standalone-strict/volumeattachmentstatus-storage-v1.json b/master-standalone-strict/volumeattachmentstatus-storage-v1.json
index a7940b67c5..6b081c25a8 100644
--- a/master-standalone-strict/volumeattachmentstatus-storage-v1.json
+++ b/master-standalone-strict/volumeattachmentstatus-storage-v1.json
@@ -4,6 +4,14 @@
     "attachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
@@ -49,6 +57,14 @@
     "detachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
diff --git a/master-standalone-strict/volumeattachmentstatus.json b/master-standalone-strict/volumeattachmentstatus.json
index a7940b67c5..6b081c25a8 100644
--- a/master-standalone-strict/volumeattachmentstatus.json
+++ b/master-standalone-strict/volumeattachmentstatus.json
@@ -4,6 +4,14 @@
     "attachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
@@ -49,6 +57,14 @@
     "detachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
diff --git a/master-standalone-strict/volumeerror-storage-v1.json b/master-standalone-strict/volumeerror-storage-v1.json
index c6c66d331d..b28b184a61 100644
--- a/master-standalone-strict/volumeerror-storage-v1.json
+++ b/master-standalone-strict/volumeerror-storage-v1.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master-standalone-strict/volumeerror.json b/master-standalone-strict/volumeerror.json
index c6c66d331d..b28b184a61 100644
--- a/master-standalone-strict/volumeerror.json
+++ b/master-standalone-strict/volumeerror.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master-standalone/_definitions.json b/master-standalone/_definitions.json
index 45efe750ad..2b27b1bee1 100644
--- a/master-standalone/_definitions.json
+++ b/master-standalone/_definitions.json
@@ -931,7 +931,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -939,7 +939,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": "string"
         },
         "namespaceSelector": {
@@ -948,10 +948,10 @@
         },
         "objectSelector": {
           "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-          "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+          "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -8952,6 +8952,17 @@
       },
       "type": "object"
     },
+    "io.k8s.api.core.v1.NodeSwapStatus": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": "integer"
+        }
+      },
+      "type": "object"
+    },
     "io.k8s.api.core.v1.NodeSystemInfo": {
       "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
       "properties": {
@@ -8991,6 +9002,10 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "$ref": "#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+          "description": "Swap Info reported by the node."
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
@@ -10339,7 +10354,7 @@
           "type": "string"
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": "string"
         },
         "resourceClaimStatuses": {
@@ -17226,6 +17241,11 @@
           "description": "fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.\n\nDefaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce.",
           "type": "string"
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": "integer"
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": "boolean"
@@ -17742,6 +17762,11 @@
     "io.k8s.api.storage.v1.VolumeError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": "integer"
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": "string"
diff --git a/master-standalone/all.json b/master-standalone/all.json
index bfabd71e7a..c50db642e6 100644
--- a/master-standalone/all.json
+++ b/master-standalone/all.json
@@ -891,6 +891,9 @@
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeStatus"
     },
+    {
+      "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus"
+    },
     {
       "$ref": "_definitions.json#/definitions/io.k8s.api.core.v1.NodeSystemInfo"
     },
diff --git a/master-standalone/csidriver-storage-v1.json b/master-standalone/csidriver-storage-v1.json
index a9233c2825..34dffc56a7 100644
--- a/master-standalone/csidriver-storage-v1.json
+++ b/master-standalone/csidriver-storage-v1.json
@@ -288,6 +288,14 @@
             "null"
           ]
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": [
diff --git a/master-standalone/csidriver.json b/master-standalone/csidriver.json
index facf01560e..9b9b4d3c0c 100644
--- a/master-standalone/csidriver.json
+++ b/master-standalone/csidriver.json
@@ -285,6 +285,14 @@
             "null"
           ]
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": [
diff --git a/master-standalone/csidriverlist-storage-v1.json b/master-standalone/csidriverlist-storage-v1.json
index 84a41dde8e..bb2068aa93 100644
--- a/master-standalone/csidriverlist-storage-v1.json
+++ b/master-standalone/csidriverlist-storage-v1.json
@@ -303,6 +303,14 @@
                   "null"
                 ]
               },
+              "nodeAllocatableUpdatePeriodSeconds": {
+                "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+                "format": "int64",
+                "type": [
+                  "integer",
+                  "null"
+                ]
+              },
               "podInfoOnMount": {
                 "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
                 "type": [
diff --git a/master-standalone/csidriverlist.json b/master-standalone/csidriverlist.json
index 41e8a637a8..c541d22dbc 100644
--- a/master-standalone/csidriverlist.json
+++ b/master-standalone/csidriverlist.json
@@ -297,6 +297,14 @@
                   "null"
                 ]
               },
+              "nodeAllocatableUpdatePeriodSeconds": {
+                "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+                "format": "int64",
+                "type": [
+                  "integer",
+                  "null"
+                ]
+              },
               "podInfoOnMount": {
                 "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
                 "type": [
diff --git a/master-standalone/csidriverspec-storage-v1.json b/master-standalone/csidriverspec-storage-v1.json
index c5064e3b33..17596f6609 100644
--- a/master-standalone/csidriverspec-storage-v1.json
+++ b/master-standalone/csidriverspec-storage-v1.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-standalone/csidriverspec.json b/master-standalone/csidriverspec.json
index c5064e3b33..17596f6609 100644
--- a/master-standalone/csidriverspec.json
+++ b/master-standalone/csidriverspec.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master-standalone/matchresources-admissionregistration-v1alpha1.json b/master-standalone/matchresources-admissionregistration-v1alpha1.json
index f5aae8b276..da0a516252 100644
--- a/master-standalone/matchresources-admissionregistration-v1alpha1.json
+++ b/master-standalone/matchresources-admissionregistration-v1alpha1.json
@@ -2,7 +2,7 @@
   "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
   "properties": {
     "excludeResourceRules": {
-      "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+      "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "items": {
         "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
         "properties": {
@@ -97,7 +97,7 @@
       "x-kubernetes-list-type": "atomic"
     },
     "matchPolicy": {
-      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
       "type": [
         "string",
         "null"
@@ -236,7 +236,7 @@
       "x-kubernetes-map-type": "atomic"
     },
     "resourceRules": {
-      "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+      "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
       "items": {
         "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
         "properties": {
diff --git a/master-standalone/mutatingadmissionpolicy-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
index 4eac2f99e0..f7c3b9e0b6 100644
--- a/master-standalone/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicy-admissionregistration-v1alpha1.json
@@ -318,7 +318,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -413,7 +413,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -552,7 +552,7 @@
               "x-kubernetes-map-type": "atomic"
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone/mutatingadmissionpolicy.json b/master-standalone/mutatingadmissionpolicy.json
index 0550d223a0..04b595a750 100644
--- a/master-standalone/mutatingadmissionpolicy.json
+++ b/master-standalone/mutatingadmissionpolicy.json
@@ -315,7 +315,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -410,7 +410,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -549,7 +549,7 @@
               "x-kubernetes-map-type": "atomic"
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
index 92c3116ea4..0be1da286c 100644
--- a/master-standalone/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicybinding-admissionregistration-v1alpha1.json
@@ -278,7 +278,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -373,7 +373,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -512,7 +512,7 @@
               "x-kubernetes-map-type": "atomic"
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybinding.json b/master-standalone/mutatingadmissionpolicybinding.json
index 5152337763..6a509e28d5 100644
--- a/master-standalone/mutatingadmissionpolicybinding.json
+++ b/master-standalone/mutatingadmissionpolicybinding.json
@@ -275,7 +275,7 @@
           "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "properties": {
             "excludeResourceRules": {
-              "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+              "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
@@ -370,7 +370,7 @@
               "x-kubernetes-list-type": "atomic"
             },
             "matchPolicy": {
-              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+              "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
               "type": [
                 "string",
                 "null"
@@ -509,7 +509,7 @@
               "x-kubernetes-map-type": "atomic"
             },
             "resourceRules": {
-              "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+              "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
               "items": {
                 "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                 "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
index 6283669132..7ec1c867fc 100644
--- a/master-standalone/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicybindinglist-admissionregistration-v1alpha1.json
@@ -293,7 +293,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -388,7 +388,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -527,7 +527,7 @@
                     "x-kubernetes-map-type": "atomic"
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybindinglist.json b/master-standalone/mutatingadmissionpolicybindinglist.json
index a98638f6dd..077a982e24 100644
--- a/master-standalone/mutatingadmissionpolicybindinglist.json
+++ b/master-standalone/mutatingadmissionpolicybindinglist.json
@@ -287,7 +287,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -382,7 +382,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -521,7 +521,7 @@
                     "x-kubernetes-map-type": "atomic"
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
index d0fb8c9750..d14d670ae9 100644
--- a/master-standalone/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicybindingspec-admissionregistration-v1alpha1.json
@@ -5,7 +5,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -100,7 +100,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -239,7 +239,7 @@
           "x-kubernetes-map-type": "atomic"
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone/mutatingadmissionpolicybindingspec.json b/master-standalone/mutatingadmissionpolicybindingspec.json
index d0fb8c9750..d14d670ae9 100644
--- a/master-standalone/mutatingadmissionpolicybindingspec.json
+++ b/master-standalone/mutatingadmissionpolicybindingspec.json
@@ -5,7 +5,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -100,7 +100,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -239,7 +239,7 @@
           "x-kubernetes-map-type": "atomic"
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
index d9c8ce9529..83ca4c1302 100644
--- a/master-standalone/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicylist-admissionregistration-v1alpha1.json
@@ -333,7 +333,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -428,7 +428,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -567,7 +567,7 @@
                     "x-kubernetes-map-type": "atomic"
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone/mutatingadmissionpolicylist.json b/master-standalone/mutatingadmissionpolicylist.json
index ab49c299f0..ade835ce58 100644
--- a/master-standalone/mutatingadmissionpolicylist.json
+++ b/master-standalone/mutatingadmissionpolicylist.json
@@ -327,7 +327,7 @@
                 "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                 "properties": {
                   "excludeResourceRules": {
-                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+                    "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
@@ -422,7 +422,7 @@
                     "x-kubernetes-list-type": "atomic"
                   },
                   "matchPolicy": {
-                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+                    "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
                     "type": [
                       "string",
                       "null"
@@ -561,7 +561,7 @@
                     "x-kubernetes-map-type": "atomic"
                   },
                   "resourceRules": {
-                    "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+                    "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
                     "items": {
                       "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
                       "properties": {
diff --git a/master-standalone/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json b/master-standalone/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
index 91238b5caf..392591c465 100644
--- a/master-standalone/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
+++ b/master-standalone/mutatingadmissionpolicyspec-admissionregistration-v1alpha1.json
@@ -45,7 +45,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -140,7 +140,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -279,7 +279,7 @@
           "x-kubernetes-map-type": "atomic"
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone/mutatingadmissionpolicyspec.json b/master-standalone/mutatingadmissionpolicyspec.json
index 91238b5caf..392591c465 100644
--- a/master-standalone/mutatingadmissionpolicyspec.json
+++ b/master-standalone/mutatingadmissionpolicyspec.json
@@ -45,7 +45,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
@@ -140,7 +140,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": [
             "string",
             "null"
@@ -279,7 +279,7 @@
           "x-kubernetes-map-type": "atomic"
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "description": "NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.",
             "properties": {
diff --git a/master-standalone/node-v1.json b/master-standalone/node-v1.json
index 62103a0e48..bbd2dc2910 100644
--- a/master-standalone/node-v1.json
+++ b/master-standalone/node-v1.json
@@ -846,6 +846,23 @@
               "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
               "type": "string"
             },
+            "swap": {
+              "description": "NodeSwapStatus represents swap memory information.",
+              "properties": {
+                "capacity": {
+                  "description": "Total amount of swap memory in bytes.",
+                  "format": "int64",
+                  "type": [
+                    "integer",
+                    "null"
+                  ]
+                }
+              },
+              "type": [
+                "object",
+                "null"
+              ]
+            },
             "systemUUID": {
               "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
               "type": "string"
diff --git a/master-standalone/node.json b/master-standalone/node.json
index c58fabed35..69b1031214 100644
--- a/master-standalone/node.json
+++ b/master-standalone/node.json
@@ -843,6 +843,23 @@
               "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
               "type": "string"
             },
+            "swap": {
+              "description": "NodeSwapStatus represents swap memory information.",
+              "properties": {
+                "capacity": {
+                  "description": "Total amount of swap memory in bytes.",
+                  "format": "int64",
+                  "type": [
+                    "integer",
+                    "null"
+                  ]
+                }
+              },
+              "type": [
+                "object",
+                "null"
+              ]
+            },
             "systemUUID": {
               "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
               "type": "string"
diff --git a/master-standalone/nodelist-v1.json b/master-standalone/nodelist-v1.json
index fbaa22c383..3cae7480b0 100644
--- a/master-standalone/nodelist-v1.json
+++ b/master-standalone/nodelist-v1.json
@@ -861,6 +861,23 @@
                     "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
                     "type": "string"
                   },
+                  "swap": {
+                    "description": "NodeSwapStatus represents swap memory information.",
+                    "properties": {
+                      "capacity": {
+                        "description": "Total amount of swap memory in bytes.",
+                        "format": "int64",
+                        "type": [
+                          "integer",
+                          "null"
+                        ]
+                      }
+                    },
+                    "type": [
+                      "object",
+                      "null"
+                    ]
+                  },
                   "systemUUID": {
                     "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
                     "type": "string"
diff --git a/master-standalone/nodelist.json b/master-standalone/nodelist.json
index 0296359bcb..99fd291ac2 100644
--- a/master-standalone/nodelist.json
+++ b/master-standalone/nodelist.json
@@ -855,6 +855,23 @@
                     "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
                     "type": "string"
                   },
+                  "swap": {
+                    "description": "NodeSwapStatus represents swap memory information.",
+                    "properties": {
+                      "capacity": {
+                        "description": "Total amount of swap memory in bytes.",
+                        "format": "int64",
+                        "type": [
+                          "integer",
+                          "null"
+                        ]
+                      }
+                    },
+                    "type": [
+                      "object",
+                      "null"
+                    ]
+                  },
                   "systemUUID": {
                     "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
                     "type": "string"
diff --git a/master-standalone/nodestatus-v1.json b/master-standalone/nodestatus-v1.json
index 9737f26048..1134c35a5b 100644
--- a/master-standalone/nodestatus-v1.json
+++ b/master-standalone/nodestatus-v1.json
@@ -428,6 +428,23 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "description": "NodeSwapStatus represents swap memory information.",
+          "properties": {
+            "capacity": {
+              "description": "Total amount of swap memory in bytes.",
+              "format": "int64",
+              "type": [
+                "integer",
+                "null"
+              ]
+            }
+          },
+          "type": [
+            "object",
+            "null"
+          ]
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
diff --git a/master-standalone/nodestatus.json b/master-standalone/nodestatus.json
index 9737f26048..1134c35a5b 100644
--- a/master-standalone/nodestatus.json
+++ b/master-standalone/nodestatus.json
@@ -428,6 +428,23 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "description": "NodeSwapStatus represents swap memory information.",
+          "properties": {
+            "capacity": {
+              "description": "Total amount of swap memory in bytes.",
+              "format": "int64",
+              "type": [
+                "integer",
+                "null"
+              ]
+            }
+          },
+          "type": [
+            "object",
+            "null"
+          ]
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
diff --git a/master-standalone/nodeswapstatus-v1.json b/master-standalone/nodeswapstatus-v1.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master-standalone/nodeswapstatus-v1.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-standalone/nodeswapstatus.json b/master-standalone/nodeswapstatus.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master-standalone/nodeswapstatus.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master-standalone/nodesysteminfo-v1.json b/master-standalone/nodesysteminfo-v1.json
index 2b8bb78400..66aa0998ed 100644
--- a/master-standalone/nodesysteminfo-v1.json
+++ b/master-standalone/nodesysteminfo-v1.json
@@ -64,6 +64,23 @@
         "null"
       ]
     },
+    "swap": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        }
+      },
+      "type": [
+        "object",
+        "null"
+      ]
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-standalone/nodesysteminfo.json b/master-standalone/nodesysteminfo.json
index 2b8bb78400..66aa0998ed 100644
--- a/master-standalone/nodesysteminfo.json
+++ b/master-standalone/nodesysteminfo.json
@@ -64,6 +64,23 @@
         "null"
       ]
     },
+    "swap": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": [
+            "integer",
+            "null"
+          ]
+        }
+      },
+      "type": [
+        "object",
+        "null"
+      ]
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master-standalone/pod-v1.json b/master-standalone/pod-v1.json
index 8e856fc2f6..b93e6446dc 100644
--- a/master-standalone/pod-v1.json
+++ b/master-standalone/pod-v1.json
@@ -12059,7 +12059,7 @@
           ]
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": [
             "string",
             "null"
diff --git a/master-standalone/pod.json b/master-standalone/pod.json
index 0a60f02275..0ce347e37b 100644
--- a/master-standalone/pod.json
+++ b/master-standalone/pod.json
@@ -12056,7 +12056,7 @@
           ]
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": [
             "string",
             "null"
diff --git a/master-standalone/podlist-v1.json b/master-standalone/podlist-v1.json
index cc6c117c6e..bd5b024440 100644
--- a/master-standalone/podlist-v1.json
+++ b/master-standalone/podlist-v1.json
@@ -12074,7 +12074,7 @@
                 ]
               },
               "resize": {
-                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
                 "type": [
                   "string",
                   "null"
diff --git a/master-standalone/podlist.json b/master-standalone/podlist.json
index 25abb606fe..7901491f2e 100644
--- a/master-standalone/podlist.json
+++ b/master-standalone/podlist.json
@@ -12068,7 +12068,7 @@
                 ]
               },
               "resize": {
-                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+                "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
                 "type": [
                   "string",
                   "null"
diff --git a/master-standalone/podstatus-v1.json b/master-standalone/podstatus-v1.json
index ab49a4dd2c..85db0ccfc7 100644
--- a/master-standalone/podstatus-v1.json
+++ b/master-standalone/podstatus-v1.json
@@ -1839,7 +1839,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-standalone/podstatus.json b/master-standalone/podstatus.json
index ab49a4dd2c..85db0ccfc7 100644
--- a/master-standalone/podstatus.json
+++ b/master-standalone/podstatus.json
@@ -1839,7 +1839,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master-standalone/volumeattachment-storage-v1.json b/master-standalone/volumeattachment-storage-v1.json
index 5ac4c11d52..c7b118b83d 100644
--- a/master-standalone/volumeattachment-storage-v1.json
+++ b/master-standalone/volumeattachment-storage-v1.json
@@ -1818,6 +1818,14 @@
         "attachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
@@ -1859,6 +1867,14 @@
         "detachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
diff --git a/master-standalone/volumeattachment.json b/master-standalone/volumeattachment.json
index cf49d794fe..d652469eb1 100644
--- a/master-standalone/volumeattachment.json
+++ b/master-standalone/volumeattachment.json
@@ -1815,6 +1815,14 @@
         "attachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
@@ -1856,6 +1864,14 @@
         "detachError": {
           "description": "VolumeError captures an error encountered during a volume operation.",
           "properties": {
+            "errorCode": {
+              "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+              "format": "int32",
+              "type": [
+                "integer",
+                "null"
+              ]
+            },
             "message": {
               "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
               "type": [
diff --git a/master-standalone/volumeattachmentlist-storage-v1.json b/master-standalone/volumeattachmentlist-storage-v1.json
index 4ffc2df64b..8285c31702 100644
--- a/master-standalone/volumeattachmentlist-storage-v1.json
+++ b/master-standalone/volumeattachmentlist-storage-v1.json
@@ -1830,6 +1830,14 @@
               "attachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
@@ -1871,6 +1879,14 @@
               "detachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
diff --git a/master-standalone/volumeattachmentlist.json b/master-standalone/volumeattachmentlist.json
index f899ef2fa1..79d6a7a6b6 100644
--- a/master-standalone/volumeattachmentlist.json
+++ b/master-standalone/volumeattachmentlist.json
@@ -1824,6 +1824,14 @@
               "attachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
@@ -1865,6 +1873,14 @@
               "detachError": {
                 "description": "VolumeError captures an error encountered during a volume operation.",
                 "properties": {
+                  "errorCode": {
+                    "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+                    "format": "int32",
+                    "type": [
+                      "integer",
+                      "null"
+                    ]
+                  },
                   "message": {
                     "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
                     "type": [
diff --git a/master-standalone/volumeattachmentstatus-storage-v1.json b/master-standalone/volumeattachmentstatus-storage-v1.json
index 20746e6c88..a1249bf915 100644
--- a/master-standalone/volumeattachmentstatus-storage-v1.json
+++ b/master-standalone/volumeattachmentstatus-storage-v1.json
@@ -4,6 +4,14 @@
     "attachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
@@ -48,6 +56,14 @@
     "detachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
diff --git a/master-standalone/volumeattachmentstatus.json b/master-standalone/volumeattachmentstatus.json
index 20746e6c88..a1249bf915 100644
--- a/master-standalone/volumeattachmentstatus.json
+++ b/master-standalone/volumeattachmentstatus.json
@@ -4,6 +4,14 @@
     "attachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
@@ -48,6 +56,14 @@
     "detachError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": [
+            "integer",
+            "null"
+          ]
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": [
diff --git a/master-standalone/volumeerror-storage-v1.json b/master-standalone/volumeerror-storage-v1.json
index 3c45e32003..49498cf22f 100644
--- a/master-standalone/volumeerror-storage-v1.json
+++ b/master-standalone/volumeerror-storage-v1.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master-standalone/volumeerror.json b/master-standalone/volumeerror.json
index 3c45e32003..49498cf22f 100644
--- a/master-standalone/volumeerror.json
+++ b/master-standalone/volumeerror.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master/_definitions.json b/master/_definitions.json
index 45efe750ad..2b27b1bee1 100644
--- a/master/_definitions.json
+++ b/master/_definitions.json
@@ -931,7 +931,7 @@
       "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "properties": {
         "excludeResourceRules": {
-          "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+          "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -939,7 +939,7 @@
           "x-kubernetes-list-type": "atomic"
         },
         "matchPolicy": {
-          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+          "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
           "type": "string"
         },
         "namespaceSelector": {
@@ -948,10 +948,10 @@
         },
         "objectSelector": {
           "$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-          "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+          "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
         },
         "resourceRules": {
-          "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+          "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
           "items": {
             "$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
           },
@@ -8952,6 +8952,17 @@
       },
       "type": "object"
     },
+    "io.k8s.api.core.v1.NodeSwapStatus": {
+      "description": "NodeSwapStatus represents swap memory information.",
+      "properties": {
+        "capacity": {
+          "description": "Total amount of swap memory in bytes.",
+          "format": "int64",
+          "type": "integer"
+        }
+      },
+      "type": "object"
+    },
     "io.k8s.api.core.v1.NodeSystemInfo": {
       "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
       "properties": {
@@ -8991,6 +9002,10 @@
           "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
           "type": "string"
         },
+        "swap": {
+          "$ref": "#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+          "description": "Swap Info reported by the node."
+        },
         "systemUUID": {
           "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
           "type": "string"
@@ -10339,7 +10354,7 @@
           "type": "string"
         },
         "resize": {
-          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+          "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
           "type": "string"
         },
         "resourceClaimStatuses": {
@@ -17226,6 +17241,11 @@
           "description": "fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.\n\nDefaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce.",
           "type": "string"
         },
+        "nodeAllocatableUpdatePeriodSeconds": {
+          "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+          "format": "int64",
+          "type": "integer"
+        },
         "podInfoOnMount": {
           "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
           "type": "boolean"
@@ -17742,6 +17762,11 @@
     "io.k8s.api.storage.v1.VolumeError": {
       "description": "VolumeError captures an error encountered during a volume operation.",
       "properties": {
+        "errorCode": {
+          "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+          "format": "int32",
+          "type": "integer"
+        },
         "message": {
           "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
           "type": "string"
diff --git a/master/all.json b/master/all.json
index 465cf420c3..2b6e0fc326 100644
--- a/master/all.json
+++ b/master/all.json
@@ -891,6 +891,9 @@
     {
       "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.core.v1.NodeStatus"
     },
+    {
+      "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus"
+    },
     {
       "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.core.v1.NodeSystemInfo"
     },
diff --git a/master/csidriverspec-storage-v1.json b/master/csidriverspec-storage-v1.json
index a36b952e77..688b7fb5cb 100644
--- a/master/csidriverspec-storage-v1.json
+++ b/master/csidriverspec-storage-v1.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master/csidriverspec.json b/master/csidriverspec.json
index a36b952e77..688b7fb5cb 100644
--- a/master/csidriverspec.json
+++ b/master/csidriverspec.json
@@ -15,6 +15,14 @@
         "null"
       ]
     },
+    "nodeAllocatableUpdatePeriodSeconds": {
+      "description": "nodeAllocatableUpdatePeriodSeconds specifies the interval between periodic updates of the CSINode allocatable capacity for this driver. When set, both periodic updates and updates triggered by capacity-related failures are enabled. If not set, no updates occur (neither periodic nor upon detecting capacity-related failures), and the allocatable.count remains static. The minimum allowed value for this field is 10 seconds.\n\nThis is an alpha feature and requires the MutableCSINodeAllocatableCount feature gate to be enabled.\n\nThis field is mutable.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "podInfoOnMount": {
       "description": "podInfoOnMount indicates this CSI volume driver requires additional pod information (like podName, podUID, etc.) during mount operations, if set to true. If set to false, pod information will not be passed on mount. Default is false.\n\nThe CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext.\n\nThe following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. \"csi.storage.k8s.io/pod.name\": pod.Name \"csi.storage.k8s.io/pod.namespace\": pod.Namespace \"csi.storage.k8s.io/pod.uid\": string(pod.UID) \"csi.storage.k8s.io/ephemeral\": \"true\" if the volume is an ephemeral inline volume\n                                defined by a CSIVolumeSource, otherwise \"false\"\n\n\"csi.storage.k8s.io/ephemeral\" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the \"Persistent\" and \"Ephemeral\" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver.\n\nThis field was immutable in Kubernetes < 1.29 and now is mutable.",
       "type": [
diff --git a/master/matchresources-admissionregistration-v1alpha1.json b/master/matchresources-admissionregistration-v1alpha1.json
index 7e558fd5e4..b0bca15b4a 100644
--- a/master/matchresources-admissionregistration-v1alpha1.json
+++ b/master/matchresources-admissionregistration-v1alpha1.json
@@ -2,7 +2,7 @@
   "description": "MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
   "properties": {
     "excludeResourceRules": {
-      "description": "ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
+      "description": "ExcludeResourceRules describes what operations on what resources/subresources the policy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)",
       "items": {
         "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
       },
@@ -13,7 +13,7 @@
       "x-kubernetes-list-type": "atomic"
     },
     "matchPolicy": {
-      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.\n\nDefaults to \"Equivalent\"",
+      "description": "matchPolicy defines how the \"MatchResources\" list is used to match incoming requests. Allowed values are \"Exact\" or \"Equivalent\".\n\n- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy does not consider requests to apps/v1beta1 or extensions/v1beta1 API groups.\n\n- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and \"rules\" only included `apiGroups:[\"apps\"], apiVersions:[\"v1\"], resources: [\"deployments\"]`, the admission policy **does** consider requests made to apps/v1beta1 or extensions/v1beta1 API groups. The API server translates the request to a matched resource API if necessary.\n\nDefaults to \"Equivalent\"",
       "type": [
         "string",
         "null"
@@ -25,10 +25,10 @@
     },
     "objectSelector": {
       "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector",
-      "description": "ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
+      "description": "ObjectSelector decides whether to run the policy based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the policy's expression (CEL), and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything."
     },
     "resourceRules": {
-      "description": "ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.",
+      "description": "ResourceRules describes what operations on what resources/subresources the admission policy matches. The policy cares about an operation if it matches _any_ Rule.",
       "items": {
         "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.admissionregistration.v1alpha1.NamedRuleWithOperations"
       },
diff --git a/master/nodeswapstatus-v1.json b/master/nodeswapstatus-v1.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master/nodeswapstatus-v1.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master/nodeswapstatus.json b/master/nodeswapstatus.json
new file mode 100644
index 0000000000..dbf8c04ebc
--- /dev/null
+++ b/master/nodeswapstatus.json
@@ -0,0 +1,15 @@
+{
+  "description": "NodeSwapStatus represents swap memory information.",
+  "properties": {
+    "capacity": {
+      "description": "Total amount of swap memory in bytes.",
+      "format": "int64",
+      "type": [
+        "integer",
+        "null"
+      ]
+    }
+  },
+  "type": "object",
+  "$schema": "http://json-schema.org/schema#"
+}
\ No newline at end of file
diff --git a/master/nodesysteminfo-v1.json b/master/nodesysteminfo-v1.json
index 2b8bb78400..db20ffd578 100644
--- a/master/nodesysteminfo-v1.json
+++ b/master/nodesysteminfo-v1.json
@@ -64,6 +64,10 @@
         "null"
       ]
     },
+    "swap": {
+      "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+      "description": "Swap Info reported by the node."
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master/nodesysteminfo.json b/master/nodesysteminfo.json
index 2b8bb78400..db20ffd578 100644
--- a/master/nodesysteminfo.json
+++ b/master/nodesysteminfo.json
@@ -64,6 +64,10 @@
         "null"
       ]
     },
+    "swap": {
+      "$ref": "https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/master/_definitions.json#/definitions/io.k8s.api.core.v1.NodeSwapStatus",
+      "description": "Swap Info reported by the node."
+    },
     "systemUUID": {
       "description": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid",
       "type": [
diff --git a/master/podstatus-v1.json b/master/podstatus-v1.json
index 8badf0bcb8..a50cf410d1 100644
--- a/master/podstatus-v1.json
+++ b/master/podstatus-v1.json
@@ -137,7 +137,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master/podstatus.json b/master/podstatus.json
index 8badf0bcb8..a50cf410d1 100644
--- a/master/podstatus.json
+++ b/master/podstatus.json
@@ -137,7 +137,7 @@
       ]
     },
     "resize": {
-      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\"",
+      "description": "Status of resources resize desired for pod's containers. It is empty if no resources resize is pending. Any changes to container resources will automatically set this to \"Proposed\" Deprecated: Resize status is moved to two pod conditions PodResizePending and PodResizeInProgress. PodResizePending will track states where the spec has been resized, but the Kubelet has not yet allocated the resources. PodResizeInProgress will track in-progress resizes, and should be present whenever allocated resources != acknowledged resources.",
       "type": [
         "string",
         "null"
diff --git a/master/volumeerror-storage-v1.json b/master/volumeerror-storage-v1.json
index 3ec6ef3d74..9328de55e2 100644
--- a/master/volumeerror-storage-v1.json
+++ b/master/volumeerror-storage-v1.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
diff --git a/master/volumeerror.json b/master/volumeerror.json
index 3ec6ef3d74..9328de55e2 100644
--- a/master/volumeerror.json
+++ b/master/volumeerror.json
@@ -1,6 +1,14 @@
 {
   "description": "VolumeError captures an error encountered during a volume operation.",
   "properties": {
+    "errorCode": {
+      "description": "errorCode is a numeric gRPC code representing the error encountered during Attach or Detach operations.\n\nThis is an optional, alpha field that requires the MutableCSINodeAllocatableCount feature gate being enabled to be set.",
+      "format": "int32",
+      "type": [
+        "integer",
+        "null"
+      ]
+    },
     "message": {
       "description": "message represents the error encountered during Attach or Detach operation. This string may be logged, so it should not contain sensitive information.",
       "type": [
-- 
GitLab