リリースチェックリスト
リリースチェックリスト
Section titled “リリースチェックリスト”タグ付きリリースは .github/workflows/release.yml でビルドします。対象は Linux、macOS Intel、macOS Apple Silicon、Windows です。
ビルドプロファイル
Section titled “ビルドプロファイル”ルートの Cargo.toml では [profile.release] を明示しています。サイズを意識した最適化、LTO、codegen unit の 1 本化、シンボル削除、panic = "abort" が設定されています。
リリース成果物では、Cargo の暗黙の既定値に頼らないでください。
成果物への署名
Section titled “成果物への署名”リリースアーカイブは publish job で Cosign の keyless blob signing により署名します。各アーカイブには、対応する *.bundle.sigstore.json bundle を GitHub Release にアップロードします。
bundle には、検証に必要な署名、証明書、transparency log の証明が含まれます。
検証例:
cosign verify-blob \ --bundle asterel-x86_64-unknown-linux-gnu.tar.gz.bundle.sigstore.json \ asterel-x86_64-unknown-linux-gnu.tar.gzタグを打つ前に
Section titled “タグを打つ前に”release-quality なローカル gate の正本は scripts/release/human_like_release_gate.sh です。現在は次を実行します。
cargo fmt -- --checkcargo clippy -- -D warningscargo check-allcargo testcargo fuzz-smokecargo audit- deterministic な
eval baselineの pre/post evidence 比較 - bad-turn
eval replayevidence check
あわせて、ドキュメントを変更した場合は docs build を実行し、CHANGELOG.md に対象タグのリリースノートがあることを確認してください。