# 2026-05-08 工作日志

## 凭证审计与修复

- 全面审计 xiaokui 工作区所有脚本的飞书凭证引用，修复 10+ 处 `xiaoyan` → `xiaokui` 错误凭证
- 修复 crontab 分组错误：4 个 xiaokui 任务被误放在 xiaoyan 注释块下
- 核心文件：`skills/feishu-feedback-sync/scripts/sync_feishu_feedback.py`、`scripts/sync_wechat_feedback_minutely.sh/py`、`scripts/sync_feedback_minutely.sh`、`scripts/sync_group_to_sheet.py`、`scripts/daily_feedback_report.sh`

## 对话链排序 bug 修复

- **根因**：`try_merge_orphan_clusters()` 中 `big_cluster_ids.remove(best_cid)` 行导致大簇吸收一个孤儿后被移除候选列表，后续孤儿无法合并
- **影响**：孤立消息（同发送者连续发言、无引用关系）被排到对话链末尾，对话链不完整
- **修复**：删除该行，大簇可吸收多个孤儿
- **验证**：5月8日李应瑛 "132hotfix的测试包打不开" → 图片 → "卡在如上界面" 三条消息现在正确按时间排列

## 问题描述症状关键词扩展

扩展了 `generate_problem_description()` 的症状检测模式：

| 新增模式 | 关键词 | 描述生成 |
|---------|--------|---------|
| 打不开/无法进入 | 打不开、无法进入、进不去、启动失败 | 提取目标（测试包/APP）+ 版本号 |
| 卡在界面 | 卡在、卡住、停在.*界面、无响应 | 提取卡住的具体界面名 |
| 版本号异常 | 版本.*不对、还是.*版本、显示.*版本 | 提取新旧版本号对比 |
| 测试包/热更 | 测试包、hotfix、热更.*失败、打包.*不了 | 测试包/热更包无法获取 |

同时修复：
- location_str 构建时过滤 "未知" 占位符
- 兜底文本清洗：去除 @提及、URL、emoji（[流泪]等）、在句中标点处智能截断

## 对话信息输出逻辑说明（给刘新玉）

汇总文档中"对话信息"列：
- 消息顺序 = sort_threads() 排序结果（根消息按时间 + 递归展开子回复）
- 🚩 报告 = cluster_msgs[0] 的发送者首次出现
- ✅ = cluster_msgs[-1] 的发送者 + 最后一条
- 文本截断 80 字符、媒体追加 📎 链接、纯图显示 [图片]
