#Kế Hoạch Triển Khai (Implementation Plan)

#Tổng Quan

Implementation Plan là artifact chi tiết mô tả cách Agent dự định kiến trúc các thay đổi trong codebase để hoàn thành một tác vụ. Đây là bước giữa Task List (kế hoạch tổng quan) và code thực tế.

#Nội Dung

Implementation Plan thường bao gồm:

#1. Tóm Tắt Kỹ Thuật

  • Mô tả tổng quan về approach (cách tiếp cận)
  • Các quyết định kỹ thuật quan trọng
  • Trade-offs (đánh đổi) và lý do

#2. File Bị Ảnh Hưởng

  • Danh sách file sẽ được tạo mới
  • Danh sách file sẽ được chỉnh sửa
  • Danh sách file sẽ bị xóa (nếu có)

#3. Chi Tiết Thay Đổi

  • Mô tả cụ thể những gì sẽ thay đổi trong mỗi file
  • Interfaces, types, function signatures
  • Data flow (luồng dữ liệu)

#4. Dependencies

  • Packages mới cần cài đặt
  • API endpoints cần gọi
  • Database migrations cần chạy

#Ví Dụ

MARKDOWN
## Implementation Plan: Auth Module

### Approach
Sử dụng Supabase Auth với PKCE flow cho authentication.
Chosen over custom JWT vì tích hợp sẵn RLS.

### Files
| File | Action | Description |
|------|--------|-------------|
| src/lib/supabase.ts | Create | Supabase client |
| src/hooks/useAuth.ts | Create | Auth hook |
| src/app/login/page.tsx | Create | Login page |
| src/middleware.ts | Modify | Add auth check |

### Technical Details
- PKCE flow cho server-side rendering
- Session stored in httpOnly cookies
- RLS policies cho row-level security

#Workflow

  1. Agent phân tích yêu cầu
  2. Tạo Implementation Plan artifact
  3. Hiển thị cho người dùng review
  4. Người dùng phê duyệt hoặc yêu cầu thay đổi
  5. Agent sửa đổi plan nếu cần
  6. Sau khi được phê duyệt, Agent bắt đầu triển khai code

#Tại Sao Implementation Plan Quan Trọng?

Lý DoMô Tả
Phòng ngừa lỗiPhát hiện vấn đề kiến trúc TRƯỚC khi viết code
Minh bạchNgười dùng hiểu rõ Agent sẽ làm gì
Có thể reviewDễ dàng cung cấp feedback trên kế hoạch
Tài liệuTự động tạo tài liệu kỹ thuật
Giảm reworkÍt phải viết lại code do sai hướng

Mẹo: Dành thời gian review Implementation Plan kỹ lưỡng. Sửa kế hoạch nhanh hơn nhiều so với sửa code đã viết.