knowledge-vault/discussions/technology/Codex/4.Skills/CCRA配套Skills.md

208 lines
9.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 1
`C:\Users\wangq\Documents\Codex\ccpe-system\requirements\skills-vault`记录了5个CCRA Agent配套的Skills的工单都可以包装成公共Skill。
我们本次将会逐一打造对应的Skill。
每个Skill都遵循下面这个流程
1. 有任何问题提出。
2. 判断公共性共通性是否足够。若不足,则提出问题或者修改方向,等我确认。
3. 打造验证skill使用公共的Conda环境若需要python代码
4. 实装本地`.agent/skills`
5. 完成配套的文档、规则
6. 提交
全部改造完成后同步至远程打Tag。
那么,现在可以开始第一个`2026-06-19-lifecycle-status-guard-scan`
已完成第一步审阅。这个工单的公共性足够:它是配置驱动、只读扫描、只产出证据候选,不替代 Owner/CCRA 判断;并且适用于
ccpe-system、writing-workbench、video-workbench 和普通开发仓库的状态漂移检查。
建议设计如下,确认后我开始实装:
- Skill 名lifecycle-status-guard-scan
- 源码目录skills/lifecycle-status-guard-scan/
- CLIscripts/lifecycle_status_guard_scan.py --scan-root <path> --config <yaml|json> --output-dir <path>
- 输出lifecycle-status-guard-scan.md 和 lifecycle-status-guard-scan.json
- 配置语义:
- watched_paths相对 scan_root 的 glob
- status_fields扫描 front matter / JSON / YAML 中的字段名或点路径
- forbidden_status_values命中后产生 blocking finding
- warning_status_values命中后产生 warning
- approved_phrases按“声称已批准/已接受/已稳定的短语”处理,命中后要求 evidence marker
- forbidden_phrases直接命中为候选 overclaim
- required_evidence_markers用于判断 claim 是否缺少证据引用
- allowed_contexts允许在否定、示例、政策说明等上下文中出现而不计入 overclaim
- 测试先行:覆盖工单列出的 stable 无证据、draft 允许、Owner/CCRA 批准短语缺引用、JSON、Markdown front matter、中文短
语、UTF-8 中文文件名。
- 安装与提交:测试和 metadata validate 通过后,用 repo 的 install-skill.ps1 安装到 C:\Users\wangq\.agents\skills更新
registry/docs然后单独提交这个 Skill。
我没有阻塞性问题。只需要你确认一处语义approved_phrases 是否按上面设计为“approval claim phrases requiring evidence”
如果确认,我就按这个方案开始写 RED 测试。
# 2
确认approved_phrases 按 approval claim phrases requiring evidence 处理。
它不是 whitelist也不代表该 claim 已被接受。
匹配 approved_phrases 时Skill 只检查是否存在 required_evidence_markers。
若缺少 evidence marker默认产生 blocking finding。
若存在 evidence marker只能降级为 evidence-present claim / non-blocking observation不得判定该批准真实有效。
批准真实性仍由 Owner / CCRA / 上层 Agent 判断。
建议实现时注意两点:
1. `required_evidence_markers` 不要只做全文件任意命中,最好支持“同一 front matter / JSON object 字段”或“短语附近窗口”的证据关联,否则容易被文件里无关的 evidence 字样误放行。
2. `allowed_contexts` 只应豁免 phrase-level claim例如否定句、示例、政策说明不应豁免结构化字段里的 `status: stable`、`lifecycle: accepted` 这类命中。
已经继续并完成第一个 Skill。
已新增并提交 lifecycle-status-guard-scancommit 是 a2e8f1b feat: add lifecycle status guard scan skill。它已安装到 C:
\Users\wangq\.agents\skills\lifecycle-status-guard-scanregistry 和 install notes 也已更新。当前 worktree clean。
关键实现点:
- approved_phrases 按“需要证据的批准声称短语”处理,不作为 whitelist。
- 有附近证据时只输出 non-blocking observation不判断批准真实有效。
- 结构化字段证据只在同一 front matter / JSON/YAML object 内关联。
- allowed_contexts 只豁免 phrase-level claim不豁免 status: stable 这类结构化命中。
验证已通过:
- conda run -n skills-vault python -B -m unittest discover -s skills\lifecycle-status-guard-scan\tests -v10 tests OK
- source Skill quick_validate.pyvalid
- installed Skill quick_validate.pyvalid
- git diff --checkexit 0仅有 Git 的 LF/CRLF 提示
尚未 push / tag按你的流程应等 5 个 Skill 全部完成后统一同步远程并打 tag。
# 3
现在开始下一个,`2026-06-19-regression-validation-gate-runner`
已完成第二个 Skillregression-validation-gate-runner。
已提交625ab2e feat: add regression validation gate runner skill。当前最近两个提交是
625ab2e feat: add regression validation gate runner skill
a2e8f1b feat: add lifecycle status guard scan skill
实现内容:
- 新增 skills/regression-validation-gate-runner/
- 支持 JSON/YAML/YML/Markdown fenced manifest
- 支持 dry_run / run
- 默认只运行 required_before_review: true 的 gatesoptional gate 默认跳过
- 捕获 stdout/stderr 到 logs/<gate-id>.log
- 输出 gate-run-report.md 和 gate-run-report.json
- 记录 exit code、duration、timeout、skipped gates、environment notes、changed files
- 明确声明 gates 只提供工程证据,不代表产品接受或生命周期批准
- 已安装到 C:\Users\wangq\.agents\skills\regression-validation-gate-runner
验证已通过:
- conda run -n skills-vault python -B -m unittest discover -s skills\regression-validation-gate-runner\tests -v9 tests OK
- source Skill quick_validate.pyvalid
- installed Skill quick_validate.pyvalid
- git diff --checkexit 0仅有 LF/CRLF 提示
当前 worktree clean。仍未 push / tag按你的流程等 5 个 Skill 全部完成后统一同步远程并打 tag。
# 4
现在开始下一个工单。
• 已完成第三个 Skillreview-bundle-audit。
已提交fdda95a feat: add review bundle audit skill。当前最近三个提交是
fdda95a feat: add review bundle audit skill
625ab2e feat: add regression validation gate runner skill
a2e8f1b feat: add lifecycle status guard scan skill
实现内容:
- 新增 skills/review-bundle-audit/
- 支持 --bundle-root / --output-dir / --profile / --profile-config
- 内置 generic profile检查 brief、manifest、validation sidecar识别 report、zip、changed-files
- 输出 bundle-audit.md 和 bundle-audit.json
- 检查 manifest/sidecar 可读性
- 检查 zip 可读性zip 损坏为 blocker
- extra files 只作为 warning不阻塞
- 支持 UTF-8 路径和中文文件名
- 已安装到 C:\Users\wangq\.agents\skills\review-bundle-audit
验证已通过:
- conda run -n skills-vault python -B -m unittest discover -s skills\review-bundle-audit\tests -v8 tests OK
- source Skill quick_validate.pyvalid
- installed Skill quick_validate.pyvalid
- git diff --checkexit 0仅有 LF/CRLF 提示
当前 worktree clean。还剩 review-context-builder 和 routing-behavior-diff-audit 两个工单;仍未 push / tag按你的流程等 5 个 Skill 全部完成后统一同步远程并打 tag。
# 5
现在开始`review-context-builder`
• 已完成第四个 Skillreview-context-builder。
已提交c2a46b6 feat: add review context builder skill。当前最近四个 helper 提交是:
c2a46b6 feat: add review context builder skill
fdda95a feat: add review bundle audit skill
625ab2e feat: add regression validation gate runner skill
a2e8f1b feat: add lifecycle status guard scan skill
实现内容:
- 新增 skills/review-context-builder/
- 支持 --project-root、--review-id、--source-root、include/exclude patterns、metadata、max file size
- 输出 review-context.md 和 review-file-manifest.json
- 只生成文件索引和导航上下文,不替代阅读源文件
- 稳定排序、项目相对 POSIX 路径、UTF-8/中文路径支持
- missing source root 作为 blocker但仍写出两个输出文件
- 大文件记录为 excluded不嵌入内容
- metadata 原样 passthrough不注入 CCRA 专用字段
- 已安装到 C:\Users\wangq\.agents\skills\review-context-builder
验证已通过:
- conda run -n skills-vault python -B -m unittest discover -s skills\review-context-builder\tests -v8 tests OK
- source Skill quick_validate.pyvalid
- installed Skill quick_validate.pyvalid
- git diff --checkexit 0仅有 LF/CRLF 提示
当前 worktree clean。还剩最后一个工单routing-behavior-diff-audit。仍未 push / tag等 5 个 Skill 全部完成后统一同步远程并打 tag。
# 6
现在完成最后一个
• 本地最后一个 Skill 已完成并提交:
- 新增 routing-behavior-diff-audit
- 提交7e19041 feat: add routing behavior diff audit skill
- 本地 tagccra-agent-skills-2026-06-19
- 当前 main 相对 origin/mainahead 5
- 工作区干净
验证结果:
- 五个 CCRA 配套 Skill 单元测试全部通过,共 43 个用例
- 五个源码 Skill quick_validate.py 全部通过
- 五个 .agents\skills 安装副本 quick_validate.py 全部通过
- routing-behavior-diff-audit 已安装到 C:\Users\wangq\.agents\skills\routing-behavior-diff-audit
远端同步没有成功。git ls-remote、git fetch、git push origin main ccra-agent-skills-2026-06-19以及 HTTP/1.1 查询都返回:
Recv failure: Connection was reset
网络恢复后可直接重试:
git push origin main ccra-agent-skills-2026-06-19