Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
44 changes: 44 additions & 0 deletions rules/architectural-decision-governance.mdc
Original file line number Diff line number Diff line change
@@ -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.
Loading