Skip to content

feat: detect manifest drift in the status skill#5

Merged
Alfred Tovsen Mo (alfredtm) merged 1 commit into
mainfrom
feat/status-drift-detection
Jun 10, 2026
Merged

feat: detect manifest drift in the status skill#5
Alfred Tovsen Mo (alfredtm) merged 1 commit into
mainfrom
feat/status-drift-detection

Conversation

@alfredtm

Copy link
Copy Markdown
Contributor

Addresses the configuration-drift gap: nothing previously detected when k8s/<app>/ files and the cluster disagreed (portal resizes, oc edit, update-image run from the wrong repo).

How it works

  • status now globs for k8s/*/*.yaml and runs oc diff -f k8s/<app>/ per deployed app — a server-side dry-run, so the skill stays read-only
  • Diff noise (generation, creationTimestamp, last-applied annotations, status:) is filtered before deciding anything counts as drift
  • The report gets one extra line per app: files: ✓ in sync or files: ⚠ drift — cluster runs 3 replicas, file says 1 — never a raw diff dump
  • Silently skipped when there's no k8s/ directory — no disclaimers when you're in an unrelated repo

Reconciliation UX

Drift is reported, never auto-fixed. If the user wants it fixed, one question — which side is right?

  • file is right → oc apply -f k8s/<app>/ (repo is source of truth, the normal answer)
  • cluster is right → edit the local YAML to match; nothing applied

Includes a full conversation example in the references, plus README notes (and the "graduate to GitOps when this hurts" line in design principles).

🤖 Generated with Claude Code

status now compares k8s/<app>/ files against the cluster with oc diff
(server-side dry-run, still read-only), filters diff noise, and reports
one plain-language line per app. Reconciliation is offered, never
automatic, and asks which side is right before acting. Skipped silently
when no local manifests exist.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@alfredtm Alfred Tovsen Mo (alfredtm) merged commit 1484507 into main Jun 10, 2026
3 checks passed
@alfredtm Alfred Tovsen Mo (alfredtm) deleted the feat/status-drift-detection branch June 10, 2026 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant