docs/explanation/preventing-agent-conflicts.md
When multiple AI agents implement different parts of a system, they can make conflicting technical decisions. Architecture documentation prevents this by establishing shared standards.
Without architecture:
/users/{id}With architecture:
Without architecture:
With architecture:
Without architecture:
With architecture:
Every significant technology choice is documented with:
Architecture maps each functional requirement to technical approach:
Explicit documentation of:
Think of architecture as the shared context that all agents read before implementing:
PRD: "What to build"
↓
Architecture: "How to build it"
↓
Agent A reads architecture → implements Epic 1
Agent B reads architecture → implements Epic 2
Agent C reads architecture → implements Epic 3
↓
Result: Consistent implementation
Common decisions that prevent conflicts:
| Topic | Example Decision |
|---|---|
| API Style | GraphQL vs REST vs gRPC |
| Database | PostgreSQL vs MongoDB |
| Auth | JWT vs Sessions |
| State Management | Redux vs Context vs Zustand |
| Styling | CSS Modules vs Tailwind vs Styled Components |
| Testing | Jest + Playwright vs Vitest + Cypress |
:::caution[Common Mistakes]
:::tip[Correct Approach]
bmad-correct-course for significant changes
:::