SurfSense/_bmad-output/implementation-artifacts/1-1-project-infrastructure-database-init.md

2.5 KiB

Story 1.1: Khởi tạo Hạ tầng Dự án & Cơ sở Dữ liệu (Project Infrastructure & Database Init)

Status: done Epic: Epic 1 Story Key: 1-1-project-infrastructure-database-init

📖 Story Requirements (Context & PRD)

This section maps directly to the original Product Requirements Document and Epics definition.

As a Kỹ sư Hệ thống, I want thiết lập bộ khung Next.js, FastAPI, và cấu hình Docker-compose cho Postgres/Redis/ZeroServer, So that toàn bộ nền tảng có thể khởi chạy môi trường phát triển (Dev Environment) một cách nhất quán cho tất cả các team. Acceptance Criteria: Given môi trường dự án mới When chạy lệnh docker-compose -f docker/docker-compose.dev.yml up -d Then các containers Postgres 16 (với pgvector), Redis, Zero-Server, FastAPI, và Next.js khởi tạo thành công And database tự động migrate được schema ban đầu bao gồm bảng users với quy tắc snake_case.

🏗️ Architecture & Technical Guardrails

Critical instructions for the development agent based on the project's established architecture.

Technical Requirements

  • Language/Framework: React, Next.js (TypeScript) for Web; FastAPI (Python) for Backend.
  • Database: Prisma/Supabase.
  • Strict Type checking must be enforced. No any types.

Code Organization

This story is currently marked as done. Implementation should target the following components/files:

  • surfsense_backend/app/connectors/dropbox/client.py
  • surfsense_backend/app/schemas/incentive_tasks.py
  • surfsense_backend/app/utils/proxy_config.py
  • surfsense_web/components/chat-comments/comment-panel-container/comment-panel-container.tsx
  • surfsense_web/components/tool-ui/write-todos.tsx
  • surfsense_web/components/shared/image-config-dialog.tsx
  • surfsense_backend/app/users.py
  • surfsense_web/components/ui/dropdown-menu.tsx

Developer Agent Constraints

  1. No Destructive Refactors: Extend existing modules when possible.
  2. Context Check: Always refer back to task.md and use Context7 to verify latest SDK usages.
  3. BMad Standard: Update the sprint status using standard metrics.

🧪 Testing & Validation Requirements

  • All new endpoints must be tested.
  • Frontend components should gracefully degrade.
  • Do not introduce regressions into existing user workflows.

📈 Completion Status

(To be updated by the agent when completing this story)

  • Start Date: _____________
  • Completion Date: _____________
  • Key Files Changed: