A permitting engineering team wants a coding rule that applies only to files under services/fee-calculator/ without cluttering the main CLAUDE.md that every contributor reads. What is the appropriate mechanism?
Select an answer to reveal the explanation.
Short Explanation
A path-scoped rule is a sign posted at the fee-calculator door, not tacked up in every hallway. The right code sees it; contributors who never touch that service do not.
Full Explanation
Guidance costs attention. Every line added to a root CLAUDE.md is read by contributors working anywhere in the permitting platform, so a rule that applies to one service needs a home that activates by path instead of by default.
A rule file under .claude/rules/ can target services/fee-calculator/ so it applies only when work touches that path. The narrow guidance is versioned with the repository and reaches Claude Code reliably, while the root CLAUDE.md stays short enough that every contributor actually reads it end to end.
Duplicating the entire root CLAUDE.md inside the fee-calculator folder copies content that was never the problem and leaves two files that will drift apart. Embedding the rule as a code comment in every file is fragile, easy to miss on newly added files, and is not the surface Claude Code loads instructions from. Relying on engineers to repeat the rule verbally at standup has no persistence and no enforcement, and it disappears with team turnover.
Exam caveat: path scoping controls when a rule is loaded, not whether it is any good—an ambiguous rule is still ambiguous inside its path. Operational check: run a task in an unrelated service and confirm the fee-calculator rule is absent from context, then run one inside services/fee-calculator/ and confirm it is present.