# 2026-05-14 Agent健身房复盘
一句话概括:**这次发现的不是已经自动修复的问题,而是 5 类以后会反复浪费时间的操作摩擦 / 工具缺口。**
| 优先级 | 发现的问题 | 真实含义 | 计划怎么解决 |
| --- | --- | --- | --- |
| 1 | 批量打标遇到限流时靠人工观察和补跑 | 5,000 条主跑后 clean 失败 1,085 条,靠人判断 429、降并发、补失败行;一旦误覆盖成功行,交付会被拖慢。 | 加 `ark_retry_diagnose.py`:读 input/raw/clean/log,自动归因 429/timeout/schema,生成 only-errors retry plan 和 finalize 验收报告。 |
| 2 | 复核页缺少交付前字段契约 smoke | 文件行数能过,但 payload/JS/CSV 字段错配会让页面总数正确、汇总为空或全 0,直到用户截图反馈才暴露。 | 加 `smoke_review_html_contract.py`:解析 HTML payload,按 CSV 复算 groupby,校验字段契约、筛选枚举和关键表格非空。 |
| 3 | 小样本诉求拆解页每次临时拼 | 154 个 case 的归桶、分母、代表 case、对话展示是高频分析动作;手写模板容易退化成整段原文,复核效率低。 | 加 `build_case_subset_review_page.py`:输入 CSV/XLSX、筛选表达式、字段映射,一次产出明细 CSV、汇总 CSV 和对话式 HTML。 |
| 4 | 生图画布的视觉验收还散在临时脚本 | 中文化、粘贴、key 读取、画幅拟合、原图比例都靠临时截图验证;后续 UI 改动容易出现静默回退。 | 给 `image-canvas-lab` 加 `npm run qa:visual`:用系统 Chrome 截图、模拟粘贴、校验中文文案、模型白名单、比例和 env preflight。 |
| 5 | 内部看板到 Aeolus 的分析路径没有沉淀 | SSO 登录态、看板入口、字段口径、维度粒度和 COUNT 口径反复解释;用户要的是可复用的拖拽/SQL 思维框架。 | 沉淀 `aeolus_cpo_ai_analysis.md`、workspace skill 和 SQL 模板,把维度/指标/筛选翻译成可复核查询。 |
## 下一步
| 顺序 | 先做什么 | 为什么 |
| --- | --- | --- |
| 1 | 加 `smoke_review_html_contract.py`:解析 HTML payload,按 CSV 复算 groupby,校验字段契约、筛选枚举和关键表格非空。 | 它直接挡在用户可见交付物前面,能最快减少“页面打开才发现错”的返工。 |
| 2 | 加 `ark_retry_diagnose.py`:读 input/raw/clean/log,自动归因 429/timeout/schema,生成 only-errors retry plan 和 finalize 验收报告。 | 长跑 LLM 打标成本高,先把失败归因和补跑边界做成机器判断。 |
| 3 | 加 `build_case_subset_review_page.py`:输入 CSV/XLSX、筛选表达式、字段映射,一次产出明细 CSV、汇总 CSV 和对话式 HTML。 | 商品域分析会反复抽 100-500 个 case 做细看,标准页能复用。 |
| 4 | 给 `image-canvas-lab` 加 `npm run qa:visual`:用系统 Chrome 截图、模拟粘贴、校验中文文案、模型白名单、比例和 env preflight。 | 画布产品正在快速迭代,视觉 smoke 先固定住核心体验。 |
| 5 | 沉淀 `aeolus_cpo_ai_analysis.md`、workspace skill 和 SQL 模板,把维度/指标/筛选翻译成可复核查询。 | 这是工作流沉淀,价值高但不直接阻塞昨天的交付物。 |
## 一、候选详情
### 1.1 Ark批量打标限流补跑诊断器
- 类型:`diagnostic-tool`;风险:`medium`
- 摘要:这个主题有效,不是噪音。片段里出现了完整的批量 Ark 打标链路:先 sample 校验 schema,再高并发全量跑,最后发现 clean 后 1,085 条失败并需要 only-errors 低并发补跑,说明这里存在可复用的诊断和补跑工具需求。工具价值在于把“等进度、看失败率、手工决定补跑”固化为可审计流程,避免重复请求、漏补和误覆盖成功结果。
- 建议改动:新增工具入口:在 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/tools/ark_retry_diagnose.py` 增加 CLI,支持 `diagnose`、`retry-plan`、`verify-retry` 三个子命令;典型调用为 `python tools/ark_retry_diagnose.py diagnose --run-dir <run_dir> --input <sample_or_full.csv> --raw <raw.jsonl> --clean <clean.csv> --log <runner.log>`。;明确输入来源:读取本次抽样/全量输入表中的唯一 session_id、Ark raw JSONL、clean 后结果表、runner stdout/log;必要时兼容项目脚本产物目录下的 `raw/clean/audit` 命名,自动识别 `session_id`、`status`、`error_type`、`label`、`raw_response` 字段。
- 示例:`out/examples/ark-tpm-retry-runner.md`
### 2.1 复核页字段契约与口径校验器
- 类型:`diagnostic-tool`;风险:`low`
- 摘要:这是一个高价值诊断工具主题,不是噪音。片段显示同一条产物链路里既发生过明细列裁剪漏字段,也发生过 payload 汇总字段与复核页 JS 读取字段不一致,最终导致页面行名为空、动态重算全为 0;这类问题适合沉淀成复核 HTML 生成后的契约 smoke test。
- 建议改动:工具入口:在商品领域意图体系迭代项目中新增 `scripts/smoke_review_html_contract.py`,并在 `finalize` 生成复核 HTML 后自动调用;也支持手动运行 `python scripts/smoke_review_html_contract.py --html <review.html> --csv <detail.csv> --schema v31_user_intent`。;输入来源:读取生成后的复核 HTML 内嵌 payload、对应明细 CSV、可选 schema 配置文件 `config/review_html_contracts/v31_user_intent.json`。schema 明确声明页面 JS 需要的维度字段、payload summary key、筛选枚举字段、行数口径和允许的兜底标签。
- 示例:`out/examples/review-html-contract-smoke.md`
### 3.1 小样本诉求拆解页生成器
- 类型:`tool-upgrade`;风险:`low`
- 摘要:这个主题有效,片段展示了一个明确且可复用的工作流:用户圈定一个小样本子集后,需要快速重归桶、统计分布、生成可复核 HTML 和明细/汇总 CSV。过程中还暴露了页面可读性问题,说明它不是单纯数据跑数,而是需要标准化的子集复核页面生成器。
- 建议改动:新增通用脚本 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/tools/build_case_subset_review_page.py`:输入为 CSV/XLSX 路径、筛选表达式或 case_id 列表、用户原文/摘要/解决状态字段映射、可选已打标字段;输出子集明细 CSV、诉求汇总 CSV 和可筛选 HTML。;新增 HTML 模板 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/templates/case_subset_review_page.html`:固定左侧诉求汇总、右侧 case 明细、分组筛选、关键词搜索、解决状态筛选、代表 case 标记、user/agent 对话气泡渲染,并保留 raw_text 折叠兜底。
- 示例:`out/examples/case-subset-review-page-builder.md`
### 4.1 生图画布视觉验收套件
- 类型:`diagnostic-tool`;风险:`low`
- 摘要:这个主题有价值:片段里已经出现一个以 tldraw 画布为核心的 image generation 工作流,同时多次靠 Playwright/Chrome 截图和粘贴模拟做验收。问题不是单次 UI 修复,而是每次改生图画布都需要验证中文 UI、参考图粘贴、模型下拉、运行节点、metadata 和 env/key 链路,适合沉淀成一键视觉 QA 工具。
- 建议改动:在 /Users/bytedance/Documents/product-bu/20-products/image-canvas-lab/canvas-app 增加 `npm run qa:visual` 工具入口,落到 `scripts/visual-qa.ts`;输入来源包括 dev server URL、`50-ops/fixtures/paste-image.png`、模型白名单配置、中文文案断言表和 `~/.codex/secret.env` 的变量名存在性;核心检查步骤为启动/探测页面、用系统 Chrome channel 截图、模拟 Cmd+V 粘贴图片、读取画布节点数和右侧面板状态、检查模型下拉和关键中文文案、保存截图与 JSON 报告;成功信号是截图非空、中文断言通过、粘贴后 reference image card 增 1、模型列表只含预期模型、env preflight 只报变量名不泄露 key;失败信号是页面不可达、canvas 空白、文案回退英文、粘贴无节点、模型异常或缺 key;建议落地路径是先作为 app 内 dev 脚本和 PR 验收命令,再沉淀到 Night Gym 的通用视觉 QA checklist。;在 `50-ops/smoke-*/` 旁新增稳定产物目录 `50-ops/visual-qa/latest/`,每次保存 `home.png`、`after-paste.png`、`report.json`、`console.log`,并在失败时输出最小复现命令,避免只在对话里贴临时截图。
- 示例:`out/examples/image-canvas-visual-qa-kit.md`
### 5.1 内部看板到 Aeolus 的聚合分析手册
- 类型:`workflow-pattern`;风险:`medium`
- 摘要:这个主题有效,不是噪音。片段显示用户从内部 CPO-AI 看板追到 Aeolus 数据集分析页,过程中需要处理登录态、业务口径映射、图表配置翻译成 SQL、以及拖拽维度导致聚合失效的问题;这些正好构成一套可复用的内部看板分析 playbook。
- 建议改动:新增 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/playbooks/aeolus_cpo_ai_analysis.md`:沉淀从内部看板进入 Aeolus 的标准路径、登录态 fallback、源数据链接识别、业务口径映射、图表配置到 SQL 的翻译模板。;新增 workspace skill `/Users/bytedance/Documents/job-bu/.agents/skills/aeolus-analysis/SKILL.md`:触发词包含 Aeolus、内部看板、制表逻辑、拖拽统计、tool 调用次数;要求先确认入口页面和数据集,再记录维度、指标、筛选、分母、日期窗口。
- 示例:`out/examples/aeolus-analysis-playbook.md`
## 二、证据详情
### 1.2 Ark批量打标限流补跑诊断器
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:sample 结果可用:80/80 成功,非商品域 41 条,商品域 39 条;标签没有明显跑偏,解决状态也能抽出来。全量我会用 64 并发跑。
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:全量正在跑,前 150 条吞吐从 66/min 提到约 100/min,说明并发已经打开。按这个速度还要几十分钟,我会持续看失败率。
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:进度到 1,300/5,000,吞吐稳定在约 168/min。当前还没有看到脚本层异常,等全量结束后我会先做 clean 去重和 error 统计。
### 2.2 复核页字段契约与口径校验器
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:字段里已有 `二级分类/三级分类/四级分类/标签层级`。我会把人工样本做成同样的层级字段,同时保留人工客服原声。
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:finalize 生成 HTML 时发现我在明细列裁剪里漏保留 `昨日生命周期状态/昨日二级意图/昨日三级意图`,而复核页模板会用这几个字段做分组。
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:My request for Codex: 这边都是空啊
### 3.2 小样本诉求拆解页生成器
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:这个里面的154个case,你帮我细看一下,主要有哪些诉求
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:可以,我会把这 154 条单独做成一个可筛选 HTML:左侧是诉求拆分汇总,右侧是 case 明细和原文,默认只看这个“图片素材相关”子集。
- `019e24b2-8277-7681-9618-723a958c8b12` `~/Documents/job-bu`:我会把这 154 条的细分结果落成两份东西:一个 HTML 复核页和一个拆解 CSV。HTML 里会直接按“主要诉求”分组展示,每组带数量、占比、解决率和代表 case。
### 4.2 生图画布视觉验收套件
- `019e25d4-6018-7ad0-ac93-ca5541f14616` `~/Documents/product-bu`:对,你要的其实不是“白板”,而是 image generation 的空间化工作流界面。核心对象不是聊天消息,而是参考图、prompt、模型、生成结果、迭代关系和对比。
- `019e25d4-6018-7ad0-ac93-ca5541f14616` `~/Documents/product-bu`:内嵌 Browser 工具这轮没有被 tool_search 暴露出来,所以我改用本地 Playwright 做页面冒烟和截图验证,目标仍是同一个 localhost:5178 页面。
- `019e25d4-6018-7ad0-ac93-ca5541f14616` `~/Documents/product-bu`:playwright-cli 这个技能命令本机没装;我不在全局装工具,改在当前 app 里加 Playwright 作为 dev 依赖,用一次性脚本打开页面并生成截图。
### 5.2 内部看板到 Aeolus 的聚合分析手册
- `019e25d7-b803-7b82-a2a1-7e2ace02c22a` `~/Documents/job-bu`:内嵌浏览器进入了 SSO 的飞书扫码页,当前没有可直接复用的登录态。为了继续分析页面内容,我会改用已登录态更可能存在的 Chrome 自动化。
- `019e25d7-b803-7b82-a2a1-7e2ace02c22a` `~/Documents/job-bu`:路径大概是:打开 life-merchant-exp-pc.gf.bytedance.net/subjective/cpo-ai -> CPO求助指标 -> CPO-AI模型打标 -> 图表源数据链接 -> data.bytedance.net/aeolus。
- `019e25d7-b803-7b82-a2a1-7e2ace02c22a` `~/Documents/job-bu`:如果按平台当前页口径看,商品领域=产品模块/模型一级里的“商品管理”;最近 7 天智能有效会话 17,925,占全部产品域 6.08%,环比 -13.07%。
## 三、扫描说明
- 扫描 session:13 个。
- `agent_reflections`:0 条;本日 reflections 为空,候选来自用户请求、助手执行日志和返工节点。
- 子分析:5 个 context 均已 fan-out,成功纳入 5 个候选。