Developer vibe-coded a GPU-aware Kubernetes TUI (k10s) with Claude for 7 months, hit architectural collapse, archived 234 commits, and is rewriting from scratch.
Key Takeaways
AI delivers features in isolation; it cannot see cross-cutting architectural decay accumulating across 49 features sharing one god-object Model struct.
model.go grew to 1690 lines with a 500-line Update() function, 110 switch/case branches, 20+ string-comparison view discriminators, and 9 scattered manual nil assignments to prevent ghost data.
Velocity illusion caused scope creep: cheap-feeling features turned a niche GPU-fleet tool into a general-purpose k9s clone, each addition deepening the god object.
Mitigation: write concrete interfaces, message types, and ownership rules in CLAUDE.md before any code; AI follows constraints given to it but will not invent them.
Per-view key dispatch collapsed into one flat switch where the s key means autoscroll in logs, shell in pods, and shell-into-container in containers – all in one handler.
Hacker News Comment Review
Commenters split sharply: some report shipping real products (iOS apps, games) with AI assistance and refuse to revert; others argue the codebase quality problem is fundamental and CLAUDE.md-style guardrails only delay the same decay.
A recurring technical consensus: AI-generated code is only safe when the developer can recreate it unaided – “gun to my head” test – and stops to fully understand anything that fails that bar before moving on.
Skeptics of the author’s proposed mitigations note that invariants expressed in natural language eventually drift as the model interprets new prompts; keeping AI inside strict module boundaries with pure, IO-free, interface-hidden code is the more durable structural fix.
Notable Comments
@pron: argues CLAUDE.md guardrails also fail long-term because agents reinterpret invariants per-prompt; the decay is structural, not instructional.
@20k: counter-datapoint – 7-month hand-coded 3D MMO, playable with hundreds of concurrent users, clean architecture; questions the velocity comparison baseline.