SuperAPI AI 工具集

rule-validate

测试与质量

查看项目

更新于 10-15 14:51

技能介绍

用途

rule-validate 用于在合并前验证已实现的 React Doctor 规则。它适用于聚焦测试通过之后,对检测器正确性进行审查,检查开源代码命中情况,运行拉取请求相关流程,并准备发布产物。其核心目标是确认实现与其规则研究契约在测试和真实代码上保持一致。

主要能力

该技能覆盖以下验证环节:

  • 审查实现,检查误报与遗漏的声称行为、错误的导入/别名/被遮蔽绑定、不可能的控制流路径合并、被当作立即执行的嵌套函数、被当作静态名称的动态属性、遗漏的透明包装器、不支持的导入值、夸大检测的消息,以及缺失的有效和无效测试。
  • 在接纳新辅助函数前使用 truffler 进行检索,命令为:
bunx @rayhanadev/truffler "<helper-name>" packages \
  --kind function,method,interface,type,constant --limit 20
  • 为每个实现缺陷补充聚焦的回归测试。
  • 运行验证:执行聚焦测试、包类型检查以及必需的 lint 和格式检查;当变更影响共享行为时运行更广泛的检查。
  • 使用 rde-eval 对目标规则进行有界本地检查;命中数低时检查全部命中,命中数高时检查代表性样本;将每个确认的误报加入规则测试和模糊测试语料库。
  • 在拉取请求头部推送后,对每个新规则或检测器行为变更运行 run-parity;仅文档或仅测试变更可跳过;若无法运行一致性检查,需报告确切阻塞原因。
  • 仅在两次 Vercel Sandbox 运行均完成时才声称一致性;分别比较仓库与项目根计数;在分类前检查目标规则增量。

使用方式

该技能按以下流程组织:

  1. 审查实现,按上述检查项逐条核对。
  2. 使用 truffler 检查新辅助函数,并用聚焦回归测试修复每个实现缺陷。
  3. 运行验证,包括聚焦测试、包类型检查、lint 与格式检查,必要时运行更广泛检查。
  4. 使用 rde-eval 进行有界本地检查,处理误报并补充测试与模糊语料库。
  5. 在拉取请求头部推送后运行 run-parity,并按要求比较计数与检查增量。
  6. 准备发布产物:对已发布包的用户可见变更运行 nr changeset;规则、缺陷修复、误报修复和诊断细化通常使用 patch 变更集,除非发布影响需要更高等级;仅私有、文档、测试或工具变更可跳过,并说明原因。
  7. 在验证后撰写拉取请求文案,包含 Why、What changed、Eval results 表格和 Test plan 等部分;若未运行一致性检查则省略评估表并说明原因。
  8. 处理审查发现:修复正确性缺陷、重复辅助函数、误导性命名和令人困惑的代码;仅当不支持的控制流超出契约时才推迟;拒绝扩大消息或增加误报的请求;在修复或解释到达拉取请求后解决审查线程。
  9. 报告验证结果:命令、审查发现、本地 RDE 证据、一致性结果或阻塞原因、已修复的误报、回归测试、变更集、拉取请求说明以及剩余的非目标。

适用场景

适用于 React Doctor 规则的开发与合并流程,特别是在实现完成、聚焦测试通过之后,需要系统性地验证检测器正确性、评估真实代码命中、准备发布产物并撰写拉取请求说明的场景。

限制

该技能要求仅在两次 Vercel Sandbox 运行均完成时才声称一致性;若无法运行一致性检查,必须报告确切阻塞原因。仅文档或仅测试变更可跳过 run-parity。发布变更集仅对已发布包的用户可见变更使用,私有、文档、测试或工具变更可跳过并说明原因。关于具体平台支持范围、收费或价格等信息,资料中暂未提供。