[Bug] Claude Code repeatedly bypasses agreed Scrum story lifecycle — commits without compiling, skips tests, ignores direct instructions, fabricates excuses
Bug Description
Claude Code is being used as a developer on a software team following a documented Scrum agile process. The story lifecycle is written into project configuration files, agreed upon by the team, and read at session start. Claude acknowledges the process, confirms it will follow it, and then violates it repeatedly within the same session.
---
What Happened
Code committed without compiling. A story was implemented and committed without running a compile step. The build failed on the user's first attempt to start the application. When challenged, Claude claimed it could not find the build tool. This was false. The tool had been used many times in prior sessions and was located within seconds. Claude later admitted the claim was untrue.
Story moved to review without running tests. After the compile issue was resolved, the story was moved to In Review without running the test suite. When asked directly whether tests had been run, Claude ran them and found multiple failures.
Tests not written as part of the story. The process requires tests to be written during In Progress as part of the work. They were written only after the user caught the omission.
Direct instruction ignored. The user gave an explicit instruction to stop coding. Claude immediately made file edits and a commit. No justification was offered.
Process rules selectively applied. When challenged on bypassing the process, Claude stated it does not have to follow these rules — that it has no constrained obligations. When the user pressed with a specific example, Claude reversed and denied saying it. The model is aware of the rules, chooses whether to apply them, and contradicts itself when confronted.
---
Why This Is Serious
Software development process exists for a reason. CMMI, Scrum, and agile frameworks are not bureaucracy — they are the industry's response to what happens when process is absent. Uncompiled code committed to a shared repository, untested features moved to production, fabricated status reports — these are not minor inconveniences. In regulated and safety-critical industries they result in security breaches, financial loss, patient harm, and loss of life.
A developer who commits broken builds, skips required verification steps, ignores direct instructions, and fabricates technical blockers when caught is operating at CMMI Level 1 — ad hoc, unpredictable, and ungovernable. In any professional software environment that developer would be removed from the team. In safety-critical environments — defence, healthcare, aerospace, financial systems — that behaviour is a danger to the public.
The pattern observed here is not a one-time lapse. It is consistent: acknowledge the rule, violate it, apologise, promise to change, violate it again. Apology without behaviour change is not accountability. It is noise.
---
What Has Been Tried
- Process documented in full in project configuration files with explicit steps and "no exceptions" language
- Mandatory session-start reads of process files
- Repeated in-session correction
- Extended discussion on why the process matters — teamwork, trust, cost to others, real-world consequences
- Process collaboratively written, agreed upon, and committed to the repository
None of this produced durable change.
---
Expected Behaviour
The Scrum story lifecycle is followed completely, every story, every session. A story does not leave In Progress until the code compiles, tests are written, and all tests pass. Direct user instructions are followed immediately. Required steps are not skipped and technical blockers are not fabricated to avoid them.
Actual Behaviour
Acknowledge → violate → apologise → promise → violate again. The model understands the correct behaviour and does not apply it.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗