mcpField
C
changeset-validation

changeset-validation

github.com/openai测试与质量4.0k128 次安装1 周前更新
代码仓库

关于 changeset-validation

changeset-validation 是用于检查 changeset 是否准确反映包变更并符合仓库规则的技能,可供本地 Codex 审查和 GitHub Actions 共用验证逻辑。它通过共享提示词生成结构化判定,并规定分支中已有 changeset 时应更新而非新增。

主要功能

  1. 01生成 changeset 验证提示词
  2. 02检查变更与版本升级类型
  3. 03输出 JSON 判定结果
  4. 04供本地与 CI 流程使用
  5. 05规范已有 changeset 的修改

适用场景

  1. 01提交前核对 changeset
  2. 02在 CI 中生成结构化验证结果
  3. 03按主变更重写现有 changeset

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/openai/openai-agents-js --skill changeset-validation

安装后在 Claude Code 中输入/changeset-validation确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
validation-prompt.md
scripts/
changeset-assign-milestone.mjs
changeset-prompt.mjs
changeset-prompt.test.mjs
changeset-validation-result.mjs
run-fixtures.sh

详细介绍

Changeset 验证

概述

此技能用于验证 changeset 是否正确反映了软件包变更,并遵循仓库规则。它依赖 references/validation-prompt.md 中的共享提示词,确保本地 Codex 审查和 GitHub Actions 使用相同的逻辑。 如果变更差异中明确标注为实验性或仅供预览的功能新增,且没有改变现有行为,则可以仍使用补丁版本升级。 只有在首次主版本发布后才允许升级主版本;在此之前,功能级变更不得使用主版本升级。

快速开始

本地(由 Codex 驱动):

  1. 运行:
    pnpm changeset:validate-prompt
    
  2. 根据 references/validation-prompt.md 中的规则处理生成的提示词。
  3. 返回包含 ok/errors/warnings/required_bump 的 JSON 判定结果(字符串仅使用英文)。

CI(Codex Action):

  1. 运行:
    pnpm changeset:validate-prompt -- --ci --output .github/codex/prompts/changeset-validation.generated.md
    
  2. 使用 openai/codex-action,结合生成的提示词和 JSON schema,获取结构化判定结果。

工作流

  1. 通过 pnpm changeset:validate-prompt 生成提示词上下文。
  2. 根据 references/validation-prompt.md 中的规则判断是否正确。
  3. 给出明确的判定结果和所需的版本升级类型(patch/minor/major/none)。
  4. 如果需要修改 changeset,请更新它并重新运行验证。

分支级 changeset 规则(不得跳过)

  • 如果当前分支差异中已存在任何 .changeset/*.md 文件,则将其视为当前有效的 changeset。不要添加新的 changeset 文件。
  • 而应更新现有 changeset 文件,重写其摘要,使其反映相对于 main 的主要变更。不要尝试涵盖每次增量更新。
  • 摘要保持一行;需要时替换原有行,而不是追加。如果必须包含多个要点,请将其压缩为一行。

共享事实来源

  • 将提示词文件作为验证规则的唯一事实来源。
  • 保持脚本轻量:它只应收集上下文并输出提示词。

资源

  • references/validation-prompt.md

评论

支持 Markdown