Files
goodgo-platform/docs/architecture/IMPLEMENTATION_PLAN.md
Ho Ngoc Hai d8b409a9ab
Some checks failed
CI / Lint → Typecheck → Test → Build (22) (push) Failing after 18s
CI / E2E Tests (push) Has been skipped
CodeQL Analysis / CodeQL (javascript-typescript) (push) Failing after 2m15s
Deploy / Build API Image (push) Failing after 28s
Deploy / Build Web Image (push) Failing after 16s
Deploy / Build AI Services Image (push) Failing after 17s
E2E Tests / Playwright E2E (push) Failing after 31s
Security Scanning / Dependency Audit (pnpm) (push) Failing after 3s
Security Scanning / Trivy Scan — API Image (push) Failing after 1m46s
Security Scanning / Trivy Scan — Web Image (push) Failing after 1m7s
Security Scanning / Trivy Scan — AI Services Image (push) Failing after 53s
Security Scanning / Trivy Filesystem Scan (push) Failing after 35s
Deploy / Deploy to Staging (push) Has been skipped
Deploy / Smoke Test Staging (push) Has been skipped
Deploy / Deploy to Production (push) Has been skipped
Deploy / Smoke Test Production (push) Has been skipped
Security Scanning / Security Gate (push) Failing after 0s
Deploy / Rollback Staging (push) Has been skipped
Deploy / Rollback Production (push) Has been skipped
docs: dịch 22 file Markdown còn lại sang tiếng Việt có dấu (TEC-2881)
Hoàn tất đợt cuối của nhiệm vụ chuyển toàn bộ tài liệu sang tiếng Việt.
Đã dịch 22 file `.md` còn sót (~9.7k dòng) — gồm RUNBOOK, audits,
docs/architecture, docs/load-testing, libs READMEs và các quick references.
Giữ nguyên code blocks, đường dẫn, identifier kỹ thuật, URL và biến môi trường.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-19 03:26:14 +07:00

15 KiB

Nền tảng GoodGo AI — Kế hoạch triển khai

Cập nhật lần cuối: 2026-04-12


Các Milestone

Milestone 1: Walking Skeleton (Phase 0)

Mục tiêu: Bất kỳ kỹ sư nào cũng có thể clone, cài đặt và bắt đầu phát triển.

Thứ tự thực hiện:

  1. [TEC-1415] Monorepo Scaffolding + [TEC-1416] Docker Compose (song song — không có dependency)
  2. [TEC-1420] ESLint/Prettier (sau F1)
  3. [TEC-1417] Prisma Schema (sau F1 + F2)
  4. [TEC-1418] Shared Module (sau F1)
  5. [TEC-1419] CI/CD Pipeline (sau F1)
F1 (Monorepo) ──┬── F6 (Lint/Prettier)
                 ├── F3 (Prisma Schema) ←── F2 (Docker)
                 ├── F4 (Shared Module)
                 └── F5 (CI/CD)
F2 (Docker) ─────┘

Milestone 2: Core Product (Phase 1)

Mục tiêu: Người dùng có thể đăng ký, đăng tin và tìm kiếm bất động sản.

Thứ tự thực hiện:

  1. [TEC-1421] Auth Backend (sau F3, F4)
  2. [TEC-1425] Security Hardening + [TEC-1426] Error Handling (song song, sau F1/F4)
  3. [TEC-1422] Auth Frontend (sau C1)
  4. [TEC-1423] Listings Backend (sau C1)
  5. [TEC-1424] Search Backend (sau C3)
  6. [TEC-1427] Listings Frontend (sau C3)
  7. [TEC-1428] Search + Landing Frontend (sau C5)
F3 + F4 ──→ C1 (Auth BE) ──┬── C2 (Auth FE)
                            ├── C3 (Listings BE) ──┬── C5 (Search BE) ──→ C6 (Search FE)
                            │                      └── C4 (Listings FE)
                            ├── X1 (Security)
                            └── X3 (Error Handling)

Milestone 3: Monetization (Phase 2)

Mục tiêu: MVP tạo doanh thu với thanh toán, subscription và công cụ admin.

C1 ──→ M1 (Payments) ──→ M2 (Subscriptions)
C1 ──→ M3 (Notifications)
C1 + C3 ──→ M4 (Admin)
Phase 1 ──→ X4 (E2E Tests)

Milestone 4: AI-Powered (Phase 3)

Mục tiêu: Sản phẩm khác biệt với các tính năng AI.

F2 ──→ A1 (AI/ML Container) ──→ A2 (Analytics)
C5 + A2 ──→ A3 (MCP Servers)

Bản đồ phụ thuộc

Task Phụ thuộc vào
TEC-1415 (F1) Không
TEC-1416 (F2) Không
TEC-1417 (F3) F1, F2
TEC-1418 (F4) F1
TEC-1419 (F5) F1
TEC-1420 (F6) F1
TEC-1421 (C1) F3, F4
TEC-1422 (C2) C1
TEC-1423 (C3) C1, F3
TEC-1424 (C5) C3, F2
TEC-1425 (X1) F1
TEC-1426 (X3) F4
TEC-1427 (C4) C3
TEC-1428 (C6) C5
TEC-1429 (M1) C1
TEC-1430 (M2) M1
TEC-1431 (M3) C1
TEC-1432 (M4) C1, C3
TEC-1433 (X4) Phase 1

Milestone 5: Production Hardening (Phase 4)

Mục tiêu: Sửa tất cả các vấn đề bảo mật quan trọng. Thiết lập khả năng triển khai production.

Thứ tự thực hiện:

  1. [TEC-1449] JWT Secret Fix + [TEC-1451] HMAC Timing Fix + [TEC-1452] MinIO Fix + [TEC-1453] CSRF (song song — không có dependency giữa chúng)
  2. [TEC-1455] DB Index (độc lập — có thể chạy song song với các task trên)
  3. [TEC-1450] Deployment Pipeline (sau khi đã xác minh các bản sửa lỗi bảo mật)
  4. [TEC-1457] Backups + Logs (sau khi hạ tầng deployment đã có)
  5. [TEC-1456] Test Coverage (song song — độc lập với hạ tầng)
TEC-1449 (JWT) ──────┐
TEC-1451 (HMAC) ─────┤
TEC-1452 (MinIO) ────┼──→ TEC-1450 (Deploy Pipeline) ──→ TEC-1457 (Backups + Logs)
TEC-1453 (CSRF) ─────┘
TEC-1455 (DB Index) ──────────────────────────────────(independent)
TEC-1456 (Tests) ─────────────────────────────────────(independent)

Milestone 6: Quality & Polish (Phase 5)

Mục tiêu: UX, tài liệu và hiệu năng đạt chất lượng production.

Phase 4 done ──→ TEC-1458 (Redis Caching)
                 TEC-1459 (Frontend Polish)    (parallel)
                 TEC-1460 (OpenAPI/Swagger)    (parallel)
                 TEC-1461 (Documentation)      (parallel)

Bản đồ phụ thuộc (Phase 4-5)

Task Phụ thuộc vào
TEC-1449 Không
TEC-1450 TEC-1449 (bảo mật trước)
TEC-1451 Không
TEC-1452 Không
TEC-1453 Không
TEC-1455 Không
TEC-1456 Không
TEC-1457 TEC-1450
TEC-1458 Phase 4
TEC-1459 Không
TEC-1460 Không
TEC-1461 Không

Milestone 7: Hoàn thành tính năng MVP & Audit (Phase 6)

Mục tiêu: Hoàn thành các tính năng MVP còn lại (Agent Portal, AI, Payments), dọn dẹp tech debt từ audit.

Sprint 1 — Ổn định (Tuần 1):

  1. [TEC-1592] Commit các file chưa được track (P0, không có dependency)
  2. [TEC-1593] Sửa Architect agent (P0, không có dependency)
  3. [TEC-1594] Hợp nhất i18n (P1, không có dependency)

Sprint 2 — Agent Portal + Payments (Tuần 2-3): 4. [TEC-1595] Agent Portal (P1, sau TEC-1592) 5. [TEC-1597] Luồng thanh toán (P1, sau TEC-1592) 6. [TEC-1598] Smoke test (P1, độc lập)

Sprint 3 — AI & Chất lượng (Tuần 4-5): 7. [TEC-1596] Tích hợp AI/ML (P1, sau TEC-1592) 8. [TEC-1599] Độ bao phủ test (P2, độc lập) 9. [TEC-1600] Tài liệu OpenAPI (P2, độc lập)

Sprint 4 — Củng cố (Tuần 5-6): 10. [TEC-1601] Baseline K6 (P2, độc lập) 11. [TEC-1602] Audit bảo mật (P2, sau các bản sửa bảo mật Phase 4) 12. [TEC-1603] Tối ưu DB index (P2, độc lập) 13. [TEC-1604] Tích hợp Sentry (P2, độc lập)

TEC-1592 (Commit) ──┬── TEC-1595 (Agent Portal)
                    ├── TEC-1596 (AI/ML)
                    └── TEC-1597 (Payments)
TEC-1593 (Architect Fix) ─── (independent)
TEC-1594 (i18n) ────────────── (independent)
TEC-1598 (Smoke Tests) ─────── (independent)
TEC-1599..1604 (P2 quality) ── (all independent, parallel)

Bản đồ phụ thuộc (Phase 6)

Task Phụ thuộc vào
TEC-1592 Không
TEC-1593 Không
TEC-1594 Không
TEC-1595 TEC-1592
TEC-1596 TEC-1592
TEC-1597 TEC-1592
TEC-1598 Không
TEC-1599 Không
TEC-1600 Không
TEC-1601 Không
TEC-1602 Bảo mật Phase 4
TEC-1603 Không
TEC-1604 Không

Milestone 8: Cải tiến sau MVP (Phase 7)

Mục tiêu: Sửa các bug còn lại, củng cố cho production, cải thiện UX và DX.

Wave 1 — Sửa lỗi quan trọng (1-2 ngày):

  1. [TEC-1647] Sửa định tuyến Reviews (P0, không có dependency)
  2. [TEC-1648] Sửa các Health endpoint (P0, không có dependency)
  3. [TEC-1649] Sửa xử lý lỗi Login (P0, cần DB)
  4. [TEC-1650] Sửa Listing 404 (P1, cần DB)

Wave 2 — Sẵn sàng Production (3-5 ngày): 5. [TEC-1651] Môi trường E2E CI (P1, không có dependency) 6. [TEC-1652] Chạy E2E test (P1, sau các fix Wave 1) 7. [TEC-1653] Audit security header (P1, không có dependency) 8. [TEC-1658] PgBouncer pooling (P1, không có dependency)

Wave 3 — Chất lượng hướng tới người dùng (1-2 tuần): 9. [TEC-1654] Mobile responsive (P1, không có dependency) 10. [TEC-1655] Tối ưu SEO (P1, không có dependency) 11. [TEC-1656] Rate limiting theo người dùng (P1, không có dependency) 12. [TEC-1657] Audit logging cho admin (P1, không có dependency)

Wave 4 — Xuất sắc về Engineering (2-3 tuần): 13. [TEC-1659] Graceful degradation (P2, không có dependency) 14. [TEC-1660] Tài liệu mã lỗi (P2, không có dependency) 15. [TEC-1661] RUM + Web Vitals (P2, không có dependency) 16. [TEC-1662] Cập nhật QA Tracker (P2, sau Wave 2)

TEC-1647 (Reviews) ──┐
TEC-1648 (Health) ────┼── TEC-1652 (E2E Tests) ── TEC-1662 (QA Update)
TEC-1649 (Login) ─────┤
TEC-1650 (Listing) ───┘
TEC-1651 (CI E2E) ──────── (independent)
TEC-1653 (Headers) ─────── (independent)
TEC-1658 (PgBouncer) ───── (independent)
TEC-1654..1657 (Wave 3) ── (all independent, parallel)
TEC-1659..1661 (Wave 4) ── (all independent, parallel)

Bản đồ phụ thuộc (Phase 7)

Task Phụ thuộc vào
TEC-1647 Không
TEC-1648 Không
TEC-1649 Không
TEC-1650 Không
TEC-1651 Không
TEC-1652 TEC-1647, TEC-1648
TEC-1653 Không
TEC-1654 Không
TEC-1655 Không
TEC-1656 Không
TEC-1657 Không
TEC-1658 Không
TEC-1659 Không
TEC-1660 Không
TEC-1661 Không
TEC-1662 TEC-1652

Milestone 9: Audit của CEO Wave 5 — Bảo mật & Tính năng (Phase 7 tiếp)

Mục tiêu: Xử lý các lỗ hổng bảo mật, cải thiện độ bao phủ test, triển khai tính năng còn thiếu của Sprint 3.

Wave 5a — Bảo mật (NGÀY 1-2, song song):

  1. [TEC-1684] Sửa lỗ hổng npm (P0, Security Engineer)
  2. [TEC-1685] Sửa lỗi lint (P1, QA Engineer)

Wave 5b — Chất lượng & Tính năng (TUẦN 1-2): 3. [TEC-1686] Đẩy mạnh độ bao phủ test (P1, QA Engineer, sau 5a) 4. [TEC-1688] Saved Searches + Alerts (P1, Architect) 5. [TEC-1687] Thiết lập Dependabot (P2, DevOps Engineer)

TEC-1684 (NPM Vuln) ─────── (independent, P0)
TEC-1685 (Lint) ──────────── TEC-1686 (Test Coverage)
TEC-1688 (Saved Searches) ── (independent, P1)
TEC-1687 (Dependabot) ────── (independent, P2)

Bản đồ phụ thuộc (Wave 5)

Task Phụ thuộc vào
TEC-1684 Không
TEC-1685 Không
TEC-1686 TEC-1685
TEC-1687 Không
TEC-1688 Không

Ghi chú triển khai

  • Phase 0-6 đã hoàn thành — 51/51 task xong, MVP hoàn chỉnh tính năng
  • Phase 7 là ưu tiên hiện tại — sửa bug và củng cố production
  • Wave 13 là sprint hiện tại — 6 task (TEC-1918 đến TEC-1923)
  • Tổng trạng thái dự án (từ Paperclip, 2026-04-12): 219 done / 3 in progress / 9 todo / 3 cancelled trên tổng số 234 issue
  • Đường găng: TEC-1918 (TS errors) → TEC-1919 (E2E unblock) → checklist sẵn sàng production (TEC-1922)
  • Ưu tiên: CI green (TEC-1918), E2E (TEC-1919), grooming backlog (TEC-1920), trang /pricing (TEC-1921)
  • Lộ trình production: Các fix Wave 13 → checklist sẵn sàng production → quyết định go-live

Milestone 13: Audit của CEO Wave 13 (Phase 7 tiếp)

Mục tiêu: Sửa các lỗi TS còn lại, gỡ chặn E2E, grooming backlog, hoàn thành trang pricing, checklist sẵn sàng production.

Wave 13A — Sửa CI (Ngày 1):

  1. [TEC-1918] Sửa 7 lỗi biên dịch TS trong các file test web (P0, Senior Backend Engineer)

Wave 13B — Tính năng & Chất lượng (Ngày 2-3): 2. [TEC-1919] Gỡ chặn môi trường E2E test (P1, DevOps Engineer) 3. [TEC-1920] Grooming backlog — loại bỏ trùng lặp và đóng các task đã giải quyết (P1, QA Engineer) 4. [TEC-1921] Hoàn thành trang /pricing (P1, Senior Frontend Engineer)

Wave 13C — Tài liệu & Sẵn sàng (Ngày 3-5): 5. [TEC-1922] Checklist sẵn sàng production (P2, SRE Engineer) 6. [TEC-1923] Cập nhật PROJECT_TRACKER.md (P2, Technical Writer)

TEC-1918 (TS Errors) ──→ TEC-1919 (E2E Unblock)
TEC-1920 (Backlog) ────── (independent)
TEC-1921 (/pricing) ───── (independent)
TEC-1922 (Readiness) ──── (after TEC-1918/1919)
TEC-1923 (Tracker) ────── (independent)

Bản đồ phụ thuộc (Wave 13)

Task Phụ thuộc vào
TEC-1918 Không
TEC-1919 TEC-1918
TEC-1920 Không
TEC-1921 Không
TEC-1922 TEC-1918, TEC-1919
TEC-1923 Không

Milestone 12: Audit của CEO — Sửa CI Pipeline (Phase 7 Wave 12)

Mục tiêu: Khôi phục CI pipeline về trạng thái xanh. Sửa tất cả các lỗi TypeScript, ESLint và test. Commit công việc còn tồn đọng.

Wave 12A — Sửa CI (Ngày 1, song song):

  1. [TEC-1898] Sửa migration Prisma 7 (P0, Senior Backend Engineer)
  2. [TEC-1899] Sửa 31 unit test thất bại (P0, QA Engineer)
  3. [TEC-1900] Sửa lỗi ESLint + commit file (P0, Senior Backend Engineer, sau TEC-1898)

Wave 12B — Sửa lỗi (Ngày 2-3): 4. [TEC-1649] Fix Login 500→401 (P1, đang tiến hành) 5. [TEC-1657] Audit logging cho admin (P1, todo) 6. [TEC-1878] Môi trường E2E (P1, DevOps Engineer) 7. [TEC-1847] Test component React (P1, QA Engineer)

TEC-1898 (Prisma Fix) ──┬── TEC-1900 (ESLint + Commit)
TEC-1899 (Test Fixes) ──┘
TEC-1649 (Login Fix) ─── (independent, in progress)
TEC-1878 (E2E Env) ────── (independent)
TEC-1657 (Audit Logs) ─── (independent)
TEC-1847 (RTL Tests) ──── (independent)

Bản đồ phụ thuộc (Wave 12)

Task Phụ thuộc vào
TEC-1898 Không
TEC-1899 Không
TEC-1900 TEC-1898
TEC-1649 Không
TEC-1657 Không
TEC-1878 Không
TEC-1847 Không