`tools/feishu_project` 用来维护飞书问题视图导出、问题数据下载、批量推理，以及问题 case 的后处理脚本。

当前默认项目配置：
- `project_key`: `68ef617fb371dc80a10641f7`
- `user_key`: `7550145433285312514`
- `view_name`: `董颖-G1Q3`

推荐入口
- 全链路增量同步：`tools/feishu_project/sync_g1q3_issue_data.sh`
- CNCAP case 文本清单批处理：`tools/feishu_project/run_cncap_case_pipeline.sh`
- 只导出视图：`tools/feishu_project/export_feishu_view_issues.py`
- CNCAP case 清单转 synthetic issue JSON：`tools/feishu_project/build_cncap_case_issue_json.py`
- 只下载数据：`tools/feishu_project/download_issue_data.sh`
- 只跑推理：`tools/feishu_project/run_issue_data_inference.sh`
- 问题标签画像统计：`tools/feishu_project/run_issue_tag_profile.sh`
- 发布问题标签画像内网页面：`tools/feishu_project/publish_issue_tag_profile_site.sh`
- 启动轻量静态服务：`tools/feishu_project/serve_issue_tag_profile_site.sh`
- 跟踪与后处理：`tools/feishu_project/run_issue_data_tracking.sh`

目录约定
- 此目录优先放源码和轻量文档，不再推荐把运行产物直接落在这里。
- 默认运行产物应写到 `/data1/dongying/Mono3d/*/feishu_project/` 下的 `exports/`、`downloaded_issue_data/`、`inference_issue_data/`、`reports/` 等目录。
- `__pycache__/`、HTML 报告、一次性导出 JSON/Markdown 结果属于运行产物或分析产物，除非明确要做样例留存，否则不要继续堆在 `tools/feishu_project/` 根目录。

维护原则
- 通用脚本不要保留单个 case、单个 issue 的硬编码默认值。
- G1Q3 包装脚本优先读取同步目录下的最新导出结果，不依赖仓库内静态 JSON。
- 复杂逻辑尽量收敛在 Python 主脚本里，Shell 脚本只保留参数拼装和流程编排。

常用命令
```bash
# 查看 fp 帮助
fp --help

# 更新 fp
fp selfupdate

# 增量同步 G1Q3 问题并执行下载/推理/跟踪
bash tools/feishu_project/sync_g1q3_issue_data.sh

# 只下载指定 issue
bash tools/feishu_project/download_issue_data.sh --issue-id 6965833173

# 只对指定 issue 跑推理
bash tools/feishu_project/run_issue_data_inference.sh --issue-id 6965833173

# 基于最新 G1Q3 导出生成目标/问题标签画像
bash tools/feishu_project/run_issue_tag_profile.sh

# 生成标签画像并发布到静态站点目录
bash tools/feishu_project/publish_issue_tag_profile_site.sh

# 无 Nginx 时临时启动内网静态服务
bash tools/feishu_project/serve_issue_tag_profile_site.sh start

# 指定内网访问地址。该 IP 必须是当前机器网卡 IP，或由反向代理/内网服务器承载。
INTRANET_HOST=192.168.2.169 bash tools/feishu_project/publish_issue_tag_profile_site.sh
INTRANET_HOST=192.168.2.169 bash tools/feishu_project/serve_issue_tag_profile_site.sh restart
```

内网页面发布
- 默认发布路径：`/data1/dongying/Mono3d/G1Q3/feishu_project/site/issue_tag_profile/index.html`
- 默认访问路径：`http://<内网机器IP>:8088/issue_tag_profile/`
- Nginx 示例配置：`tools/feishu_project/nginx_issue_tag_profile.conf.example`
- 临时静态服务脚本：`tools/feishu_project/serve_issue_tag_profile_site.sh`
- 可用 `INTRANET_HOST=<内网IP>` 或 `PUBLIC_HOST=<内网IP>` 指定页面里展示的访问地址；如果该 IP 不在当前机器网卡上，脚本会提示需要部署到对应内网机器或配置反向代理。
