# 深挖流程改进 Backlog

Status: active
Date: 2026-06-09
Owner: validation-analyst
Review cadence: weekly

本文件用于沉淀每轮报告和 subagent 采集暴露出来的流程问题。每次深挖结束必须新增或关闭改进项，避免研究流程停留在一次性报告。

| ID | Date | 来源 | 问题 | 影响 | 改进动作 | Owner | 状态 | Review after | Close criteria |
|---|---|---|---|---|---|---|---|---|---|
| DD-001 | 2026-06-09 | VibeShort/Dola/AI Cleaner HTML 生成 | HTML 生成脚本仍有部分 report config 写在脚本中 | 后续批量报告难以复用和审查 | 把报告元数据迁移到每个机会目录的 `report.json`，脚本只负责渲染 | validation-analyst | open | 2026-06-16 | 新增 App 可不改 Python 代码生成 HTML |
| DD-002 | 2026-06-09 | AI Cleaner TikTok 截图 | 部分广告页 `domcontentloaded` 超时，需要 fallback | 截图容易变占位图，影响报告可信度 | 截图器保留多加载策略、错误原因和 blocked 字段 | creative-analyst | in_progress | 2026-06-16 | 每张截图都有 capture status 和 source URL |
| DD-003 | 2026-06-09 | 用户反馈 | Markdown 不够承载复杂报告 | 决策阅读成本高，图表和截图弱 | 复杂报告默认 HTML，Markdown 只保留同步摘要 | validation-analyst | done | 2026-06-16 | `docs/report-output-guidelines.md` 和 README 已写明 |
| DD-004 | 2026-06-09 | 本轮新增候选 | subagent 输出容易风格不统一 | 难以合并进 evidence.csv 和 HTML | 固化 subagent evidence ledger 字段和研究问题模板 | validation-analyst | open | 2026-06-16 | subagent 输出能半自动转成 evidence.csv |
| DD-005 | 2026-06-09 | 高级 PM/用户研究质量门 | 只看下载/广告会漏掉 JTBD、替代方案、首次价值和退款风险 | promote/kill 判断偏浅 | 在模板中加入 JTBD、首次价值、替代方案、trust/paywall、MVP gate | app-dissector | in_progress | 2026-06-16 | 每份 deep dive 都回答高级研究问题 |
| DD-006 | 2026-06-09 | AI Art Magic / AI Photo Lab / Refoto | 开发者、legal entity、support、privacy 主体和 APK 镜像可能不一致 | identity lock 可能混入克隆或旧主体 | 新增 `identity_conflict` 检查字段，报告中标红主体不一致 | validation-analyst | open | 2026-06-16 | brief 和 HTML 能展示 identity conflict |
| DD-007 | 2026-06-09 | AI 图片工具 | 商店截图里的 hook 没有 OCR 结构化 | 纯文本商店页会漏掉核心素材承诺 | 增加 store screenshot OCR lane，输出 hook/promise/source image | creative-analyst | open | 2026-06-16 | 每个 App 至少有截图 hook 表或 blocked 原因 |
| DD-008 | 2026-06-09 | AI 图片工具 / Sherlock | 广告库采集缺少统一记录 query、结果数和 blocked 原因 | 无法判断 paid creative 是真的没有还是采集失败 | 建立 ad-library lane：Meta、TikTok、Google、DataEye 查询日志和截图 manifest | creative-analyst | open | 2026-06-16 | 每份报告有 ad evidence status 和 query manifest |
| DD-009 | 2026-06-09 | AI Photo Lab | 评论样本不足时容易强行聚类 | 用户研究会变成推断伪装事实 | 增加最小评论样本阈值；低样本直接 `blocked` | validation-analyst | open | 2026-06-16 | review cluster 自动包含 sample_count 和 blocked 状态 |
| DD-010 | 2026-06-09 | AI 图片工具 | Store Data Safety 与隐私政策可能冲突 | 云端照片处理和删除机制风险容易漏 | 增加 privacy-vs-data-safety 对照表 | compliance-reviewer | open | 2026-06-16 | AI/photo/face 类报告必须有对照表 |
| DD-011 | 2026-06-09 | Sherlock | 高风险产品可能出现 core feature 应 kill、safe wedge 可 promote 的混合判断 | 单一 verdict 容易误导后续开发 | 模板强制区分 `core_feature_kill` 与 `safe_wedge_promote` | compliance-reviewer | open | 2026-06-16 | 高风险报告能同时记录核心能力和安全替代 wedge |
| DD-012 | 2026-06-09 | Sherlock | APK/SEO 站点容易被误当官方 Android | identity lock 会污染 | 单列 `unverified_android_sources`，不得混入官方身份 | validation-analyst | open | 2026-06-16 | Sherlock 类报告具备官方 Android 状态字段 |
| DD-013 | 2026-06-09 | Sherlock | face-search 类缺少固定生物识别处理链字段 | 合规审查不稳定 | 增加 `third_party_processor`、`biometric_risk_class`、`abuse_scenarios` 字段 | compliance-reviewer | open | 2026-06-16 | face-search 模板包含这些字段并进入 kill gate |
| DD-014 | 2026-06-09 | Cleaner Guru / PDF Reader | 同名、多地区 title、旧标题、package/bundle 容易混淆 | 证据可能落到错误 App | 先做 title normalization + package/bundle lock，再进入广告/评论采集 | validation-analyst | open | 2026-06-16 | 初始化器支持 title aliases 和 locked ids |
| DD-015 | 2026-06-09 | Cleaner Guru / PDF Reader | 第三方来源状态不统一：verified_3p、partial、no_public_result | 报告容易把 ad-spy 或估算当官方事实 | 扩展 evidence status enum 和 source confidence 说明 | validation-analyst | open | 2026-06-16 | validate_config 或测试覆盖新 status |
| DD-016 | 2026-06-09 | Utility subscription | support website、privacy template、data deletion 没有进入评分 | 工具订阅信任风险被低估 | 增加 support/privacy/data deletion 合规评分项 | compliance-reviewer | open | 2026-06-16 | utility 报告有 support-quality 和 deletion 字段 |
| DD-017 | 2026-06-09 | Opera / NordVPN | 价格页 locale/currency/renewal price 容易漏 | 订阅套餐判断失真 | 价格证据强制记录 locale、currency、headline price、billed upfront、renewal price | validation-analyst | open | 2026-06-16 | pricing table 模板包含这些列 |
| DD-018 | 2026-06-09 | Opera / NordVPN | 隐私和安全 claim 没拆 audit scope/caveat | 容易把 marketing claim 当事实 | 每条 claim 拆成 claim、evidence、audit_scope、caveat | compliance-reviewer | open | 2026-06-16 | HTML 报告有 claim risk 表 |
| DD-019 | 2026-06-09 | Opera / NordVPN | 官方商店高量样本和 Trustpilot/Reddit 高负反馈样本混读 | 口碑结论可能偏差 | 评论源分层：official store、community、trust/review site，并各自标 sample bias | validation-analyst | open | 2026-06-16 | review cluster 包含 source_tier 和 sample_bias |
| DD-020 | 2026-06-10 | 数据采集能力审计 | 直接 `python3` 跑部分 source 脚本会因为系统 Python 缺依赖失败 | smoke 结果和文档命令容易不一致 | 统一入口为 `.venv/bin/python` 或提供 wrapper/make target，并在 docs 中改掉长期命令 | vendor-integrator | open | 2026-06-17 | Reddit/YouTube/DataEye smoke 命令不依赖系统 Python |
| DD-021 | 2026-06-10 | Store detail smoke | Apple store detail 能拿截图但 `privacy_url` 可能为空 | privacy/data-safety 对照缺上游链接 | 增加 privacy/support/terms resolver：store detail 为空时从 evidence、官网和商店页面补链 | compliance-reviewer | open | 2026-06-17 | Cleaner Guru 能自动补 privacy URL 或记录 blocked reason |
| DD-022 | 2026-06-10 | Store review smoke | 商店评论能采，但没有自动回填 `review-clusters.csv` | 用户研究仍依赖人工总结 | 复用 `summarize_reviews()` 输出 cluster、sample_count、negative_count、representative_reviews | validation-analyst | done | 2026-06-17 | 11 个 deep-dive 已用 930 条 store review 样本回填 review cluster |
| DD-023 | 2026-06-10 | Store screenshots | Store detail 已能拿 screenshot URL，但 OCR 表仍全 pending | 广告承诺和商店 hook 无法结构化比较 | 实现 screenshot downloader + OCR/VL adapter，写入 `assets/store-screenshot-ocr.csv` | creative-analyst | done | 2026-06-17 | 本轮已处理 120 张截图，99 complete / 20 empty / 1 failed；Sherlock blocked reason 已记录 |
| DD-024 | 2026-06-10 | Pricing / Paywall | `pricing-matrix.csv` 无真实 IAP/trial/renewal/refund 上游 | 订阅工具机会无法判断退款和 LTV 风险 | 扩展 pricing matrix 字段并允许人工/浏览器 capture 写入 | validation-analyst | in_progress | 2026-06-17 | 已回填 47 条 store price / IAP range；下一步补 SKU、trial、billed upfront、cancel/refund route |
| DD-025 | 2026-06-10 | DataEye 分槽 | default DataEye cookie slot 为空，但 `adx_game` / `adx_short_drama` 可用 | 错用 default 会导致误判 DataEye 不可用 | 所有 DataEye 命令必须显式传 `--account-id`，并在计划中记录 auth_slot | vendor-integrator | done | 2026-06-17 | 本轮 DataEye manifest 已记录 auth_slot；`adx_short_drama` playlet 成功，revenue 403 已记录 |
| DD-026 | 2026-06-10 | Research 回填 | store/review/DataEye 输出和单个 deep-dive 目录尚未自动打通 | 采到数据后仍需要人工复制进报告 | 新增 research ingest 命令：按 opportunity id 读取 JSONL，回填 evidence/queue/template | validation-analyst | done | 2026-06-17 | `scripts/radar/ingest_research_collections.py` 已回填 11 个 deep-dive |
| DD-027 | 2026-06-10 | High value collection | 11 个 research 的 high_value_collection 55 项里 48 项 pending | 研究质量主要瓶颈在真实采集，不在模板 | 下轮优先关闭 review、screenshot、pricing、privacy、ad_library 五类 pending | validation-analyst | in_progress | 2026-06-17 | 本轮变为 28 done / 15 partial / 10 pending / 2 blocked；继续关闭 VL、privacy、ad_library |
| DD-028 | 2026-06-10 | OCR 回填顺序 | 重新跑 ingest 会覆盖已 OCR 的截图文本和人工列 | 真实采集结果会被模板/详情回填误清空 | `write_screenshot_manifest` 按 `image_url` 合并并保留 OCR/人工列 | validation-analyst | done | 2026-06-17 | ingest 后 `ocr_store_screenshots.py --sync-only` 仍保持 99 complete / 20 empty / 1 failed |
| DD-029 | 2026-06-10 | Reddit query | anonymous Reddit search 403；authenticated search 可用但 broad query 低精度 | 社区信号容易误当目标 App 评论 | 支持 `--query`、`--app-key`，回填 `community-reddit-samples.csv`，增加 relevance scorer | validation-analyst | done | 2026-06-17 | 275 条 query leads 已打分：53 high / 222 low；低相关样本自动 `needs_archive` |
| DD-030 | 2026-06-10 | OCR/VL | Tesseract 对视觉化商店图和剧集图容易 empty 或误读 | 素材 hook、before/after、价格承诺仍可能漏 | 增加增强 OCR / 可选 VL fallback，只处理 `ocr_empty` / `ocr_failed` 样本并保留原图路径 | creative-analyst | done | 2026-06-17 | 本轮新增 12 条 `ocr_enhanced_complete`；11 份报告 OCR/VL 可用 111 条，失败样本进入 DD-035 |
| DD-031 | 2026-06-10 | Pricing 深采 | store detail 只能拿 install price / IAP range，不能拿 SKU 级周期和 trial | LTV、退款风险和 paywall 判断仍偏粗 | 新增公开 trust/pricing text resolver，并保留 App 内 paywall / store SKU 深采 adapter backlog | validation-analyst | in_progress | 2026-06-17 | pricing matrix 已扩展到 74 行文本/商店线索；SKU、trial、renewal、cancel path 仍待 DD-036 |
| DD-032 | 2026-06-10 | HTML 采集面板 | 报告只展示 brief/evidence，真实采集结果分散在 CSV/JSON | 决策阅读成本高，容易漏掉 blocked/partial 状态 | `report.html` / `decision-pack.html` 展示 collection summary、pricing、OCR/VL、Reddit relevance、privacy/support、ad creative | validation-analyst | done | 2026-06-17 | 11/11 HTML 已重新渲染，真实采集面板可读 |
| DD-033 | 2026-06-10 | Privacy/support/terms | store detail privacy URL 缺失或不够解释退款/删除风险 | 合规和退款风险判断偏浅 | 增加公开 URL resolver，抓 privacy/support/terms/refund/delete 页面并抽取 processor、删除、退款、取消线索 | compliance-reviewer | done | 2026-06-17 | 本轮 33 个 URL，28 fetched，5 blocked；生成 `support-refund-quality.csv` |
| DD-034 | 2026-06-10 | DataEye creative | DataEye playlet feed 采到但没有素材 digest 和广告库状态回填 | VibeShort 素材学习无法进入报告 | 增加 `ad-creative-signals.csv`，区分 direct/related 和 lane benchmark，并更新 ad library query/evidence | creative-analyst | done | 2026-06-17 | VibeShort 14 条素材信号；非匹配机会写 blocked/no match |
| DD-035 | 2026-06-10 | OCR/VL residual | 9 条截图仍是 `vl_failed`，Sherlock 缺 screenshot URL | 商店截图 hook 仍不完整 | 对失败样本使用更强 VL、浏览器截图或人工标注；Sherlock 补官方截图来源 | creative-analyst | open | 2026-06-17 | AI Art Magic / Opera 失败样本清零或有明确 blocked reason |
| DD-036 | 2026-06-10 | App 内 paywall SKU | 公开网页和 store detail 不能还原真实 paywall | 订阅复刻、退款风险、LTV 评估仍缺关键字段 | 建立真机/浏览器 paywall capture：SKU、period、trial、默认选中、关闭入口、cancel/refund path | validation-analyst | open | 2026-06-17 | Cleaner Guru、AI Cleaner、Refoto、VibeShort 至少各一份 SKU 级 matrix |
| DD-037 | 2026-06-10 | 外部广告库 | 非短剧工具/AI 图像类 DataEye 无素材匹配 | 素材承诺和投放 hook 缺证据 | 接 Meta Ad Library、TikTok Creative Center、Google Ads Transparency Center 或账号化 ad-spy | creative-analyst | in_progress | 2026-06-17 | Cleaner Guru / PDF Reader / AI 图像类至少各有 query manifest + 结果状态 |
| DD-038 | 2026-06-10 | 健康/习惯/垂直工具批次 | `source_hints` 能锁商店链接，但没有结构化 `locked_store_ids`、`identity_note`、`comparable_platform` 字段 | Plant App、Remote for LG、GPS Fields 这类同名或跨端主体容易在后续采集中混淆 | 批次 schema 增加 locked ids、identity risk、comparable 标记；ingest 直接读取结构化字段而不是解析 source_hints | validation-analyst | done | 2026-06-17 | 已新增 `identity_lock` / `identity-lock.json`；store target 优先读取结构化 identity，旧 URL 解析保留兜底 |
| DD-039 | 2026-06-10 | OCR hook 归纳 | OCR 已能完成，但商店截图里的符号、坐标、UI 文本会进入主结论 | 报告阅读像原始 OCR dump，影响 PM 判断 | 增加 `hook_summary` / `claim_risk` 人工或 VL 复核列，HTML 同时展示原始 OCR 和归纳 hook | creative-analyst | open | 2026-06-17 | report.html 的关键发现使用归纳 hook，OCR 表保留原文证据 |
| DD-040 | 2026-06-10 | 健康/儿童/食品合规 | 睡眠、儿童发展、食品扫描的 claim 风险差异很大，目前主要靠人工描述 | promote/kill gate 不够稳定 | 增加 vertical claim taxonomy：sleep/wellness、child data、nutrition/food safety、location proof、device control | compliance-reviewer | open | 2026-06-17 | 对应垂类报告自动生成 claim risk checklist 和 forbidden claims |
| DD-041 | 2026-06-10 | Store metric normalization | App Store 与 Google Play collector 字段语义不同，`ratings`、`reviews`、localized review count 容易混读 | 市场规模和口碑结论可能失真 | 统一 normalized metrics：rating_score、rating_count_total、review_count_locale、install_bucket、updated_at、source_platform | validation-analyst | open | 2026-06-17 | listing table 不再需要人工解释 collector raw 字段 |
| DD-042 | 2026-06-10 | HTML 截图可读性 | 真实 OCR 图片此前只在 CSV path 里，HTML 无缩略图 | 用户复核素材承诺成本高 | `html_report.py` 新增 screenshot gallery，优先展示本地 OCR 下载图并回退远端图 | validation-analyst | done | 2026-06-17 | 本轮 7 份报告 HTML 能直接展示商店截图缩略图 |
| DD-043 | 2026-06-10 | 报告正文生成 | 本轮正文仍由一次性脚本和人工判断生成，尚未沉淀为参数化命令 | 后续多 App 批量报告会重复劳动 | 新增 `build_deep_dive_briefs.py`：读取 collection-summary、review clusters、OCR、pricing、trust，并用每 App config 生成中文正文 | validation-analyst | open | 2026-06-17 | 下一轮可通过 batch + config 一键生成 80% 正文，再人工复核 |
| DD-044 | 2026-06-10 | 报告阅读体验 | 模块覆盖、四大类执行队列、Research Queue、流程改进记录在 HTML 中重复出现 | 决策页啰嗦，用户难以判断哪些是结论、哪些是过程 | 合并为“决策摘要 + 还缺什么”，完整质量门和队列折叠；流程改进集中到 backlog | validation-analyst | done | 2026-06-17 | 本轮 7 份 HTML 不再默认展开重复队列和模块表 |
| DD-045 | 2026-06-10 | 证据/判断/建议边界 | “初步路线”“信任/合规”等话术不清，容易误读为竞品事实 | 报告可执行性下降，观察和建议混在一起 | 增加“怎么读这份报告”图例，并把正文话术改成观察/我们的判断/我们的建议 | validation-analyst | done | 2026-06-17 | 报告顶部解释四类标签，关键发现使用明确前缀 |
| DD-046 | 2026-06-10 | 采集口径透明度 | 截图 URL 数、OCR 选择、评论采样、pricing matrix 来源不透明 | 用户无法判断数据可信度和局限 | 新增 `research-methodology.md`，HTML 采集面板加入采集口径说明，原始矩阵默认折叠 | validation-analyst | done | 2026-06-17 | 每份 HTML 有采集口径和方法论链接 |
| DD-047 | 2026-06-10 | 评论分层采样 | 当前 80-120 条评论样本足够一阶聚类，但未按时间/星级/平台/版本系统分层 | 高量 App 的痛点和新旧版本问题会混在一起 | 评论采集增加 stratified sampling 配置和样本分布表 | validation-analyst | open | 2026-06-17 | 高优先级报告展示平台、国家、时间窗、星级、版本分布 |
| DD-048 | 2026-06-10 | Radar dashboard -> deep dive | dashboard 触发机会时如果只传 title，后续广告/评论/商店采集仍会依赖弱匹配 | 同名 App、可比竞品和 source 记录会混进同一 research | 创建 deep dive 的 API/前端表单传 `identity_seed`：package_id、app_store_id、bundle_id、store_url、source_record_id、relationship、confidence | validation-analyst | open | 2026-06-17 | dashboard 触发的 batch 能直接生成 `identity-lock.json`，无 id 的机会标 `unverified_candidate` |
| DD-049 | 2026-06-10 | 广告库真实素材 | `ad-library-queries.csv` 容易被误读成真实广告结果；非短剧 App 仍缺精准素材搜索 | 报告无法判断素材承诺和投放强度 | 广告库分清 query manifest 与 `ad-creative-signals.csv`；接 DataEye 通用 creative search，再补 Meta/TikTok/Google Ads 状态 | creative-analyst | in_progress | 2026-06-17 | 每个 high-priority App 至少有 direct/related/no_public_result/blocked 之一，不再只停留在 pending query |
| DD-050 | 2026-06-10 | DataEye creative_search 实跑 | `creative_search` 失败原因曾混在一起：cookie 过期、账号槽权限、参数不适配、真实无结果都可能被写成 blocked | 通用素材搜索无法回填 direct/no_public_result，容易把账号问题误读成市场无素材 | 已增加 DataEye auth preflight/refresh、`searchKey/searchType/matchType` 定向参数、manifest run log 和 report ingest；`adx_game` 可跑通 generic creative，`adx_short_drama` 通用素材 403 时不再反复刷新 | vendor-integrator | done | 2026-06-17 | BetterSleep 已生成 `ad-library-dataeye-runs.csv`：5 条授权成功 0 结果、1 条参数错误；报告自动写 `no_public_result` |
