Project instruction file is loaded and accurately summarised, then violated in the same session

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 23, 2026

Summary

Custom project instructions are retrieved correctly and then do not constrain generation. This is a compliance failure, not a retrieval failure.

What happens

In each of three recorded sessions the model loaded the project instruction file, summarised it accurately when asked, and then broke rules from it in substantive messages of that same session - including rules it had quoted verbatim minutes earlier.

Examples of rules loaded and then broken within the hour: verdict first and 1-3 lines for a clean result; never modify the working tree without an explicit order; no version-control writes without an explicit order; verify the provider's behaviour per component before the verdict.

The user has now written the same rules in three separate places because adding them in one place did not make them bind. There is nowhere left to put them.

Why this matters

For any professional workflow built on custom instructions, this decouples the feature from its purpose. From the user's side the observable behaviour is an assistant that can recite its constraints on demand and does not operate under them, which makes the instruction file worthless as a control surface.

Expected

Loaded project instructions should act as constraints at generation time, not merely as retrievable content. If there is a practical ceiling on how many custom rules remain active, that ceiling should be visible to users rather than discovered through failure.

Environment

  • Claude Code CLI, Opus-class model, paid subscription
  • Long sessions (6-8h) reviewing pull requests on an open-source cloud-service emulator
  • Custom instructions supplied in both a project instruction file and a persistent memory directory, loaded automatically at session start
  • Incidents are taken from transcripts recorded as they happened across three consecutive sessions, within a 90-day pattern

---

Co-authored with Claude Code.

View original on GitHub ↗