v3.0.0 - Architectural Decision Framework
🎯 Major Architectural Framework Addition
BREAKING CHANGES: Complete architectural decision framework for frontend/backend responsibility separation.
This release represents a fundamental paradigm shift in how AI assistants generate PRDs, preventing common mistakes where business logic defaults to the frontend.
🚀 Key Features
Section 2: Architectural Boundaries Framework (113 lines)
Backend Responsibilities:
- Business logic, data aggregations, heavy computations
- Multi-symbol operations, data normalization
- Security operations, caching, external API integration
Frontend Responsibilities:
- UI state management, presentation logic
- Progressive disclosure, client-side validation
- Visual calculations, user preferences
5-Question Decision Framework:
- Does this require data from multiple sources?
- Is this a calculation or transformation?
- Will multiple clients need this?
- Does this affect performance?
- Is this security-sensitive or rate-limited?
Enhanced PRD Requirements
- Mandatory [Backend/Frontend] prefix in functional requirements
- Required "Architectural Decisions" section in both Quick Start and Full PRD
- Format:
FR1: Backend: Calculate P/C ratios during options chain processing
PRD Review Checkpoint: Architectural Audit
- 5-point checklist before finalizing PRD
- Red flags detection system
- Self-auditing capability for AI assistants
💡 The Problem This Solves
Before v3.0.0, AI-generated PRDs frequently contained these anti-patterns:
- ❌ "Frontend calculates P/C ratio from options data"
- ❌ "Frontend fetches multiple symbols and compares Greeks"
- ❌ "Frontend aggregates volume data across expirations"
- ❌ "Frontend calculates moving averages from price history"
After v3.0.0, the framework forces explicit architectural decisions:
- ✅ "Backend includes P/C ratio in response payload"
- ✅ "Backend multi-symbol comparison endpoint returns normalized comparison data"
- ✅ "Backend includes aggregated volume metrics in expiration summary"
- ✅ "Backend includes SMA-20/50/200 in market data response"
🎁 Impact on AI-Generated PRDs
Teams adopting v3.0.0 gain:
- Consistency: All PRDs follow "Smart Backend, Simple Frontend" principle
- Future-Proofing: Backend APIs designed to support future clients (mobile, desktop, API consumers)
- Performance: Heavy computations happen on backend, not repeated in every client
- Maintainability: Business logic in one place, not duplicated across frontend components
- Security: Security-sensitive operations explicitly assigned to backend
- DRY Principle: Data transformations happen once on backend, not repeatedly on each client
📚 Framework Philosophy
"Smart Backend, Simple Frontend": Business logic and calculations belong on backend; frontend focuses on presentation and UX.
"Backend-First Thinking": For data features, start by designing the ideal API response, then build frontend to consume it.
"Single Source of Truth": Data transformations happen once on backend, not repeatedly on each client.
🔧 Breaking Changes
- PRD Format: Functional requirements now require [Backend/Frontend] prefix
- PRD Structure: "Architectural Decisions" section now mandatory in both Quick Start and Full PRD
- File Locations: Active PRDs move from
/documentation/to/documentation/specifications/active/ - Decision Process: Step 3 of Application Process now requires architectural verification
- Examples Format: All examples updated to show architectural separation
📖 Migration Guide
From v2.x to v3.0.0:
-
Functional Requirements Format Change: Update all functional requirements to use architectural prefix
- Old:
FR1: The system must calculate P/C ratios - New:
FR1: Backend: Calculate P/C ratios during options chain processing
- Old:
-
Add Architectural Decisions Section: All PRDs now require explicit architectural decisions section before functional requirements
-
Apply Decision Framework: For each requirement, answer the 5 questions to determine placement
-
Run Architectural Audit: Before finalizing PRD, verify checklist and check for red flags
-
Update Examples: Review existing PRDs for frontend calculations, aggregations, or multi-step API calls and refactor to backend
✨ Real-World Validation
This framework was developed after observing systematic mistakes in AI-generated PRDs across multiple projects:
- Options trading platforms putting Greeks calculations in React components
- Multi-symbol comparison features making parallel frontend API calls
- Volume aggregation happening in browser instead of Lambda functions
- Moving average calculations duplicated across web and potential mobile clients
The architectural framework eliminates these patterns before implementation begins, saving days of refactoring.
🔗 Resources
Full Changelog: v2.0.0...v3.0.0