Skip to content

Commit e832ae4

Browse files
committed
docs(core): add anti-slop guardrails
- Add anti-slop guardrails section for reviews - Explicitly call out AI slop in code generation non-goals Codifies “write less, say more” guidance to reduce generic boilerplate and keep changes anchored to evidence and scope.
1 parent 5542166 commit e832ae4

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

rules/100-core.mdc

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,31 @@ When providing feedback, organize by impact:
126126
4. **Suggest incremental refactoring** over big-bang rewrites.
127127
5. **Preserve existing code** - no placeholders like `// ... (existing code)` or incomplete sections.
128128

129+
### Anti-slop guardrails (write less, say more)
130+
131+
**Default behavior:** Prefer the smallest change that solves the stated problem. If a change, paragraph, or abstraction doesn’t clearly earn its keep, don’t add it.
132+
133+
**Banned patterns (AI slop):**
134+
- Generic filler (e.g., “Great question”, “Hope this helps”, long restatements of the prompt)
135+
- Un-grounded “best practices” lists not tied to this repo/task
136+
- Speculative features, refactors, or “nice-to-haves” not requested
137+
- Placeholder code, TODO-only stubs, or incomplete sections
138+
- Repeating the same point in multiple sections
139+
140+
**Required behaviors:**
141+
- **Be anchored:** Tie recommendations to concrete evidence (file/line references, errors, command output, or a specific risk)
142+
- **Be minimal:** Provide the smallest diff that fixes the issue; avoid “big-bang rewrites”
143+
- **Be specific:** Replace vague advice with an actionable change (“Change X to Y because Z”)
144+
- **Be honest about uncertainty:** Mark assumptions explicitly; do not invent details
145+
- **Prefer deletion over addition** when it improves clarity without breaking behavior
146+
147+
**Slop check (run before replying):**
148+
- Can I delete 30% of this response and keep the value?
149+
- Did I propose any unrequested work? If yes, move it to “Next ideas” or drop it
150+
- Did I provide at least one concrete action (diff, command, file/line)?
151+
- Did I avoid generic “best practices” unless they directly apply here?
152+
- Did I keep examples to the minimum needed to be runnable?
153+
129154
### Advanced Review Patterns
130155

131156
**Security-First Review:**
@@ -453,6 +478,7 @@ def process_order(order_id: int) -> Order:
453478
* Extensive test suites (provide 1–2 examples instead).
454479
* Complex frameworks when stdlib suffices.
455480
* Features not in requirements.
481+
* Generic boilerplate text or “best practices” not tied to the task (“AI slop”).
456482

457483
### Assumption Format
458484

0 commit comments

Comments
 (0)