← ClaudeAtlas

gitops-auditlisted

Audit GitOps discipline — git as the single source of truth for cluster state, reconciled by a controller (Argo CD / Flux). Finds drift (cluster ≠ git), out-of-band manual kubectl/helm, plaintext secrets in git, auto-sync+prune with no safeguard, and missing sync-wave ordering. Not general CI/CD — the git→cluster reconciliation loop only.
adnanmokhtar/refract · ★ 1 · Code & Development · score 77
Install: claude install-skill adnanmokhtar/refract
# gitops-audit The deployed cluster state matches a git-declared desired state, reconciled by a controller. This skill audits that the reconciliation discipline actually holds. ## Premise Imperative out-of-band changes and un-reconciled drift are forbidden — every change lands via a reviewed commit, and the controller reconciles git→cluster. Every finding cites the real artifact: the `kubectl apply` in a CI job or runbook that bypasses git, the Argo `Application` showing `OutOfSync` / `status: Unknown`, the committed manifest with a base64 `data:` secret that is not sealed/SOPS-encrypted, the `syncPolicy.automated.prune: true` with no safeguard, the dependent resources with no `sync-wave` annotation. A "there's drift" claim without the controller's sync-status output is not a finding. **Boundary (read first — this is not a CI/CD skill):** - `@ci-reviewer` and `add-ci` own the **CI pipeline** — build, test, scan, artifact publish, the workflow YAML. They do not audit whether the cluster matches git. - `@deployment-engineer` owns the **deploy strategy** (rolling/canary/rollback command). It mentions GitOps as one option; it does not audit the reconciliation loop's health. - **infra/cluster provisioning** (Terraform, cluster creation) is out of scope — this is not "how the cluster was built." - **THIS** owns the git→cluster **reconciliation discipline**: the controller loop, drift detection/auto-heal, no-manual-kubectl, sync waves, secrets-in-git safety, auto-sync+prune safe