{ "_intent": "The CI/CD pipeline is the approver. A human approval is required ONLY for changes that alter what the pipeline itself verifies, or the security posture it rests on -- because those are the changes CI cannot honestly gate: a PR that weakens the gate would be approved by the weakened gate.", "_rule": "If a PR touches any sensitive_paths glob, it needs an APPROVED review from someone who is not its author. Everything else merges on a green gate alone.", "_on_failure_to_evaluate": "BLOCK. Unlike gitea-settings, a skip here is a bypass, not a gap.", "sensitive_paths": [ "ci/**", ".gitea/**", "conformance/**", "clusters/**", "bootstrap/**", "infra/gitea/**", "platform/kyverno/**", "platform-config/kustomization.yaml", ".sops.yaml", "**/*.sops.yaml", "**/rbac.yaml", "CLAUDE.md" ], "_why_each": { "ci/**, .gitea/**": "the pipeline itself -- the thing doing the approving", "conformance/**": "the tests and the harness; changing them changes what green MEANS", "clusters/**, bootstrap/**": "Flux wiring -- what reconciles, in what order, with what substitution", "infra/gitea/**, platform-config/kustomization.yaml": "branch protection, the drift detector, and the list that decides which admission policies are actually applied", "platform/kyverno/**": "the admission policy engine", ".sops.yaml, **/*.sops.yaml, **/rbac.yaml": "encryption recipients, secrets, and cluster authority", "CLAUDE.md": "the delivery contract agents follow" } }