chati-dev 1.4.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/README.md +40 -24
  2. package/framework/agents/build/dev.md +343 -0
  3. package/framework/agents/clarity/architect.md +112 -0
  4. package/framework/agents/clarity/brief.md +182 -0
  5. package/framework/agents/clarity/brownfield-wu.md +181 -0
  6. package/framework/agents/clarity/detail.md +110 -0
  7. package/framework/agents/clarity/greenfield-wu.md +153 -0
  8. package/framework/agents/clarity/ux.md +112 -0
  9. package/framework/config.yaml +3 -3
  10. package/framework/constitution.md +31 -1
  11. package/framework/context/governance.md +37 -0
  12. package/framework/context/protocols.md +34 -0
  13. package/framework/context/quality.md +27 -0
  14. package/framework/context/root.md +24 -0
  15. package/framework/data/entity-registry.yaml +1 -1
  16. package/framework/domains/agents/architect.yaml +51 -0
  17. package/framework/domains/agents/brief.yaml +47 -0
  18. package/framework/domains/agents/brownfield-wu.yaml +49 -0
  19. package/framework/domains/agents/detail.yaml +47 -0
  20. package/framework/domains/agents/dev.yaml +49 -0
  21. package/framework/domains/agents/devops.yaml +43 -0
  22. package/framework/domains/agents/greenfield-wu.yaml +47 -0
  23. package/framework/domains/agents/orchestrator.yaml +49 -0
  24. package/framework/domains/agents/phases.yaml +47 -0
  25. package/framework/domains/agents/qa-implementation.yaml +43 -0
  26. package/framework/domains/agents/qa-planning.yaml +44 -0
  27. package/framework/domains/agents/tasks.yaml +48 -0
  28. package/framework/domains/agents/ux.yaml +50 -0
  29. package/framework/domains/constitution.yaml +77 -0
  30. package/framework/domains/global.yaml +64 -0
  31. package/framework/domains/workflows/brownfield-discovery.yaml +16 -0
  32. package/framework/domains/workflows/brownfield-fullstack.yaml +26 -0
  33. package/framework/domains/workflows/brownfield-service.yaml +22 -0
  34. package/framework/domains/workflows/brownfield-ui.yaml +22 -0
  35. package/framework/domains/workflows/greenfield-fullstack.yaml +26 -0
  36. package/framework/hooks/constitution-guard.js +101 -0
  37. package/framework/hooks/mode-governance.js +92 -0
  38. package/framework/hooks/model-governance.js +76 -0
  39. package/framework/hooks/prism-engine.js +89 -0
  40. package/framework/hooks/session-digest.js +60 -0
  41. package/framework/hooks/settings.json +44 -0
  42. package/framework/i18n/en.yaml +3 -3
  43. package/framework/i18n/es.yaml +3 -3
  44. package/framework/i18n/fr.yaml +3 -3
  45. package/framework/i18n/pt.yaml +3 -3
  46. package/framework/intelligence/decision-engine.md +1 -1
  47. package/framework/migrations/v1.4-to-v2.0.yaml +167 -0
  48. package/framework/migrations/v2.0-to-v2.0.1.yaml +132 -0
  49. package/framework/orchestrator/chati.md +284 -6
  50. package/framework/tasks/architect-api-design.md +63 -0
  51. package/framework/tasks/architect-consolidate.md +47 -0
  52. package/framework/tasks/architect-db-design.md +73 -0
  53. package/framework/tasks/architect-design.md +95 -0
  54. package/framework/tasks/architect-security-review.md +62 -0
  55. package/framework/tasks/architect-stack-selection.md +53 -0
  56. package/framework/tasks/brief-consolidate.md +249 -0
  57. package/framework/tasks/brief-constraint-identify.md +277 -0
  58. package/framework/tasks/brief-extract-requirements.md +339 -0
  59. package/framework/tasks/brief-stakeholder-map.md +176 -0
  60. package/framework/tasks/brief-validate-completeness.md +121 -0
  61. package/framework/tasks/brownfield-wu-architecture-map.md +394 -0
  62. package/framework/tasks/brownfield-wu-deep-discovery.md +312 -0
  63. package/framework/tasks/brownfield-wu-dependency-scan.md +359 -0
  64. package/framework/tasks/brownfield-wu-migration-plan.md +483 -0
  65. package/framework/tasks/brownfield-wu-report.md +325 -0
  66. package/framework/tasks/brownfield-wu-risk-assess.md +424 -0
  67. package/framework/tasks/detail-acceptance-criteria.md +372 -0
  68. package/framework/tasks/detail-consolidate.md +138 -0
  69. package/framework/tasks/detail-edge-case-analysis.md +300 -0
  70. package/framework/tasks/detail-expand-prd.md +389 -0
  71. package/framework/tasks/detail-nfr-extraction.md +223 -0
  72. package/framework/tasks/dev-code-review.md +404 -0
  73. package/framework/tasks/dev-consolidate.md +543 -0
  74. package/framework/tasks/dev-debug.md +322 -0
  75. package/framework/tasks/dev-implement.md +252 -0
  76. package/framework/tasks/dev-iterate.md +411 -0
  77. package/framework/tasks/dev-pr-prepare.md +497 -0
  78. package/framework/tasks/dev-refactor.md +342 -0
  79. package/framework/tasks/dev-test-write.md +306 -0
  80. package/framework/tasks/devops-ci-setup.md +412 -0
  81. package/framework/tasks/devops-consolidate.md +712 -0
  82. package/framework/tasks/devops-deploy-config.md +598 -0
  83. package/framework/tasks/devops-monitoring-setup.md +658 -0
  84. package/framework/tasks/devops-release-prepare.md +673 -0
  85. package/framework/tasks/greenfield-wu-analyze-empty.md +169 -0
  86. package/framework/tasks/greenfield-wu-report.md +266 -0
  87. package/framework/tasks/greenfield-wu-scaffold-detection.md +203 -0
  88. package/framework/tasks/greenfield-wu-tech-stack-assess.md +255 -0
  89. package/framework/tasks/orchestrator-deviation.md +260 -0
  90. package/framework/tasks/orchestrator-escalate.md +276 -0
  91. package/framework/tasks/orchestrator-handoff.md +243 -0
  92. package/framework/tasks/orchestrator-health.md +372 -0
  93. package/framework/tasks/orchestrator-mode-switch.md +262 -0
  94. package/framework/tasks/orchestrator-resume.md +189 -0
  95. package/framework/tasks/orchestrator-route.md +169 -0
  96. package/framework/tasks/orchestrator-spawn-terminal.md +358 -0
  97. package/framework/tasks/orchestrator-status.md +260 -0
  98. package/framework/tasks/orchestrator-suggest-mode.md +372 -0
  99. package/framework/tasks/phases-breakdown.md +91 -0
  100. package/framework/tasks/phases-dependency-mapping.md +67 -0
  101. package/framework/tasks/phases-mvp-scoping.md +94 -0
  102. package/framework/tasks/qa-impl-consolidate.md +522 -0
  103. package/framework/tasks/qa-impl-performance-test.md +487 -0
  104. package/framework/tasks/qa-impl-regression-check.md +413 -0
  105. package/framework/tasks/qa-impl-sast-scan.md +402 -0
  106. package/framework/tasks/qa-impl-test-execute.md +344 -0
  107. package/framework/tasks/qa-impl-verdict.md +339 -0
  108. package/framework/tasks/qa-planning-consolidate.md +309 -0
  109. package/framework/tasks/qa-planning-coverage-plan.md +338 -0
  110. package/framework/tasks/qa-planning-gate-define.md +339 -0
  111. package/framework/tasks/qa-planning-risk-matrix.md +631 -0
  112. package/framework/tasks/qa-planning-test-strategy.md +217 -0
  113. package/framework/tasks/tasks-acceptance-write.md +75 -0
  114. package/framework/tasks/tasks-consolidate.md +57 -0
  115. package/framework/tasks/tasks-decompose.md +80 -0
  116. package/framework/tasks/tasks-estimate.md +66 -0
  117. package/framework/tasks/ux-a11y-check.md +49 -0
  118. package/framework/tasks/ux-component-map.md +55 -0
  119. package/framework/tasks/ux-consolidate.md +46 -0
  120. package/framework/tasks/ux-user-flow.md +46 -0
  121. package/framework/tasks/ux-wireframe.md +76 -0
  122. package/package.json +2 -2
  123. package/scripts/bundle-framework.js +2 -0
  124. package/scripts/changelog-generator.js +222 -0
  125. package/scripts/codebase-mapper.js +728 -0
  126. package/scripts/commit-message-generator.js +167 -0
  127. package/scripts/coverage-analyzer.js +260 -0
  128. package/scripts/dependency-analyzer.js +280 -0
  129. package/scripts/framework-analyzer.js +308 -0
  130. package/scripts/generate-constitution-domain.js +253 -0
  131. package/scripts/health-check.js +481 -0
  132. package/scripts/ide-sync.js +327 -0
  133. package/scripts/performance-analyzer.js +325 -0
  134. package/scripts/plan-tracker.js +278 -0
  135. package/scripts/populate-entity-registry.js +481 -0
  136. package/scripts/pr-review.js +317 -0
  137. package/scripts/rollback-manager.js +310 -0
  138. package/scripts/stuck-detector.js +343 -0
  139. package/scripts/test-quality-assessment.js +257 -0
  140. package/scripts/validate-agents.js +367 -0
  141. package/scripts/validate-tasks.js +465 -0
  142. package/src/autonomy/autonomous-gate.js +293 -0
  143. package/src/autonomy/index.js +51 -0
  144. package/src/autonomy/mode-manager.js +225 -0
  145. package/src/autonomy/mode-suggester.js +283 -0
  146. package/src/autonomy/progress-reporter.js +268 -0
  147. package/src/autonomy/safety-net.js +320 -0
  148. package/src/context/bracket-tracker.js +79 -0
  149. package/src/context/domain-loader.js +107 -0
  150. package/src/context/engine.js +144 -0
  151. package/src/context/formatter.js +184 -0
  152. package/src/context/index.js +4 -0
  153. package/src/context/layers/l0-constitution.js +28 -0
  154. package/src/context/layers/l1-global.js +37 -0
  155. package/src/context/layers/l2-agent.js +39 -0
  156. package/src/context/layers/l3-workflow.js +42 -0
  157. package/src/context/layers/l4-task.js +24 -0
  158. package/src/decision/analyzer.js +167 -0
  159. package/src/decision/engine.js +270 -0
  160. package/src/decision/index.js +38 -0
  161. package/src/decision/registry-healer.js +450 -0
  162. package/src/decision/registry-updater.js +330 -0
  163. package/src/gates/circuit-breaker.js +119 -0
  164. package/src/gates/g1-planning-complete.js +153 -0
  165. package/src/gates/g2-qa-planning.js +153 -0
  166. package/src/gates/g3-implementation.js +188 -0
  167. package/src/gates/g4-qa-implementation.js +207 -0
  168. package/src/gates/g5-deploy-ready.js +180 -0
  169. package/src/gates/gate-base.js +144 -0
  170. package/src/gates/index.js +46 -0
  171. package/src/installer/brownfield-upgrader.js +249 -0
  172. package/src/installer/core.js +82 -11
  173. package/src/installer/file-hasher.js +51 -0
  174. package/src/installer/manifest.js +117 -0
  175. package/src/installer/templates.js +17 -15
  176. package/src/installer/transaction.js +229 -0
  177. package/src/installer/validator.js +18 -1
  178. package/src/intelligence/registry-manager.js +2 -2
  179. package/src/memory/agent-memory.js +255 -0
  180. package/src/memory/gotchas-injector.js +72 -0
  181. package/src/memory/gotchas.js +361 -0
  182. package/src/memory/index.js +35 -0
  183. package/src/memory/search.js +233 -0
  184. package/src/memory/session-digest.js +239 -0
  185. package/src/merger/env-merger.js +112 -0
  186. package/src/merger/index.js +56 -0
  187. package/src/merger/replace-merger.js +51 -0
  188. package/src/merger/yaml-merger.js +127 -0
  189. package/src/orchestrator/agent-selector.js +285 -0
  190. package/src/orchestrator/deviation-handler.js +350 -0
  191. package/src/orchestrator/handoff-engine.js +271 -0
  192. package/src/orchestrator/index.js +67 -0
  193. package/src/orchestrator/intent-classifier.js +264 -0
  194. package/src/orchestrator/pipeline-manager.js +492 -0
  195. package/src/orchestrator/pipeline-state.js +223 -0
  196. package/src/orchestrator/session-manager.js +409 -0
  197. package/src/tasks/executor.js +195 -0
  198. package/src/tasks/handoff.js +226 -0
  199. package/src/tasks/index.js +4 -0
  200. package/src/tasks/loader.js +210 -0
  201. package/src/tasks/router.js +182 -0
  202. package/src/terminal/collector.js +216 -0
  203. package/src/terminal/index.js +30 -0
  204. package/src/terminal/isolation.js +129 -0
  205. package/src/terminal/monitor.js +277 -0
  206. package/src/terminal/spawner.js +269 -0
  207. package/src/upgrade/checker.js +1 -1
  208. package/src/wizard/i18n.js +3 -3
@@ -0,0 +1,95 @@
1
+ ---
2
+ id: architect-design
3
+ agent: architect
4
+ trigger: detail
5
+ phase: clarity
6
+ requires_input: false
7
+ parallelizable: true
8
+ outputs: [architecture.yaml]
9
+ handoff_to: architect-stack-selection
10
+ autonomous_gate: true
11
+ criteria:
12
+ - System architecture defined (layers, components, boundaries)
13
+ - Design patterns selected and justified
14
+ - Component responsibilities documented
15
+ ---
16
+ # Design System Architecture
17
+
18
+ ## Purpose
19
+ Design the high-level system architecture including layers, components, patterns, and boundaries.
20
+
21
+ ## Prerequisites
22
+ - `prd.yaml` with complete requirements
23
+
24
+ ## Steps
25
+
26
+ ### 1. Choose Architectural Style
27
+ Options: Layered, Microservices, Event-Driven, Serverless
28
+ For MVP blog platform: **Layered Architecture** (simple, team-appropriate)
29
+
30
+ ### 2. Define Layers
31
+ - **Presentation**: React components, pages, routing
32
+ - **Application**: Business logic, use cases (post creation, search)
33
+ - **Domain**: Core entities (User, Post) with validation rules
34
+ - **Data Access**: Repository pattern, Supabase client
35
+ - **Infrastructure**: External services (Supabase, WordPress API)
36
+
37
+ ### 3. Define Core Components
38
+ - Authentication Service
39
+ - Post Service
40
+ - Search Service
41
+ - WordPress Integration Service
42
+ - Image Upload Service
43
+
44
+ ### 4. Apply Design Patterns
45
+ - Repository pattern for data access
46
+ - Service layer for business logic
47
+ - Adapter pattern for WordPress API
48
+ - Observer pattern for real-time updates (future)
49
+
50
+ ### 5. Define Module Boundaries
51
+ Clear separation between auth, posts, search modules.
52
+
53
+ ### 6. Document Component Interactions
54
+ ASCII diagram showing component relationships.
55
+
56
+ ### 7. Define Data Flow
57
+ Request → Route → Service → Repository → Database
58
+
59
+ ### 8. Plan for Non-Functional Requirements
60
+ - Caching strategy
61
+ - Error handling approach
62
+ - Logging strategy
63
+
64
+ ### 9. Document Architecture Decisions
65
+ ADRs for major decisions.
66
+
67
+ ### 10. Generate Architecture Document
68
+
69
+ ## Output Format
70
+ ```yaml
71
+ # architecture.yaml
72
+ architectural_style: layered_architecture
73
+ layers:
74
+ - name: presentation
75
+ technologies: [React, React Router, TanStack Query]
76
+ - name: application
77
+ technologies: [Custom services]
78
+ - name: domain
79
+ technologies: [TypeScript classes, Zod validation]
80
+ - name: data
81
+ technologies: [Supabase client]
82
+ - name: infrastructure
83
+ technologies: [Supabase, WordPress API]
84
+ components:
85
+ - name: AuthService
86
+ layer: application
87
+ responsibilities: [register, login, logout, validate token]
88
+ dependencies: [SupabaseClient]
89
+ patterns:
90
+ - Repository pattern
91
+ - Service layer
92
+ - Adapter pattern
93
+ data_flow: |
94
+ User Action → React Component → Service Layer → Supabase Client → PostgreSQL
95
+ ```
@@ -0,0 +1,62 @@
1
+ ---
2
+ id: architect-security-review
3
+ agent: architect
4
+ trigger: architect-db-design
5
+ phase: clarity
6
+ requires_input: false
7
+ parallelizable: false
8
+ outputs: [security-review.yaml]
9
+ handoff_to: architect-consolidate
10
+ autonomous_gate: true
11
+ criteria:
12
+ - OWASP Top 10 threats addressed
13
+ - Authentication and authorization design reviewed
14
+ - Data protection measures defined
15
+ ---
16
+ # Security Architecture Review
17
+
18
+ ## Purpose
19
+ Review architecture for security vulnerabilities and define protection measures.
20
+
21
+ ## Steps
22
+ Address OWASP Top 10:
23
+ 1. Injection: Parameterized queries (Supabase handles)
24
+ 2. Broken Auth: JWT with expiration, bcrypt password hashing
25
+ 3. Sensitive Data Exposure: HTTPS, encrypted passwords
26
+ 4. XML External Entities: N/A (no XML)
27
+ 5. Broken Access Control: Authorization checks in API
28
+ 6. Security Misconfiguration: Security headers, CSP
29
+ 7. XSS: Content sanitization, CSP headers
30
+ 8. Insecure Deserialization: N/A (JSON only)
31
+ 9. Using Components with Known Vulnerabilities: Dependency scanning
32
+ 10. Insufficient Logging: Structured logging, audit trail
33
+
34
+ Document authentication flow, authorization matrix, data encryption.
35
+
36
+ ## Output Format
37
+ ```yaml
38
+ # security-review.yaml
39
+ owasp_top_10:
40
+ injection:
41
+ mitigation: Supabase uses parameterized queries
42
+ broken_auth:
43
+ mitigation: JWT with 7-day expiry, bcrypt hashing (12 rounds)
44
+ sensitive_data:
45
+ mitigation: HTTPS only, passwords hashed, no plaintext secrets
46
+ xss:
47
+ mitigation: React escapes by default, CSP headers
48
+ broken_access_control:
49
+ mitigation: Authorization middleware checks user_id match
50
+ authentication_flow:
51
+ - User submits credentials
52
+ - Server validates against database
53
+ - JWT issued with user_id claim
54
+ - Client stores in localStorage
55
+ - Client includes in Authorization header
56
+ - Server validates signature and expiration
57
+ authorization_matrix:
58
+ create_post: authenticated user
59
+ edit_post: post owner only
60
+ delete_post: post owner only
61
+ view_post: anyone (if published)
62
+ ```
@@ -0,0 +1,53 @@
1
+ ---
2
+ id: architect-stack-selection
3
+ agent: architect
4
+ trigger: architect-design
5
+ phase: clarity
6
+ requires_input: false
7
+ parallelizable: false
8
+ outputs: [stack-selection.yaml]
9
+ handoff_to: architect-api-design
10
+ autonomous_gate: true
11
+ criteria:
12
+ - Specific technologies chosen for each layer
13
+ - Choices justified with technical reasoning
14
+ - Compatibility verified
15
+ ---
16
+ # Select Technology Stack
17
+
18
+ ## Purpose
19
+ Choose specific technologies for each architectural layer based on requirements and constraints.
20
+
21
+ ## Steps
22
+ From brief: React frontend, Supabase backend (BaaS), PostgreSQL database.
23
+
24
+ Expand with specific versions and libraries:
25
+ - Frontend: React 18.2, Vite 5.x, TypeScript 5.x, TanStack Query, React Hook Form, Zod
26
+ - Backend: Supabase (auth, database, storage)
27
+ - Database: PostgreSQL 15+ (via Supabase)
28
+ - UI: Tailwind CSS, Headless UI
29
+ - Testing: Vitest, React Testing Library, Playwright
30
+
31
+ Document rationale for each choice.
32
+
33
+ ## Output Format
34
+ ```yaml
35
+ # stack-selection.yaml
36
+ frontend:
37
+ framework: React 18.2 (team expertise, large ecosystem)
38
+ build_tool: Vite 5 (fast HMR, modern)
39
+ language: TypeScript 5 (type safety)
40
+ state: TanStack Query (server state caching)
41
+ forms: React Hook Form (performance)
42
+ validation: Zod (runtime validation, type inference)
43
+ ui: Tailwind CSS (utility-first, rapid development)
44
+ backend:
45
+ platform: Supabase (BaaS, addresses team skill gap)
46
+ auth: Supabase Auth (JWT-based)
47
+ database: PostgreSQL 15 (via Supabase)
48
+ storage: Supabase Storage (image uploads)
49
+ testing:
50
+ unit: Vitest (Vite-native, fast)
51
+ integration: React Testing Library
52
+ e2e: Playwright (cross-browser)
53
+ ```
@@ -0,0 +1,249 @@
1
+ ---
2
+ id: brief-consolidate
3
+ agent: brief
4
+ trigger: brief-constraint-identify
5
+ phase: clarity
6
+ requires_input: false
7
+ parallelizable: false
8
+ outputs: [brief.yaml]
9
+ handoff_to: detail
10
+ autonomous_gate: false
11
+ criteria:
12
+ - All requirements consolidated and prioritized
13
+ - MVP scope clearly defined
14
+ - User approval obtained
15
+ - Completeness score >= 95%
16
+ ---
17
+ # Consolidate Brief Document
18
+
19
+ ## Purpose
20
+ Compile all requirements gathering work into a comprehensive brief document for user approval.
21
+
22
+ ## Prerequisites
23
+ - `requirements-raw.yaml`
24
+ - `validation-report.yaml`
25
+ - `stakeholder-map.yaml`
26
+ - `constraints.yaml`
27
+
28
+ ## Steps
29
+
30
+ ### 1. Load All Artifacts
31
+ Read all prerequisite files and verify completeness.
32
+
33
+ ### 2. Create Executive Summary
34
+ 5-7 sentence overview covering:
35
+ - Project vision and goals
36
+ - Target users
37
+ - Key features
38
+ - Success criteria
39
+ - Timeline and budget
40
+
41
+ ### 3. Consolidate Requirements
42
+ Merge and deduplicate requirements from all sources:
43
+ - Functional requirements with priorities
44
+ - Non-functional requirements with metrics
45
+ - All resolved constraints
46
+ - Success criteria
47
+
48
+ ### 4. Define MVP Scope
49
+ Clearly separate:
50
+ - **MVP (Phase 1)**: Must-have features for launch
51
+ - **Phase 2**: Important but can wait
52
+ - **Future**: Nice-to-have, long-term vision
53
+
54
+ ### 5. Document Personas
55
+ Include all validated personas with:
56
+ - Goals and pain points
57
+ - User journeys (high-level)
58
+ - Priority ranking
59
+
60
+ ### 6. Include Stakeholder Map
61
+ Reference key stakeholders and decision makers.
62
+
63
+ ### 7. Document Assumptions and Risks
64
+ - All assumptions made
65
+ - Key risks identified
66
+ - Mitigation strategies
67
+
68
+ ### 8. Calculate Completeness Score
69
+ Verify all required elements present:
70
+ - Functional requirements (20%)
71
+ - Non-functional requirements (15%)
72
+ - Constraints (15%)
73
+ - Personas (15%)
74
+ - Success criteria (15%)
75
+ - MVP scope (20%)
76
+
77
+ ### 9. Present to User for Approval
78
+ - Show executive summary
79
+ - Highlight MVP scope
80
+ - Point out key trade-offs made
81
+ - Ask for explicit approval
82
+
83
+ ### 10. Generate Final Brief
84
+ Create polished, presentation-ready document.
85
+
86
+ ## Decision Points
87
+ - **User Requests Changes**: Iterate on requirements before proceeding
88
+ - **Unclear Priorities**: Ask user to rank requirements
89
+
90
+ ## Error Handling
91
+ - **Incomplete Data**: Request missing information before finalizing
92
+ - **User Unavailable for Approval**: Document and proceed with flag
93
+
94
+ ## Output Format
95
+ ```yaml
96
+ # brief.yaml
97
+ timestamp: 2026-02-13T14:00:00Z
98
+ status: approved
99
+ approved_by: Product Owner
100
+ approved_at: 2026-02-13T14:00:00Z
101
+
102
+ executive_summary: |
103
+ Building a modern blogging platform for content creators to publish and
104
+ manage posts, integrated with existing WordPress content via API. Target
105
+ users are bloggers and site administrators. MVP includes user authentication,
106
+ post creation/editing, full-text search, and WordPress integration. Success
107
+ measured by 1000 users in first month and 4.5/5 satisfaction rating.
108
+ 3-month timeline with $60k budget and 2-developer team using React +
109
+ Supabase.
110
+
111
+ project_vision: |
112
+ Create an intuitive, fast blogging platform that empowers content creators
113
+ to focus on writing while providing powerful tools for discovery and engagement.
114
+
115
+ functional_requirements:
116
+ mvp:
117
+ - FR-001: User registration with email/password
118
+ - FR-002: User login with JWT authentication
119
+ - FR-003: Create blog posts with title, content, tags, and images
120
+ - FR-004: Edit and delete own posts
121
+ - FR-005: Full-text search by keyword, tag, or author
122
+ - FR-006: View post details
123
+ - FR-007: Integration with WordPress API to display existing content
124
+ phase_2:
125
+ - FR-008: Admin moderation interface
126
+ - FR-009: Comment system
127
+ - FR-010: User profiles and bios
128
+ - FR-011: Post analytics and views
129
+ future:
130
+ - FR-012: Social sharing
131
+ - FR-013: Email notifications
132
+ - FR-014: Draft auto-save
133
+ - FR-015: Rich text editor with embeds
134
+
135
+ non_functional_requirements:
136
+ performance:
137
+ - NFR-001: Page load time <2 seconds (P0)
138
+ - NFR-002: Search results in <1 second (P1)
139
+ scalability:
140
+ - NFR-003: Support 10,000 concurrent users (P1)
141
+ security:
142
+ - NFR-004: HTTPS for all connections (P0)
143
+ - NFR-005: Password hashing with bcrypt (P0)
144
+ - NFR-006: GDPR compliant (P0)
145
+ - NFR-007: XSS and SQL injection protection (P0)
146
+ usability:
147
+ - NFR-008: Mobile responsive (P0)
148
+ - NFR-009: Accessible (WCAG 2.1 AA) (P1)
149
+ reliability:
150
+ - NFR-010: 99.5% uptime (P1)
151
+
152
+ constraints:
153
+ technical:
154
+ - React frontend (team expertise)
155
+ - Supabase backend (BaaS to address team skill gap)
156
+ - WordPress API integration (existing content)
157
+ timeline:
158
+ - MVP launch: May 13, 2026 (3 months)
159
+ budget:
160
+ - Development: $60,000 (600 hours @ $100/hr)
161
+ - Hosting: $200/month
162
+ team:
163
+ - 2 React developers
164
+ - No backend expertise
165
+ regulatory:
166
+ - GDPR compliance required
167
+
168
+ personas:
169
+ - name: Sarah (Content Creator)
170
+ role: Blogger
171
+ goals: [Write easily, Reach audience, Build following]
172
+ pain_points: [Slow tools, Complex formatting, Poor analytics]
173
+ priority: primary
174
+ - name: Mike (Administrator)
175
+ role: Site Admin
176
+ goals: [Maintain quality, Manage users, Monitor health]
177
+ pain_points: [Manual moderation, Limited tools]
178
+ priority: secondary
179
+ - name: Emily (Reader)
180
+ role: Visitor
181
+ goals: [Discover content, Easy reading, Save favorites]
182
+ pain_points: [Hard to find content, Cluttered UI]
183
+ priority: primary
184
+
185
+ success_criteria:
186
+ business:
187
+ - 1000 registered users in first month
188
+ - 500 published posts in first month
189
+ technical:
190
+ - <2s average page load time
191
+ - 99.5% uptime
192
+ - Zero critical security vulnerabilities
193
+ user:
194
+ - 4.5/5 user satisfaction rating
195
+ - <5 minutes to publish first post (new user)
196
+
197
+ assumptions:
198
+ - WordPress API is stable and documented
199
+ - Supabase free tier sufficient for MVP
200
+ - Team available full-time (100 hours/month each)
201
+ - No major requirement changes during development
202
+
203
+ risks:
204
+ - risk: Team unfamiliar with Supabase
205
+ mitigation: 1-week learning phase, thorough documentation review
206
+ - risk: WordPress API changes
207
+ mitigation: Implement adapter pattern for easy updates
208
+ - risk: Scope creep
209
+ mitigation: Strict MVP scope, feature freeze after approval
210
+
211
+ mvp_scope:
212
+ included:
213
+ - User authentication (registration, login, JWT)
214
+ - Post management (create, edit, delete, view)
215
+ - Full-text search
216
+ - WordPress integration (read-only)
217
+ - Mobile responsive UI
218
+ excluded:
219
+ - Comments (phase 2)
220
+ - Admin moderation (phase 2)
221
+ - Analytics (phase 2)
222
+ - Social features (future)
223
+
224
+ estimated_effort:
225
+ total_hours: 480
226
+ breakdown:
227
+ setup_and_infrastructure: 40 hours
228
+ authentication: 60 hours
229
+ post_management: 120 hours
230
+ search: 60 hours
231
+ wordpress_integration: 40 hours
232
+ ui_ux: 100 hours
233
+ testing: 60 hours
234
+ buffer: 120 hours (20%)
235
+
236
+ timeline:
237
+ start_date: 2026-02-14
238
+ mvp_launch: 2026-05-13
239
+ duration_weeks: 12
240
+
241
+ completeness_score: 96
242
+ approval_status: approved
243
+ next_phase: detail
244
+ handoff_note: |
245
+ Brief approved. MVP scope defined and constrained to fit 3-month timeline
246
+ with 2-developer team. Key trade-off: Using Supabase BaaS to address
247
+ backend skill gap. Next step: Detail agent to expand into full PRD with
248
+ technical specifications.
249
+ ```