# 4. Đổi Logic Upsell

**Yêu cầu mẫu:** Đội Sales bảo "Nới giá 1.5x cao quá, khách chạy mất. Chỉnh xuống 1.2x thôi."

## File cần sửa

| Hành động | File | Vị trí |
|---|---|---|
| Chỉnh hệ số giá | `product_search_engine.py` | Hàm `_cascading_search()` |
| Thêm/bớt tầng | `product_search_engine.py` | List các tầng trong hàm trên |
| Đổi ngưỡng dừng | `product_search_engine.py` | Biến `MIN_RESULTS` (default = 3) |

## Chỉnh hệ số Upsell

```python
# Trước: Tầng 5 nhân 1.5x
tier_5_price = original_price_max * 1.5
tier_6_price = original_price_max * 2.0

# Sau: Giảm xuống 1.2x và 1.5x
tier_5_price = original_price_max * 1.2  # Nhẹ nhàng hơn
tier_6_price = original_price_max * 1.5  # Vẫn push nhưng ít hơn
```

## Thêm tầng mới

Ví dụ: Thêm tầng "Sale Priority" — ưu tiên đồ đang giảm giá:

```python
# Thêm tầng 3.5 (giữa Drop Tags và Drop Gender)
TIER_3_5 = {
    "name": "Sale Priority",
    "filter": "WHERE sale_priority = 1 AND product_line IN (...)",
    "description": "Ưu tiên đồ đang có chương trình giảm giá"
}
```

## Bớt tầng

Nếu muốn bỏ Upsell hoàn toàn (VD: campaign "Giá thấp mỗi ngày"):

```python
# Bỏ tầng 5, 6, 7 — chỉ giữ tầng 1-4
CASCADING_TIERS = [TIER_1, TIER_2, TIER_3, TIER_4]
# Tầng 4 là cuối cùng → nếu không đủ SP → AI nói "Em chưa tìm thấy đúng ý anh"
```

## Đổi ngưỡng dừng

```python
# Trước: Dừng khi >= 3 SP
MIN_RESULTS = 3

# Sau: Muốn nhiều lựa chọn hơn
MIN_RESULTS = 5  # Sẽ cascade sâu hơn, nhưng latency tăng
```
