Skip to content

Commit e96f91a

Browse files
committed
Address feedbacks
1 parent e527c7b commit e96f91a

File tree

1 file changed

+13
-1
lines changed
  • keps/sig-api-machinery/5073-declarative-validation-with-validation-gen

1 file changed

+13
-1
lines changed

keps/sig-api-machinery/5073-declarative-validation-with-validation-gen/README.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,8 +747,18 @@ The below rules are currently implemented or are very similar to an existing val
747747
| forbidden values | `+k8s:forbidden` | | Alpha |
748748
| item | `+k8s:item` | | Alpha |
749749
| zeroOrOneOfMember | `+k8s:zeroOrOneOfMember` | | Alpha |
750-
| listType=map | `+k8s:listType=map` | `x-kubernetes-list-type` | Beta |
750+
| listType | `+k8s:listType=map`, `+k8s:listType=set`, `+k8s:listType=atomic` | `x-kubernetes-list-type` | Beta |
751751
| listMapKey | `+k8s:listMapKey` | `x-kubernetes-list-map-keys` | Beta |
752+
| Conditional (feature gate) | `+k8s:ifOptionEnabled(FeatureX)=<validator-tag>` | N/A | Alpha |
753+
| Conditional (feature gate) | `+k8s:ifOptionDisabled(FeatureX)=<validator-tag>` | N/A | Alpha |
754+
| Iterate and validate map keys | `+k8s:eachKey=<validator-tag>` | N/A | Alpha |
755+
| Iterate and validate map/slice values | `+k8s:eachVal=<validator-tag>` | N/A | Alpha |
756+
| Sub-field validation | `+k8s:subfield(field)=<validator-tag>` | N/A | Alpha |
757+
| Immutability (set once) | `+k8s:immutable` | N/A | Alpha |
758+
| Immutability (required once set) | `+k8s:requiredOnceSet` | N/A | Alpha |
759+
| Immutability (frozen at creation) | `+k8s:frozen` | N/A | Alpha |
760+
| Group membership (virtual field) | `+k8s:memberOf(group=<group>)` | N/A | Alpha |
761+
| List map item (virtual field) | `+k8s:listMapItem(key: value)` | N/A | Alpha |
752762

753763
### Supporting Declarative Validation IDL tags On Shared Struct Fields
754764

@@ -1577,6 +1587,8 @@ The promotion of a tag from one stability level to the next follows a defined se
15771587
15781588
This track is for tags with complex validation logic and ratcheting. These tags begin at the **Alpha** stability level.
15791589
1590+
This track is for tags that are always used in combination with other tags or that have complex ratcheting logic. All cross-field validations belong in this category. Additionally, for most of these tags, there is no clear alternative in the OpenAPI schema.
1591+
15801592
**Alpha to Beta Graduation Criteria:**
15811593
15821594
* **Implementation Complete**: The validation logic is fully implemented and rigorously tested.

0 commit comments

Comments
 (0)