{ "apiVersion": "json.kyverno.io/v1alpha1", "kind": "ValidatingPolicy", "metadata": { "name": "cap-024-deck-structure", "annotations": { "nova.cloudinit.dev/severity": "low", "title.policy.kyverno.io": "Deck structure matches the documented 4-beat arc (CAP-024 declarative mirror)" } }, "spec": { "rules": [ { "name": "deck-has-4-beats", "validate": { "message": "The deck must have the 4-beat arc: Problem, Solution, Proof, Roadmap+Ask. Declarative mirror of core/regression_verify.py CAP-024.", "assert": { "all": [ { "check": { "deck.beats": "(length(@) >= `4`)" } }, { "check": { "deck.beats": "(contains(@, 'Problem') && contains(@, 'Solution') && contains(@, 'Proof') && contains(@, 'Roadmap+Ask'))" } } ] } } } ] } }