2.4 KiB
2.4 KiB
Thinking Guides
Purpose: Expand your thinking to catch things you might not have considered.
Why Thinking Guides?
Most bugs and tech debt come from "didn't think of that", not from lack of skill:
- Didn't think about what happens at layer boundaries → cross-layer bugs
- Didn't think about code patterns repeating → duplicated code everywhere
- Didn't think about edge cases → runtime errors
- Didn't think about future maintainers → unreadable code
These guides help you ask the right questions before coding.
Available Guides
| Guide | Purpose | When to Use |
|---|---|---|
| Code Reuse Thinking Guide | Identify patterns and reduce duplication | When you notice repeated patterns |
| Cross-Layer Thinking Guide | Think through data flow across layers | Features spanning multiple layers |
Quick Reference: Thinking Triggers
When to Think About Cross-Layer Issues
- Feature touches 3+ layers (API, Service, Component, Database)
- Data format changes between layers
- Multiple consumers need the same data
- You're not sure where to put some logic
→ Read Cross-Layer Thinking Guide
When to Think About Code Reuse
- You're writing similar code to something that exists
- You see the same pattern repeated 3+ times
- You're adding a new field to multiple places
- You are changing a shared constant or configuration contract
- You're creating a new utility/helper function ← Search first!
→ Read Code Reuse Thinking Guide
Reference Checks By Risk
Before changing shared contracts, cross-layer constants or configuration, inspect their consumers. A local literal or wording correction does not require a repository-wide search. Read these guides only when the task matches their triggers; do not repeat an unchanged checklist every turn.
How to Use This Directory
- Before coding: Skim the relevant thinking guide
- During coding: If something feels repetitive or complex, check the guides
- After bugs: Add new insights to the relevant guide (learn from mistakes)
Contributing
Found a new "didn't think of that" moment? Add it to the relevant guide.
Core Principle: 30 minutes of thinking saves 3 hours of debugging.