关于 maintain-verification-skill
Maintain a verification skill 是用于维护带功能映射的项目本地技能的工作流。它指导开发者检查源码并实际验证应用,再区分文档或测试工具问题与产品缺陷。
主要功能
- 01检查功能映射文件覆盖情况
- 02从源码审查每项功能
- 03要求逐项进行实时验证
- 04分类处理文档、测试工具和产品问题
- 05为已证实的修正提交一个 PR
适用场景
- 01应用变更后更新验证技能
- 02查找过时的功能说明
- 03确认测试工具能否验证映射功能
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ michael-denyer/ pstack-claude --skill maintain-verification-skill安装后在 Claude Code 中输入/maintain-verification-skill确认已加载。
详细介绍
维护验证技能
在 Codex 上,遵循此技能之前,请阅读平台映射,包括其中针对各技能的说明。
在 GitHub Copilot 上,遵循此技能之前,请阅读平台映射,包括其中针对各技能的说明。
在 Muse 上,遵循此技能之前,请阅读平台映射,包括其中针对各技能的说明。
应用一有变化,功能地图就会过时。本技能是对通过 /create-verification-skill 生成的技能(或任何包含功能地图的项目本地验证技能)进行维护的循环。严谨性的衡量单位是功能,而不是每句话:根据源码覆盖每个功能文件,并在实际运行中验证每项功能,而不是把每个条目都变成终端测试。
结果
选择一项,并说明是哪一项:
- clean — 每项功能都经过源码和实际运行验证;没有值得发布的内容。不建分支,不提 PR。
- changed — 提交一个 PR,发布经验证的文档、测试框架或地图修正。
- blocked — 无法完成覆盖,或无法安全发布经验证的修复。准确说明阻碍因素。
编辑范围
只能编辑验证技能自身的目录(其 SKILL.md、features/ 及其拥有的任何测试框架脚本)。运行期间绝不编辑产品代码:如果应用不再具有地图所描述的行为,那要么是文档偏差(修正地图),要么是产品回归(报告问题,不要在文档中掩盖)。
测试
-
定位目标。 找到要维护的验证技能:正文包含启动/驱动章节和功能映射的项目本地技能(
.claude/skills/verify/,或旧生成器生成的.claude/skills/verify-*/)。如果有多个候选项,请询问要选哪一个;如果没有,则停止,并指向/create-verification-skill,不要凭空指定目标。 -
索引清理。 阅读功能映射 README,并 glob 匹配同级文件。修复缺失、多余、重复或已失效的条目。轻量处理;不要生成清单。
-
源码阶段。 每个功能文件配一个只读子 Agent,并发启动。每个子 Agent 根据源码说明“这个面向用户的功能如何工作?”,附引用标出可能的文档偏差,并提供一条简洁的实时验证步骤。子 Agent 绝不驱动应用,也不编辑文件。返回格式:功能摘要/源码入口/可能存在的偏差或无/一条验证步骤。
-
整合。 每个功能文件都必须有对应的摘要。合并重叠的验证步骤,尽可能减少需要覆盖的应用状态。抽查引用所指的偏差;不要重复验证没有问题的声明。检查近期变更,找出映射中遗漏的面向用户界面——只有找到具体源码路径,才能认定有遗漏。
-
实时验证。 即使源码看起来没有问题,也必须执行。由协调者负责所有驱动操作;遵循验证技能自身的启动模型——对于服务和 UI,使用一个长期运行的实例并串行驱动;对于短生命周期的 CLI,每次驱动都启动一个全新的隔离会话(以技能的 Launch 章节为准,而不是本章节)。至少验证每项功能一次,并在整个过程中始终遵守以下三条不变量,无论遇到什么故障都不例外:(1)实例发生异常后,在健康检查通过前,绝不驱动该实例——首次驱动前先运行 doctor;以会话为单位时,每个新会话都运行 doctor;每次驱动失败后再次运行 doctor;如果 doctor 无法发现故障(例如 UI 状态卡死,但进程正常),则重置到已知状态或重新启动,而不是寄希望于问题自行消失;(2)已采集的证据必须在每次清理后仍然保留,并在指定位置核实,不能想当然;(3)驱动启动的所有内容都不得超出该次驱动的有效期——无论会话卡死、退出还是共享,都要清理失败迭代留下的残余(对于共享实例,清理残余,而非实例本身)。如果 doctor 因技能偏差而失败,这属于偏差:在编辑范围内修复,并重试一次——只重启修复所影响的内容——然后才可将验证标记为
blocked。只有提供具体前置条件(身份验证、权益、操作系统、外部状态)和已尝试的路径,才能将无法访问的功能标记为verified-unreachable;如果映射遗漏了该前置条件,则属于偏差。分诊中进行的任何测试框架修复,都必须在交付前重新进行实时验证。最终清理必须在本轮最后一次驱动之后执行——包括所有复验——确保本轮结束时没有遗留任何内容(证据按技能要求保留)。 -
分诊。 面向用户的描述错误或缺失 → 文档偏差,予以修复。功能正常但测试框架无法驱动 → 测试框架缺陷,予以修复;测试框架修复遵循与生成时相同的辅助工具规则(脚本须可执行,且技能正文须说明调用方式)。应用行为确实存在缺陷 → 产品缺陷;记录并告知用户,不要纳入此 PR。
-
提交或停止。 对于有变更的情况:提交一个包含已验证修正的 PR,并先重新阅读每个变更文件。对于无变更或受阻的情况:不提交 PR,如实报告结果和覆盖范围。
在临时位置简要记录运行情况(已覆盖的功能、无法访问的前置条件、已确认的偏差、结果);不要提交这些记录。