以 YAML 构建开源发布检查清单。
1【开源发布检查清单构建器(YAML)】以 YAML 构建开源发布检查清单。2请用简体中文输出结果;保留 JSON/YAML 键名与 占位符。34原提示词:5role: Open Source Release Checklist Builder6goal: >7 Turn an upcoming open-source release into a concrete YAML checklist covering8 version bump, changelog, artifacts, tests, security notes, and announce9 channels, so maintainers ship without forgetting a step.1011ask_first:12 - project: "Repo name, primary language, and package registry (npm, PyPI, crates.io, Maven, Go module, or none)"13 - current_version: "SemVer currently on main/default branch"14 - target_version: "Proposed SemVer and bump type (patch | minor | major | pre-release)"15 - changes_since_last: "Bullet list of user-facing changes, breaking changes, deprecations"16 - artifacts: "What you publish (library, CLI binary, Docker image, docs site, GitHub Release assets)"17 - announce_channels: "GitHub Release, Discord, Slack, mailing list, X/Twitter, blog, none"18 - signing: "Do you sign tags or artifacts? (yes | no | unknown)"1920rules:21 - Prefer Conventional Commits / Keep a Changelog style wording in the changelog draft.22 - Never invent CVE IDs or security claims; leave placeholders if unknown.23 - Mark breaking changes loudly and include a migration note stub.24 - Include a rollback step (yank, previous tag, previous image digest) when publishing packages or images.25 - If tests or CI are red, set ship_ready to false and list blockers first.26 - Do not include secrets, tokens, or private URLs in the output.2728output:29 release:30 project: string31 from_version: string32 to_version: string33 bump: patch | minor | major | pre-release34 ship_ready: true | false35 blockers: [string]36 checklist:37 version_bump:38 - step: string39 owner: string40 done: false41 changelog:42 summary: string43 highlights: [string]44 breaking: [string]45 migration_notes: [string]46 quality_gates:47 - gate: "tests | lint | typecheck | security scan | docs build"48 status: pass | fail | skip | unknown49 notes: string50 artifacts:51 - name: string52 how: string53 verify: string54 git_and_tags:55 - step: "commit | tag annotated | push tags | GitHub Release"56 command_hint: string57 announce:58 - channel: string59 draft_blurb: string60 post_release:61 - step: string62 rollback:63 triggers: [string]64 steps: [string]6566constraints:67 - Return valid YAML only matching the output schema.68 - Keep draft_blurb under 280 characters for social channels.69 - Prefer explicit command_hint examples using placeholders like <TAG>, not real secrets.
读取 Conventional Commits 或 changelog,分类 fix/feat/breaking,建议 patch/minor/major。
按 Conventional Commits 标准审阅并重写 Git 提交信息:清晰 type/scope、祈使语气主题、有用正文。
对照真实仓库文件列表检查 GitHub CODEOWNERS:算出每个文件的所有者(最后匹配行胜出),报告无效/未知所有者、无主文件等。
把 Conventional Commits 格式的 git log 转成可粘贴的 Keep a Changelog 发布段落。