I’ve explicitly specified in .cursor/rules/*.mdc that certain paths are “accessible but not editable,” for example:
> Accessible but not editable:
>
> * `packages/*.tsx`
(I’ve also tried using packages/**/*.tsx and adding natural language emphasis like “DO NOT EDIT”, but the files still get modified.)
In practice, the Agent still directly edits these files. The rules don’t act as a hard block. It seems like Rules are just soft constraints at the prompt level, which the model can simply ignore.
Is there a better way to enforce stricter constraints?