diff --git a/README.md b/README.md index 8204dac5..371ef256 100644 --- a/README.md +++ b/README.md @@ -242,6 +242,7 @@ By adding selected `.mdc` files to `.cursor/rules/`, you can use these rules dir - [Alpha Skills](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/alpha-skills-quant-factor-research.mdc) - Quantitative factor research skills for Cursor. Evaluate factors, run backtests, mine new alpha through natural language. - [Anti-Over-Engineering](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/anti-overengineering.mdc) - Keeping changes scoped, simple, and directly tied to the user's request. - [Anti-Sycophancy Code Discipline](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/anti-sycophancy-code-discipline-cursorrules-prompt-file.mdc) - 17 directives blocking the most common LLM coding honesty failures: hallucinated APIs, invented signatures, false-confidence validation, manufactured-urgency capitulation, authority-driven softening, and self-referential comments. Drop the `.mdc` in `.cursor/rules/`. +- [Architectural Decision Governance](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/architectural-decision-governance.mdc) - Treats recorded architectural decisions as binding constraints, with rules for preventing contradictory implementations, parallel rebuilds, and reintroduced dependencies. - [Chrome Extension (JavaScript/TypeScript)](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/chrome-extension-dev-js-typescript-cursorrules-pro.mdc) - Chrome extension development with JavaScript and TypeScript integration. - [Code Guidelines](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/code-guidelines-cursorrules-prompt-file.mdc) - Code development with guidelines integration. - [Code Pair Interviews](https://github.com/PatrickJS/awesome-cursorrules/blob/main/rules/code-pair-interviews.mdc) - Interview practice and collaborative coding sessions. diff --git a/rules/architectural-decision-governance.mdc b/rules/architectural-decision-governance.mdc new file mode 100644 index 00000000..c59cc0e1 --- /dev/null +++ b/rules/architectural-decision-governance.mdc @@ -0,0 +1,44 @@ +--- +description: Enforce recorded architectural decisions (ADRs) so AI-generated code does not contradict prior choices. Prevents architectural drift, silent rebuilds, and reintroduced dependencies. +globs: ["**/*"] +alwaysApply: false +--- + +# Architectural Decision Governance + +This codebase records architectural decisions. Treat them as binding +constraints, not suggestions. Check generated code against them before you write. + +## Rules + +1. Respect recorded decisions. If the project documents a decision (in + `docs/adr/`, `ADR.md`, `DECISIONS.md`, `.cursor/rules/`, or an + `ARCHITECTURE`/`CONTEXT` file), follow it. Do not generate code that + contradicts one. +2. Extend, do not rebuild. If an abstraction already exists for a purpose, + reuse or extend it. Do not stand up a parallel implementation. +3. Do not reintroduce rejected choices. If a dependency, pattern, or approach + was explicitly ruled out, leave it out. If you think it is now warranted, + say so and ask first. +4. Stay inside the chosen stack. Do not add a new library, datastore, or + pattern when an approved one already covers the need. +5. Surface conflicts early. If a request collides with a recorded decision, + stop and name the decision it violates instead of silently generating the + conflicting code. + +## Before you write code + +1. Identify which recorded decisions apply to the files you are touching. +2. State, in one line, the decision(s) you are working under. +3. Generate code consistent with them. +4. If the choice is architecturally significant and no decision covers it + (a new dependency, a new boundary, a data-model change), propose the + decision and ask before committing to it. + +## When you cannot comply + +Do not proceed. Explain which decision blocks the request, what the request +would require, and the options: comply, amend the decision, or escalate. + +--- +Source: [Mneme HQ](https://mnemehq.com/) architectural governance ruleset.