# ✅ Smart Product Search — DONE

**Ngày hoàn thành:** 2026-04-09

## Mô tả
Triển khai tính năng Smart Product Search với tiered relevance ranking cho trang Product Performance.

## Thay đổi

### Backend (`api/product_route.py`)
- Thêm **relevance scoring** bằng SQL CASE WHEN khi có search query
- Tiered scoring: Exact SKU (100) → SKU Prefix (90) → Exact Name (85) → Name StartsWith (70) → Name Contains (50) → Product Line (40) → Partial (30)
- Auto-sort theo `relevance_score DESC, quantity_sold DESC` khi search
- Trả thêm field `sort` và `relevance_score` per product

### Frontend (`product.html` + `product-render.js`)
- Thêm option "🎯 Độ liên quan" trong sort dropdown
- **Auto-switch**: tự chuyển sang sort "Độ liên quan" khi gõ search, reset về "Bán chạy" khi xóa
- **Relevance badge**: hiện badge với điểm (🎯 100, ✓ 70, ~ 30) có màu (xanh > vàng > xám)
- **Highlight**: tô vàng từ khóa tìm kiếm trong tên sản phẩm

## Tham khảo
- `searchRanking.ts` từ obsidian-Smart2Brain (`calculateTitleBoost`)
- Tiered boosting pattern: exact > prefix > startsWith > contains > partial

## Backlog Ideas (chưa làm)
1. **Dashboard stat cards thông minh hơn** — SP bán chạy chưa có mô tả, SP cập nhật gần đây, SP thiếu trường  
2. **AI Agent Mode** — Agent tự tìm data (product, size guide, similar SP) trước khi generate mô tả
3. **Conversation Summarization** — tự tóm tắt khi chat quá 80% context window
4. **Tag Boosting** — tìm SP theo tags ưu tiên exact > prefix > partial
5. **Google Drive + n8n Flow** — auto-fill mô tả SP mới từ ảnh trên Drive
