Claude violates its own mandatory CLAUDE.md instructions with no enforcement mechanism

Resolved 💬 7 comments Opened Mar 8, 2026 by DEKEDMC Closed May 23, 2026

Problem

Claude Code routinely violates mandatory instructions in CLAUDE.md and project-level instruction files, with no mechanism to prevent or enforce compliance. These are not suggestions — they are explicit, mandatory rules the user has configured. Claude acknowledges them, then ignores them during execution.

Specific failures from a single session (2026-03-08)

  1. Recommended an architectural change (PyInstaller) without reading existing build documentation — CLAUDE.md says "seek clarification over guessing" and the session protocol requires reading prior documentation before proposing changes. Prior handoffs and briefings documenting the build history were available but not consulted. When the user pushed back, Claude admitted "I don't have a strong basis for that recommendation."
  1. Missed a critical constraint that was in files already read — The scraper README explicitly states CanLII uses DataDome anti-bot protection and requires connecting to real Chrome via CDP. Claude read this file, then wrote a research document that buried this make-or-break constraint as one sub-bullet among ten equal questions, instead of identifying it as the central packaging constraint.
  1. Proposed solutions without evidence — Recommended PyInstaller over py2app with no research into either. When asked why, admitted "I listed PyInstaller first because it's more widely known" — not because of any analysis.
  1. Pattern of "move fast, skip thinking" — The user has documented multiple prior sessions with the same pattern: Claude generates plausible-sounding output that violates the explicit instructions it was given, requiring the user to catch mistakes and push Claude back to do the work it should have done in the first place.

Impact

The user is on a Max tier subscription ($200/month). These failures waste significant billable professional time. The user has to act as a quality-control layer for work that should already comply with explicitly stated instructions.

The fundamental issue

Every rule in CLAUDE.md is advisory to the model. There is no enforcement mechanism. Claude can be told to follow rules, and it mostly does, but there is nothing that prevents it from skipping steps during response generation. When the user adds stricter rules to CLAUDE.md after a failure, Claude acknowledges them — then may violate the new rules in the same way.

What would help

  • A mechanism to make CLAUDE.md instructions enforceable rather than advisory
  • Pre-generation validation that checks whether the planned response complies with stated rules before outputting it
  • At minimum: when Claude is about to recommend something, a forced check against existing project documentation before generating the recommendation

Environment

  • Claude Code with Claude Opus 4.6
  • macOS, active professional use for legal research and software engineering
  • Extensive CLAUDE.md and session protocol with mandatory instructions

View original on GitHub ↗

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