SuperAPI AI 工具集

editor-harvest-plan

测试与质量

查看项目

更新于 10-16 06:09

技能介绍

用途

Editor Harvest Plan 是 editor-test-harvester 的下游技能,用于把一次测试采集报告转化为某个 owner lane 专属的执行级计划。当 editor-test-harvester 已经产出报告并要求对单个 owner lane 进行处理时使用它。

主要能力

  • 解析 harvest 报告,读取状态、分数、license mode、输出模式、inventory 计数、matrix 行、跳过项、下一步切片和 pass-state ledger。
  • 校验伴随文件(inventory.md、test-index.md)是否存在或记录缺失原因。
  • 归一化 lane 别名。
  • 对每一行做归属核算:in-lane、out-of-lane、split、duplicate、skip、unresolved。
  • 对 slate-v2 lane,涵盖 selection DOM 映射、beforeinput/input、IME/composition、剪贴板与拖放、历史撤销/重做、规范化与 transform、删除/退格、插入片段、marks/inline/void 原语、shadow DOM、浏览器引擎行为、focus/blur、大文档性能等原始 Slate 底层行为;并排除或拆分 link/autolink、列表/清单策略、markdown 转换 UX、mention/hashtag/emoji/date-time 插件、媒体装饰器、工具栏/菜单/对话框状态、React 插件宿主、NodeView/PluginView 式编写等产品行为。
  • 在当前 owner 工作区中检索现有覆盖情况:slate-v2 检索 .tmp/slate-v2,plate 检索 packages、kits、docs、examples 与 behavior-law 文档。
  • 应用下游 lane 技能的门禁(slate-plan 或 plate-plan)。
  • 按模板生成 docs/plans/YYYY-MM-DD-<lane>-<repo>-harvest-plan.md,并提供 accepted-plan 交接。

使用方式

示例调用:

editor-harvest-plan slate-v2 tinymce
editor-harvest-plan slate-v2 .tmp/editor-test-harvester/tinymce/report.md
editor-harvest-plan docs/editor-test-harvester/tiptap/report.md --lane slate-v2

参数解析:先 lane 再 report/repo key,或 report/repo key 加 --lane。报告解析顺序:显式路径优先,其次 docs/editor-test-harvester/<repo>/report.md,再次 .tmp/editor-test-harvester/<repo>/report.md,否则需先运行或请求 editor-test-harvester。

使用 agent-native goals 保存持久状态:先用 get_goal,无匹配活跃 goal 时用 create_goal(每线程仅一个活跃 goal)。生成计划的命令:

node .agents/skills/autogoal/scripts/create-goal-scratchpad.mjs \
  --template editor-harvest-plan \
  --title "<Lane> <Repo> Harvest Plan"

Lane 注册表

Lane 别名 下游技能 Owner 输出
slate-v2 slate, raw-slate .agents/skills/slate-plan/SKILL.md .tmp/slate-v2 中的原始 Slate v2 底层 docs/plans/YYYY-MM-DD-slate-v2-<repo>-harvest-plan.md
plate platejs, plate-owned .agents/skills/plate-plan/SKILL.md 本仓库中的 Plate 包、kits、docs、examples 与产品行为 docs/plans/YYYY-MM-DD-plate-<repo>-harvest-plan.md

若 lane 未知,仅当 harvest 行的 owner 标签能明显推断时才推断,否则询问 lane,不得虚构新的 owner lane。

适用场景

  • 已有完成或接近完成的 editor-test-harvester 报告。
  • 需要处理某个 lane(如 slate-v2 或 plate)的全部行。
  • 用户要求“这个 harvest 的全部 Slate 测试”“全部 Plate-owned 行”或“把 harvester 结果处理成计划”。

限制

  • 这是规划/路由技能,不修补实现代码、测试、示例、包文件或构建配置。
  • slate-v2 不得从本技能编辑 .tmp/slate-v2;plate 除计划外不得编辑 packages、apps、docs、examples 或行为。
  • 用户说“go”“process”“apply”“all tests”等不覆盖规划边界;需先建计划,用户接受后再交给下游 lane 技能执行。
  • 除非报告缺少必要证据,否则不重跑完整 harvest;harvest 不完整但可用时处理已有部分,计划保持 pending 并注明缺失的 harvester 环节。
  • 保留 harvest 的 license mode;对 behavior-only 来源,任何带版本的计划行只使用新鲜的本地 invariant 措辞与源路径出处。
  • 绝不把上游测试代码、fixture、helper、快照、预期输出或表达性文本复制到版本化输出。
  • 不得把 Plate/产品行算作 Slate v2 测试,也不得把原始 Slate 底层行算作 Plate 插件待办,除非已明确拆分并路由。
  • “全部 lane 测试”指属于该 lane 的每一行,包括 covered、refactor-existing、create-new、fresh-invariant、permissive 来源的 copy-now、defer 以及未解决的 lane 候选,不限于 create-new。
  • 浏览器、剪贴板、选择、移动端与 IME 行需要诚实的证明路径;仅包测试不足以关闭浏览器/设备断言。

动作取值

covered、refactor-existing、create-new、仅 permissive 来源的 copy-now、仅 behavior-only 来源的 fresh-invariant、defer、split、skip。对 behavior-only 来源,版本化输出中绝不使用 copy-now,而用 fresh-invariant。

置信度评分

维度与权重:Harvest 来源就绪度 0.15、Lane 过滤完整度 0.25、当前 owner 覆盖映射 0.25、执行队列可操作性 0.20、License/出处纪律 0.15。

分数上限:报告缺失时总分不超过 0.80;inventory 或 test-index 状态未知时不超过 0.86;除非每条 harvest matrix 行都被记为 in-lane 或 out-of-lane/split/duplicate/skip,否则 Lane 过滤完整度不超过 0.80;除非已在目标工作区检索当前 owner 测试/源码,覆盖映射不超过 0.85;除非每条未覆盖的 in-lane 行都给出目标文件、证明类型、聚焦验证命令或 defer 原因,可操作性不超过 0.85;对 behavior-only 来源,除非计划写明 fresh-invariant-only 规则并避免复制源措辞,License/出处不超过 0.80。

完成阈值:总分 >= 0.92;任何维度不低于 0.85;无未解决的 in-lane 行;create-new、refactor-existing、copy-now、fresh-invariant 或 defer 行均有 owner 与验证/defer 证据;已记录下游 lane 应用;最终 goal-plan 检查通过。

验证

规划阶段验证(plate-2):

rg -n "Harvest grounding|Lane contract|Full harvest row accounting|In-lane candidate matrix|Execution queue|Downstream lane application|Accepted-plan execution handoff" docs/plans/<plan>.md
node .agents/skills/autogoal/scripts/check-complete.mjs docs/plans/<plan>.md

编辑本技能后的来源同步验证:

pnpm install
test -f .agents/skills/editor-harvest-plan/SKILL.md
rg -n "editor-test-harvester|slate-plan|Lane Registry|Full harvest row accounting" .agents/skills/editor-harvest-plan/SKILL.md
pnpm lint:fix

Slate v2 行为验证仅属于从 .tmp/slate-v2 执行的 accepted-plan。

最终响应格式

Pending 时:

Editor Harvest Plan is pending: [docs/plans/...](docs/plans/...)
Score: 0.xx
Next owner: ...

Done 时:

Editor Harvest Plan is ready: [docs/plans/...](docs/plans/...)
Lane processed:
- `<lane>`: N in-lane rows, N covered, N refactor, N create/fresh-invariant, N defer, N excluded/out-of-lane.
- Downstream skill: `<skill>`.
- Execution next: `<first execution queue id or none>`.

暂未提供

该技能的收费标准、价格、适用平台或运行环境的明确限制,资料中暂未提供。