# 工作流

## 分支 A：线上候选直接作为数据样本

适用表达：

- “把筛选出的数据变成样本”
- “拿线上数据做评测集”
- “保留这批线上 case”
- “导出候选样本”

流程：

1. 分析需求，确认目标标签和复杂度。
2. 设计 ELK 挖掘策略。
3. 用 `elk_search_cases.py` 拉候选。
4. 用 `elk_join_request_logs.py` 补全 main/pre_processing 字段。
5. 展示小批候选给用户 review。
6. 用户确认后，用 `build_dataset_draft.py` 转 dataset draft。
7. 用 `product-data` 脚本 normalize、validate、export。

这个分支不生成新 query。

## 分支 B：基于线上问题补充生成数据

适用表达：

- “基于这些 badcase 再生成一批”
- “扩写类似 case”
- “构造训练数据”

流程：

1. 先完成分支 A 的线上问题定位和 review。
2. 总结线上错误模式、边界和负例。
3. 切到 `product-data` 的 generation goal / generation plan。
4. 用户确认计划后再生成新数据。

## review 展示建议

每条候选优先展示：

```text
request_id:
query:
planning_result:
main.domain / main.func:
candidate_domains:
session_id / device_id:
tts:
```

不要默认展示完整 prompt。prompt 很长时只展示命中片段。

