# 2026-05-07 Agent健身房复盘 一句话概括:**这次发现的不是已经自动修复的问题,而是 5 类以后会反复浪费时间的操作摩擦 / 工具缺口。** | 优先级 | 发现的问题 | 真实含义 | 计划怎么解决 | | --- | --- | --- | --- | | 1 | Night Gym 输入递归过滤与产物验收 | 输入里已经混入上一轮 Night Gym master prompt、subagent prompt 和完成标志;如果不标记来源,业务候选会被递归噪音带偏。 | 做 `validate_run.py`:给片段打 `source_kind`,默认排除 Night Gym 内部 prompt/log,并在聚合前校验 JSON、log、example 和审批脚本。 | | 2 | 商品复核页 HTML 回归冒烟 | HTML 文件生成成功不等于页面可用;一次未转义换行就能让复核页白屏,必须在交付前自动冒烟。 | 做商品复核页 smoke:抽取 `DATA`、跑 JS/JSON 解析、`node --check`、浏览器 console 和首屏 DOM 检查。 | | 3 | 商品重分类规则流水线 | 商品域重分类现在靠临时脚本和对话规则叠加,后续很难追溯某个 case 为什么移动、移动了多少。 | 做规则化 relabel pipeline:YAML 配置规则、用户侧文本优先、Ark 原始结果留档、audit CSV 和复核 HTML 同步生成。 | | 4 | 商服指标口径计算器 | 同一份商服 CSV 会在行口径、会话口径、空值分母、RAG/tool 分组之间切换;没有固定工具会反复重算和解释口径。 | 做指标 CLI/skill:自动识别编码和字段别名,支持 row/session grain、tool_name 分组、分子分母输出和缺口提示。 | | 5 | Meego 安全建单模板 | Meego 建单是写操作,参考 Story 复制容易误带群、角色、评论或流程字段;需要把“无副作用建单”固化成模板和 guard。 | 扩展 Meegle skill:新增 safe-story-create allowlist/denylist、payload guard、创建前预览和创建后副作用验收。 | ## 一、下一步 | 顺序 | 先做什么 | 为什么 | | --- | --- | --- | | 1 | 先做 Night Gym 输入过滤与产物验收 | 这是复盘系统自己的地基;不先过滤递归 prompt,后续候选会被上一轮产物污染。 | | 2 | 再接商品复核页 HTML 冒烟 | 这是昨天最直接的用户可见故障,脚本小、收益高,能立刻减少白屏返工。 | | 3 | 随后把商品重分类规则流水线化 | 当前已经出现四标签、不能上架、价格/图片拆桶等连续改口径,必须可追溯。 | | 4 | 补商服指标口径计算器 | 指标表会复用,固定分子分母和 row/session 口径能减少反复解释。 | | 5 | 最后固化 Meego 安全建单模板 | 风险在副作用,适合沉淀到 skill guard,避免误拉群或误动流程。 | ## 二、候选详情 ### 2.1 Night Gym 输入递归过滤与产物验收 - 类型:`diagnostic-tool`;风险:`medium`;审批:`pending` - 摘要:这个主题有价值:相关片段不是普通用户工作,而是 Night Gym 主流程、子分析 prompt、fan-out 编排和完成标志本身被纳入了候选证据。若不做过滤,早间复盘会把上一轮 Night Gym 的产物、prompt 和自检规则当成新的用户痛点;但这也暴露出 Night Gym 需要一个输入净化与产物验收工具。 - 证据: - `019dfee0-561d-7203-b2ce-e4d711773894` / `~/.codex/night-gym/runs/2026-05-06`:[agent_reflections] # Codex Night Gym — 主分析任务 你是 Codex Night Gym 的主分析 agent。你的目标:从用户昨天的 Codex session 记录里发现「值得早上 review 的改进机会」。 - `019dfee2-5904-7241-8b62-b53c2ba0e308` / `~/.codex/night-gym/runs/2026-05-06`:[user_messages] # Night Gym 子主题分析 你是 Night Gym 的子分析 agent,专注**一个主题**的深入分析。 - 改动建议: - 新增 `/Users/bytedance/.codex/night-gym/tools/validate_run.py`,工具入口为 `python3 tools/validate_run.py --run-dir <run_dir> --input <run_dir>/input.json --strict`;输入来源包括 `input.json`、`MASTER_PROMPT.md`、`SUBAGENT_PROMPT.md`、`out/sub/*.context.json`、`out/sub/*.json`、… - 在 `validate_run.py` 里实现递归输入过滤检查:扫描 session 的 `cwd`、`user_messages`、`assistant_messages`、`agent_reflections`,命中 `.codex/night-gym/runs/`、`Codex Night Gym — 主分析任务`、`Night Gym 子主题分析`、`SUBAGENT_DONE`、`NIGHTGYM_DONE`、`out/sub/<id>.json` 等 marker 时标记为 `source_kind=… ### 2.2 商品复核页 HTML 回归冒烟 - 类型:`diagnostic-tool`;风险:`low`;审批:`pending` - 摘要:这个主题不是噪音:同一轮复核页 v2 出现过真实白屏,根因是内嵌 DATA 的控制字符/换行转义不正确,导致浏览器端 JS 语法错误。后续又通过 node --check、DATA 解析条数、内嵌浏览器 console 和首屏可见内容完成了人工冒烟,说明这类检查可以沉淀为自动化诊断工具,避免每次生成复核 HTML 后靠用户截图发现问题。 - 证据: - `019dfdc2-2e7b-7750-9b24-91131b504495` / `~/Documents/job-bu`:复核页 v2 HTML 这个为空呀 - `019dfdc2-2e7b-7750-9b24-91131b504495` / `~/Documents/job-bu`:复现到了:v2 不是没数据,而是生成 HTML 时有会话字段里的原始换行没有被转义,导致 `const DATA = ...` 这段 JS 语法报错,所以浏览器白屏。 - 改动建议: - 在 `/Users/bytedance/Documents/job-bu/data-analysis-workspace` 新增或复用一个脚本入口,例如 `scripts/smoke_product_review_html.py <html_path>`,专门检查商品复核页 HTML 生成物;输入来源是生成后的 `.html` 文件路径,默认也可扫描最近的 `adhoc/*商品域生命周期映射/*session复核*_v*.html`。 - 核心检查步骤:读取 HTML,抽取 `const DATA = ...` 或等价内嵌数据块;用严格 JSON/JS 片段解析确认控制字符已转义;统计 DATA 行数并校验大于 0;对整页内嵌脚本跑 `node --check` 或生成临时 JS 片段检查语法;必要时用浏览器自动打开 file:// 并采集 console error、首屏关键 DOM 文本。 ### 2.3 商品重分类规则流水线 - 类型:`tool-upgrade`;风险:`medium`;审批:`pending` - 摘要:这个主题有效,不是噪音:同一组商品生命周期复核任务里,用户连续提出四标签迁移、新增“不能上架xx”、价格/素材桶裁剪与重命名等规则变更。当前处理方式已经在走 Ark 批处理、prompt 收紧、生成 CSV/XLSX/HTML 和 audit 的雏形,适合沉淀成可复跑、可审计的重分类流水线。 - 证据: - `019dfdc2-2e7b-7750-9b24-91131b504495` / `~/Documents/job-bu`:这里有我对商品类型和商品类目的定义,你帮我重新打标一下……这四个标签,对于 创建前/规则确认态 创建配置态 的case,打出这个标签的都放到 创建配置态 下,并从原来的分类里删除 - `019dfdc2-2e7b-7750-9b24-91131b504495` / `~/Documents/job-bu`:我会补一个可复跑脚本:先用 Ark 在“创建前/规则确认态 + 创建配置态”这 3828 条里识别四标签,输出候选和 Ark 原始结果;再把命中的行统一迁到 `创建配置态` - 改动建议: - 新增 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/tools/taxonomy_relabel_pipeline.py`:输入底表 CSV/XLSX、定义目录 `~/Library/Mobile Documents/com~apple~CloudDocs/bytedance`、规则配置 YAML;输出候选 CSV、Ark 原始 JSONL、最终 CSV/XLSX/HTML 和 audit CSV。 - 新增 `/Users/bytedance/Documents/job-bu/data-analysis-workspace/config/taxonomy_relabel_rules.yml`:把“四标签迁到创建配置态”“不能上架xx”“价格相关/图片素材相关/其他创建配置”等规则配置化,字段包含 source_lifecycle、source_label、target_lifecycle、target_label、user_text_regex、ark_prompt、negative_examples、prio… ### 2.4 商服指标口径计算器 - 类型:`tool-upgrade`;风险:`medium`;审批:`pending` - 摘要:这个主题有明确价值:用户不是要一次性探查,而是要稳定计算商服实验指标,并且同一批任务里已经暴露出分组、编码、行级/session级、分母口径等反复决策点。适合沉淀为一个带口径 manifest 的指标计算器,避免每次临时用 pandas 手算后再解释口径。 - 证据: - `019e01df-46b8-79e3-80a9-4d707520dff1` / `~/Documents/job-bu`:意图 服务方案 求助量(WoW) 参评量 参评率 转人工率 拒答率 求助解决率 识别准确率 漏召率 问答准确率 XX RAG 1000(+1%) XX技能 不是一次性探查,我要计算这些指标呢 - `019e01df-46b8-79e3-80a9-4d707520dff1` / `~/Documents/job-bu`:我会按“session 维度”落表,原因是商服默认解决率/转人工率都按 `智能会话id` 聚合。当前文件只有 6 个字段,所以这版能直接算:求助量、参评量、参评率、转人工率、求助解决率;WoW 和三个人工质检类准确率需要额外数据源。 - 改动建议: - 新增 `/Users/bytedance/.codex/night-gym/tools/service_metrics_calculator.py`:CLI 支持 `--input` CSV/XLSX、自动识别 utf-8/gb18030、`--group-by tool_name`、`--grain row|session`、`--transfer-denominator all|non_null`,输出 `.xlsx` 指标表和 `.json` 口径说明。 - 新增 `/Users/bytedance/.codex/night-gym/config/service_metrics_schema.yml`:集中维护字段别名和公式,例如 `智能会话id/session_id`、`tool_name`、`是否解决` 中 1=解决、2=未解决、其他=未参评,以及 `回复类型=pss_stream` 可映射 RAG。 ### 2.5 Meego 安全建单模板 - 类型:`skill-gap`;风险:`medium`;审批:`pending` - 摘要:这个主题有效:片段显示用户从“是否有 Meego skill”一路推进到真实授权和建单,最终提出高风险约束“千万别拉群”。当前处理依赖当次人工判断只传非群字段,尚未沉淀成 Meegle skill 的固定安全建 Story 模板,下一次仍可能误带群、角色、评论或节点流转等副作用字段。 - 证据: - `019e0140-d34a-7851-bbe5-49dd7ca6c945` / `~/Documents/job-bu`:[user_messages] 你有lark的meego的skill吗 - `019e0140-d34a-7851-bbe5-49dd7ca6c945` / `~/Documents/job-bu`:[assistant_messages] `meegle` skill 已 prompt-visible | Host 已设为 `project.feishu.cn` | 登录状态 `authenticated: false` - 改动建议: - 修改 `/Users/bytedance/.agents/skills/meegle/SKILL.md`:在 `workitem create` 章节前新增“安全创建 Story / 参考 Story 复制”规则,默认先查 `workitem meta-create-fields`、`workitem meta-fields`、引用 Story 字段,再生成 payload preview;创建时只允许标题、业务线、影响 App、优先级、需求来源、模板 ID 和明确 allowlist 的布尔评估字段。 - 新增 `/Users/bytedance/.agents/skills/meegle/references/safe-story-create.md`:沉淀固定模板,列出输入来源(参考 Story URL/ID、目标空间 project_key、用户新标题/改动点)、字段 allowlist、denylist、检查步骤和验收信号;denylist 至少包含 `外部对接群ID`、`对接群永久进群链接`、群聊/IM/chat 相关字段、`role_operate`、`comment add`、`workflow tr…