ワンクリックで
task-verification
用户要求测试、验证、耗时报告、初始化或更新测试声明、推进测试能力成熟度,或者实现型任务到达验证节点、Agent 准备判断或声称开发完成、Task Finish 需要核对或补齐正式验证 evidence 时使用;用户无需主动点名本 Skill。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
用户要求测试、验证、耗时报告、初始化或更新测试声明、推进测试能力成熟度,或者实现型任务到达验证节点、Agent 准备判断或声称开发完成、Task Finish 需要核对或补齐正式验证 evidence 时使用;用户无需主动点名本 Skill。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
在 Buildr workspace 中安装、更新或同步 Buildr、更新或同步 workspace、诊断和维护组织工作资产,用户要求采用内部流程、调整工作方式、修改或替换 Skill 行为,或要求复盘任务、总结可沉淀的 Skill/Rule 时使用;覆盖 Buildr CLI 与产品入口 Skill、组织(Organization/Root)、项目(Project)、服务(Service)、组件(Components)、规则(Rules)、技能(Skills)、命令(Commands)、内置能力(Builtins)、工作能力适配和 Agent runtime 渲染。
用户要求采用内部流程、调整工作方式、修改默认 Skill 行为、创建或替换专业 Skill、卸载可能被编排的 Skill,或 Agent 准备改变 provides、requires、capability contract、binding 及跨 Skill 协作边界时使用;负责从自然语言意图完成影响分析、候选开发、组合验证、安全激活和 runtime 同步,不要求用户理解 capability 术语。
用户表达提交、推送、拉取、pull、合并、merge、rebase、checkout、switch、reset、cherry-pick、revert、stash、发布、删除分支等单项 Git 意图,或 Git 操作存在授权、提交范围、amend、远端改写、工作区转换、分支删除等歧义时使用。用于统一 Git 协作约定和安全默认行为,而不是完整任务结束编排。
创建、修改、同步或归档 OpenSpec change,且需要建立契约基线、检查 active change 冲突、陈旧 delta 或同步结果时使用。此 Skill 是 Buildr 的 OpenSpec sidebar,不修改外部 openspec-* Skills。
非简单 Workspace 任务开始探索、设计、诊断、实现或验证时,持续收集可能影响长期 Rule、Skill、capability Contract 或产品能力的轻量信号;用户要求复盘或沉淀,或 Task Finish 触发 finalize 时也使用。负责 observation、资格审查、人工决定和新任务交接,不保存完整轨迹。
为复杂、长期、跨批次、跨 change、跨服务或团队,或存在交叉依赖和多次用户判断的任务创建、更新和检查只读 HTML 任务看板;管理完整任务、change 关联、交付批次和依赖任务池。用户明确要求任务可视化、任务看板、整体进度、任务全景、长期跟踪,或沿用旧称“任务驾驶舱”时也使用。简单短时任务不机械创建。
| name | task-verification |
| description | 用户要求测试、验证、耗时报告、初始化或更新测试声明、推进测试能力成熟度,或者实现型任务到达验证节点、Agent 准备判断或声称开发完成、Task Finish 需要核对或补齐正式验证 evidence 时使用;用户无需主动点名本 Skill。 |
本 Skill 是 buildr.task-verification/v2 的默认 provider。它负责发现当前 workspace 或 Project 已定义的验证政策,决定正式所需保证,以最低充分范围执行验证,把结果绑定到候选身份,测量验证自身的 wall-clock,并向直接调用者或 finish consumer 返回统一证据。它不拥有 task worktree placement、Git integration、部署或业务验收 policy。
本 Skill 不是只在用户主动说“验证”时使用:用户直接要求测试、检查或耗时报告时由 runtime description 发现;实现型任务到达验证节点或 Agent 准备声称完成时,由适用 Rule 的完成边界触发;Task Finish 需要正式 evidence 时通过 capability binding 调用 selected provider。binding 只选择实现,不替代首次意图发现。
执行前确认:
inspect 只核对已有 evidence,execute 才运行验证命令,cleanup 只处理 evidence 生命周期。不得因为 consumer 调用 provider 就默认选择 execute。requiredAssurance: affected;发布、高风险或用户明确要求完整验证返回 requiredAssurance: candidate。consumer 不替 provider 选测试或级别。projects/<project>/verification.yml、OpenSpec change/tasks、项目开发或发布文档、公开脚本与帮助。只读取任务相关范围,不按技术栈名称猜测命令。Project 测试声明不存在时使用 policyMode: legacy,完全保持现有发现行为:继续读取 AGENTS、POM、项目文档和已有测试命令;不因缺少新声明产生失败、阻塞或 warning,不自动启动新的 Spring、端到端、容器、数据库或外部环境。声明存在时先按 references/project-verification-v1.md 核对;无效声明不得执行。
声明的 mode: augment 表示已确认能力增强 legacy policy discovery,未声明范围仍继续发现;mode: authoritative 表示团队确认声明是 Project 测试政策 authority。具体命令由当前 workspace 或 Project 定义。不得把 Buildr Product 的 package check、临时 workspace E2E、npm run test:candidate 或 timing schema固定为其他项目的默认入口。
需要 Candidate 但找不到适用 Candidate policy 时返回 status: incomplete,说明缺失的政策、入口或候选 identity;不得把 minimal 或 affected 结果表述为完整候选验证。
执行前先解析声明能力的 applicability、maturity、stage、enforcement、dependsOn/supersedes、环境、副作用与授权,形成 availableCapabilities、selectedCapabilities、skippedCapabilities 和 blockedCapabilities。只有显式 supersedes 或可信上层入口覆盖证据才能去重;不得根据测试名称、技术栈或看似更高的层级自行推断覆盖。
实现循环中只运行语法、类型、静态检查,或直接相关、低成本、环境就绪且已授权的 stable 能力。它不作为 Task Finish 的正式 evidence。安全边界、不可逆迁移或用户明确要求的即时检查不受默认批量节奏限制。
共享实现区域、验证入口或失败影响面的任务组完成后,集中运行一次受影响范围验证。选择影响面内的 stable required 能力;环境和授权允许时可以运行 trial/advisory 能力积累证据,但其失败不得单独冒充 required gate 失败。同一候选状态下,只有能证明上层入口覆盖底层检查时才去重;无法证明覆盖关系时保留必要检查。
全部实现、自然语言资产、生成资产同步和 review 修订完成后冻结候选,再运行项目要求的完整验证。authoritative 模式必须运行全部适用的 stable required Candidate gates,不得按 Git diff、固定能力数量或技术栈分层缩小;augment 或 legacy 无法确认完整范围时设置 candidateCompleteness: unconfirmed。只有 level: candidate、status: passed、candidateCompleteness: confirmed、candidate identity 匹配且 evidence 可复用时,才能把结果作为实现完整验证或 Task Finish 的完成证据。
完整验证失败后退出候选冻结状态。修复期间优先重跑失败项与受影响检查;候选重新稳定后再执行一次新的 Candidate 验证。
用户说“初始化测试声明”或等价表达时:
verification.yml;不写入 capabilities.yml 或 Service repo。references/project-verification-v1.md 和 templates/project-verification.yml,扫描当前 scope 的 AGENTS、POM、package scripts、CI、项目文档和可访问 Service 测试入口。mode: augment 候选。尚未确认命令、覆盖、环境或副作用的能力保持 maturity: discovered、advisory 和 explicit authorization;不得在初始化过程中自动运行新的 Spring、端到端或外部环境测试。用户说“更新测试声明”“自动补充测试声明”或普通任务发现新入口时执行增量流程:
discovered → trial → stable。技术成熟度提升可以由团队确认;从 advisory 提升为 required 必须单独确认其覆盖和阻断价值。每次验证作为一次 execution 记录真实整体 wall-clock:
execute 时启动验证命令。inspect 和 cleanup 的 taskVerificationExecuteCalls、candidateExecutorCalls 必须为 0,其自身核对/清理耗时不得冒充验证耗时。timingSource: verifier-reported,保留绝对 summary path 或等价 reference。timingSource: wrapper-measured。只报告实际可测的整体与单命令耗时,不声称不存在的逐阶段数据。durationMs 相加推算 totalDurationMs;总耗时必须来自整体 execution 的 wall-clock。验证命令需要修改外部系统、部署环境、持久业务数据或共享状态时,停止并取得该具体副作用的授权。构建产物和项目政策明确允许的本地测试临时文件仍属于常规验证效果。
- [ ] → - [x] 变化定义为 verification-result-metadata-only。此时 Candidate evidence 仍绑定 source implementation identity;consumer 只能组合独立的 source/target identity、change/task identity 和精确 marker transition,不得改写 candidateIdentity 或声称 Candidate 直接验证 target delivery tree。session-only。存在额外内容变化、任务歧义、source identity 不匹配或跨会话证据缺失时,不得从路径、文件类型或最终 checkbox 状态反推可复用性。reusable: false 并重新验证或返回 incomplete。向 consumer 返回以下字段;没有独立 summary 文件时可以作为当前会话结构化证据返回,不要求为所有项目创建新文件:
level: minimal | affected | candidate
requiredAssurance: affected | candidate
status: passed | failed | incomplete
policySources: <实际采用的规则、Project 或文档>
policyMode: legacy | augment | authoritative
candidateIdentity: <repository/snapshot 与 tree/fingerprint>
availableCapabilities: <已解析能力及 maturity/stages>
selectedCapabilities: <本阶段实际选择的能力>
skippedCapabilities: <跳过能力 id 与原因>
blockedCapabilities: <阻塞能力 id 与环境/副作用/授权原因>
coverageSummary: <已声明并实际覆盖的范围;未知项>
environmentReadiness: <ready/unready/unknown 与依据>
authorizationDecisions: <implicit/explicit/denied 与依据>
candidateCompleteness: confirmed | unconfirmed | not-applicable
checks: <名称、命令摘要、状态、exitCode、durationMs>
totalDurationMs: <真实整体 wall-clock>
timingSource: verifier-reported | wrapper-measured
slowestCheck: <名称与 durationMs,未知时明确 unknown>
failedChecks: <失败项,成功时 none>
skippedChecks: <跳过项与原因,未跳过时 none>
reusable: true | false
operation: inspect | execute | cleanup
taskVerificationExecuteCalls: <本次启动验证 execution 的次数>
candidateExecutorCalls: <本次启动 Candidate executor 的次数>
evidenceReference: <summary 绝对路径或当前会话 evidence>
evidenceRetention: transient | caller-managed | session-only
cleanupAfter: consumer-finished | caller-policy | not-applicable
cleanupStatus: retained | cleaned | not-applicable
cleanupReference: <仅 transient 落盘 evidence 的精确、安全清理引用>
verificationResultMetadataTransition: <可选;subtype、source/target identity、change/task identity、精确 old/new marker 与 session-only retention>
必要检查失败时保留实际退出状态、已完成检查和耗时,停止把任务描述为验证完成。只有较低级别验证时,明确 Candidate 尚未执行。
evidenceRetention: transient。系统临时目录不是长期存储;provider 必须返回精确 cleanupReference,但在当前有效 Candidate evidence 仍可能被 Task Finish 或其他 consumer 使用时保持 cleanupStatus: retained。caller-managed;provider 不擅自删除,也不把该路径纳入默认任务清理。cleanupStatus: retained、实际路径和原因。cleanupStatus: cleaned;不得继续把已删除路径表述为长期可访问证据。task-worktree 不负责这项清理。直接验证或实现准备完成时,报告至少包含:
验证:通过 / 失败 / 不完整
候选:<identity>
范围:minimal / affected / candidate
政策:<legacy / augment / authoritative;Candidate completeness>
能力:<selected;skipped/blocked 及原因>
检查:<通过数/总数;failed;skipped>
耗时:<整体 wall-clock;timing source;最慢检查及耗时>
证据:<reference>
证据生命周期:<retention;cleanup status;仍保留时的精确 reference>
报告使用“受影响验证”或“完整候选验证”。只有当前政策确实要求 Candidate 时,Affected 通过后才追加“完整候选验证尚未执行”。不得只说“测试通过”,也不得把任务总耗时、排队时间或人工等待混入验证自身耗时。
verification.yml 当作迁移欠账、失败或阻塞;不在初始化/刷新声明时自动执行新环境测试。task-worktree、git-ops 或任何固定 provider id;有 worktree 时只消费调用方提供的候选边界与 identity。inspect、cleanup 或 summary verifier 调用表述为重新执行验证;已有满足 requiredAssurance 的可信 evidence 进入收尾时不得仅因 consumer 调用而启动 executor。verification-result-metadata-only consumer composition,原 evidence identity 仍保持不变。实现内容变化后重跑同一 requiredAssurance,不机械升级为 Candidate。