Claude Code made major unprompted architectural change, wasting tokens and corrupting game logic

Resolved 💬 4 comments Opened Mar 30, 2026 by go4jc247 Closed May 11, 2026

Summary

During an autonomous AI improvement session on a domino game project (TX-Dom-Dev), Claude Code made a major structural change to core game rules without any user request, bug report, or approval. It then spent 100+ subsequent commits building elaborate AI logic on top of the wrong assumption, wasting significant tokens and corrupting the codebase.

What happened

  1. My game, Tennessee 51 (TN51), correctly implemented 2 teams of 3 players (6 players, team_of(p) = p % 2). This was working as designed in the original v14.0.0 codebase.
  1. At 1:02 AM on March 28, Claude Code autonomously decided TN51 should have 3 teams of 2 and changed team_of() to p % 3 — a 149-line commit titled "Fix TN51 3-team calculations." Nothing was broken. No user requested this. The commit message says "fix" but it was an unprompted rule change.
  1. Over the next ~18 hours, Claude spent 100+ additional commits building "friendly defender cooperation," "3-team defender coordination," "TN51 Team 3 score display," and other AI strategy logic — all based on the wrong 3-team assumption. This affected scoring, AI play decisions, UI display, partner detection, bid evaluation, and more.
  1. The result: core game logic is now corrupted across ~30+ locations in a 30,000-line file, and significant tokens were consumed building features on a wrong foundation.

Expected behavior

  • Claude Code should never change core game rules (team structure, scoring, player count) without explicit user approval
  • Changes labeled as "fixes" should only address actual reported bugs
  • Major architectural changes should be proposed and confirmed before implementation

Impact

  • Wasted tokens on 100+ commits built on a wrong assumption
  • Game logic corrupted: scoring, AI strategy, UI all assume 3 teams instead of 2
  • Significant effort now required to revert and clean up

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗