# 芒果挑选指南

**适用范围：** 整颗鲜食芒果，覆盖 Honey/Ataulfo/Champagne、小黄芒、金煌、台农/小台芒、Keitt/Kent/凯特、Tommy/Haden、爱文/贵妃/澳芒/R2E2，以及青芒料理吃法。
**不适用：** 已切盒装芒果、照片甜度/Brix/干物质预测、开果后纤维或水心判断。

## 0. 能力与最低必要输入

芒果照片不能判断甜不甜。本文的增量价值是避免颜色误判、按吃法找合适软硬，并用果肩/果鼻识别“放软也未必正常后熟”的采收成熟风险。

光源、证据质量 `Q`、置信度、合并提问与输出增强的通用协议见 [../common.md](../common.md)；本文只列芒果特有的档位映射与差异规则。

- **基础食用窗口：** 颜色/可能品种 `C`、来源 `CS`、吃法 `E`、轻压 `T`。
- **完整购买判断：** 再需要清楚的果肩/果鼻 `S` 和可见风险 `V`。没有 `S` 时只能给软硬与吃法的局部判断，不计算完整购买分。
- **只有照片、没有 `T`：** 只能给颜色陷阱、采收形态和可见风险，不能判断今天是否适吃。

输入分工：

- `【Agent 读取】`：从标签读取品种并记录 `CS`；从整果照片读取果肩/果鼻 `S` 和风险 `V`。
- `【问用户】`：缺少吃法时问 `E`；缺少手感时问 `T`。
- `【问用户】`：准备用照片颜色填写 `C` 时，按 [../common.md](../common.md) 光源协议取得 `G`（选项 `A/B/C/D`：A 可用、B 弱用、C/D 或未答停用）。
- `【条件补问】`：标签和照片都无法分流时再让用户按颜色类型自述；前面信号临界或冲突时才问果蒂香气 `R`。

每个收集项都有代号，后续用代号组合判断。用户能直接说品种时优先用品种，不要求用户先学会分颜色类型。

## 1. 路由参数

### 1.1 颜色/品种 `C` 与来源 `CS`

需要从照片颜色分组时，先按 [../common.md](../common.md) 光源协议取得 `G`；`G=A` 可使用照片颜色，`G=B` 仅在无明显偏色、反光时弱用，`G=C/D` 或未回答时不使用照片颜色。

| `CS` | 来源 | 规则适用性 |
|---|---|---|
| A | 清楚标签 | 可进入对应品种分支 |
| B | 用户明确说出品种 | 可进入对应品种分支，不作身份鉴真 |
| C | Agent 根据可用照片颜色分组 | 只是颜色 fallback |
| D | 用户按颜色类型自述 | 只是颜色 fallback |
| E | 不确定 | 规则适用性低 |

| `C` | 类型与常见品种 | 路由要点 |
|---|---|---|
| A | 小黄芒：Honey / Ataulfo / Champagne | 可接受更软的鲜食窗口 |
| B | 黄皮/黄化大芒：金煌、台农、小台芒 | 不追求软塌，按通用软硬匹配 |
| C | 绿皮成熟型：Keitt / Kent / 凯特 | 绿皮不能判生 |
| D | 红皮/混色：Tommy / Haden / 爱文 / 贵妃 / 澳芒 / R2E2 | 红色面积不能判熟 |
| E | 明确酸脆青芒/料理芒 | 进入硬脆料理路线 |
| F | 不确定 | 只按果肩、轻压和风险低置信判断 |

明确品种覆盖肉眼颜色。Kent 有黄底/黄点但未全黄、Keitt/凯特一直偏绿都可能正常；Tommy/Haden 红得漂亮也不能替代手感。

### 1.2 `【问用户】` 吃法 `E`

```text
你准备怎么吃？
A. 直接鲜食，正常软甜就行
B. 切块/沙拉/摆盘，要成形
C. 奶昔/甜品，要更软
D. 酸脆青芒/蘸辣椒盐/腌渍
E. 不确定
```

`E` 是硬路由，不加分。`E=E` 暂按直接鲜食解释，但置信度降低。

## 2. 加权参数与风险

### 2.1 Agent 读取果肩/果鼻 `S`

观察整果轮廓和果蒂两侧。果肩是果蒂两侧向外鼓起的上部轮廓；果鼻是远离果蒂的一端，不是果蒂本身。

| `S` | 可执行定义 | 采收成熟状态值 |
|---|---|---:|
| A | 两侧果肩已经填满，至少与果蒂连接处近似齐平或略高；上部轮廓圆钝，不明显收颈；果鼻饱满或圆钝 | `100` |
| B | 一侧较满一侧较平，或肩部与连接处大致齐平但不饱满；果鼻中性 | `50` |
| C | 两侧果肩都明显低于果蒂连接处并向下斜，形成瘦肩/收颈；同时果鼻细尖或果身显得窄紧 | `0` |
| D | 只有局部图、透视过强、果蒂两侧被遮挡或完整轮廓看不清 | 不填 |

只看到一个尖果鼻不能单独填 `S=C`；至少要与双侧瘦肩或明显收颈同向。品种本身偏长不等于瘦肩。三档对比：[../anchors/anchor-mango-shoulder-grades.jpg](../anchors/anchor-mango-shoulder-grades.jpg)。

### 2.2 `【问用户】` 轻压 `T`

提醒用户轻按果肩或果身，不用力捏，不按已有软斑。（按压位置示意：[../anchors/howto-mango-T-press.jpg](../anchors/howto-mango-T-press.jpg)）

| `T` | 可执行定义 |
|---|---|
| A | 很硬，几乎不动 |
| B | 偏硬但有弹性 |
| C | 微微软，会回弹 |
| D | 明显软但不塌，仍成形 |
| E | 局部塌陷、不回弹、发黏或出水 |
| F | 没法按/不确定 |

### 2.3 手感 × 吃法状态值

以下适用于 `C=A/B/C/D/F` 的甜熟路线：

| `T` | `E=A` 直接鲜食 | `E=B` 切块成形 | `E=C` 奶昔甜品 |
|---|---:|---:|---:|
| A 很硬 | `0` | `25` | `0` |
| B 偏硬有弹性 | `25` | `100` | `25` |
| C 微微软回弹 | `100` | `75` | `75` |
| D 明显软但不塌 | `75` | `25` | `100` |

小黄芒 `C=A` 有两个品种覆盖：`T=C + E=A` 取 `90`，`T=D + E=A` 取 `100`。这只表示软熟窗口更匹配，不承诺甜度。

青芒料理 `E=D` 使用独立状态：`T=A/B/C/D` 依次为 `100/75/25/0`。硬脆是目标，不进入甜熟路线。

### 2.4 `【条件补问】` 果蒂香气 `R`

只闻这颗果的果蒂附近。摊位混味、冷藏刚取出、包装密封或闻不准时不填。（闻的位置示意：[../anchors/howto-mango-R-smell.jpg](../anchors/howto-mango-R-smell.jpg)）

| `R` | 描述 | 甜熟路线状态值 |
|---|---|---:|
| A | 闻不准/环境混味 | 不填 |
| B | 几乎无香 | `40` |
| C | 淡淡果香 | `60` |
| D | 清楚芒果香/甜香 | `75` |
| E | 酒味、发酵味、酸腐味 | 风险否决 |

香气只占 `8`，不能单独把结果推过购买档。执行定义：分别计算含 `R` 与不含 `R`（`R` 按 `Q=0` 回中性）的目标匹配分；若含 `R` 的购买档高于不含 `R` 的档，购买档按不含 `R` 的分数落档，分数照实输出并说明受香气影响。`E=D` 青芒料理路线不使用香气加权。

### 2.5 可见风险 `V`

风险只在这里定义一次，先于任何分数执行。

| `V` | 表现 | 处理 |
|---|---|---|
| A | 未见霉腐、湿烂或扩散病斑 | 可进入评分 |
| B | 小面积干擦伤/干疤，不湿不凹 | 外观瑕疵，不扣目标匹配分 |
| C | 扩散黑斑、凹陷湿斑、明显蒂腐；或 `T=E` 的塌陷损伤 | 建议换一颗/不买，不计算完整购买分 |
| D | 发霉、湿烂、流液、深破口或污染 | 不建议买/吃，不计算分数 |
| unknown | 果蒂、异常斑或背面看不清 | 不输出完整购买结论 |

`R=E` 与 `V=D` 同级否决。颜色、香气或软度都不能抵消风险。风险形态对比：[../anchors/anchor-mango-risk-grades.jpg](../anchors/anchor-mango-risk-grades.jpg)。

## 3. 评分、特殊限制与执行

证据质量 `Q` 三档定义与收缩逻辑见 [../common.md](../common.md)：

```text
有效状态值 = 50 + Q × (状态值 - 50)

甜熟路线目标匹配分 =
55% × T有效值
+ 37% × S有效值
+ 8% × R有效值

青芒料理目标匹配分 =
70% × T有效值
+ 30% × S有效值
```

`R` 未问或闻不准时以 `Q=0` 回到中性，不从分母删除。`S` 是完整购买分的核心项，`S=D/缺失` 时只给手感与吃法的局部判断。

| 分数 | 购买解释 |
|---:|---|
| `>= 75` | 强匹配当前吃法 |
| `60-74` | 有条件匹配 |
| `45-59` | 匹配较弱，不优先 |
| `< 45` | 不匹配 |

非线性限制只保留两条：

1. `S=C` 且走甜熟路线时，完整购买分最高按 `59` 处理。后熟软化不能洗白明显瘦肩/尖鼻的采收成熟风险。
2. `C/CS` 只负责选品种状态表和置信度，不因黄、绿、红本身直接加分。

执行顺序：

1. 先检查 `V` 和 `R=E`。
2. 用明确品种或 `C/CS` 选择类型；再按 `E` 选择吃法路线。
3. 读取 `S`，取得用户轻压 `T`；缺核心项只给局部判断。
4. 临界或冲突时才补 `R`。
5. 计算目标匹配分，应用 `S=C` 上限，再结合规则适用性给置信度。

多颗排序必须使用同一吃法。先排风险，再排 `S=C` 采收风险，最后比较目标匹配分；分数接近时优先明确品种、果肩更清楚的一颗。

## 4. 输出口径

```text
结论：
- 购买建议：优先 / 有条件可买 / 不优先 / 不建议买
- 食用窗口：近期可吃 / 买回后熟 / 不适合今天 / 信息不足
- 吃法匹配：鲜食 / 切块成形 / 奶昔甜品 / 青芒料理
- 目标匹配分：满足核心输入时输出（匹配的是软硬和吃法）
- 采收成熟基础：支持 / 中性 / 有风险 / 看不清
- 关键依据：明确品种或颜色陷阱 + 果肩/果鼻 + 轻压
- 风险与置信度：说明输入缺失还是规则适用性受限
```

明确 Honey/Ataulfo、Keitt/Kent、Tommy/Haden 且输入完整时，吃法匹配最高为中等置信；金煌、台农、凯特和爱文/贵妃/澳芒/R2E2 的具体料理窗口最高为低到中。每天复查手感和风险；后熟天数和甜度别说死。
