ci: move the deprecated node20 actions to their current majors - #38
Merged
Conversation
ci.yml と cd.yml の `actions/checkout` を v4 から v7 へ、`actions/setup-node` を v4 から v7 へ、`actions/cache` を v4 から v6 へ上げた。いずれも Node.js 20 を対象としており、GitHub 側が Node.js 24 で強制実行したうえで毎回 deprecation の annotation を出していた。強制実行は猶予であって恒久的な互換保証ではないため、 猶予が切れる前にこちらから版を上げる。 版だけを上げ、ステップの構成・キャッシュキー・`node-version` は触っていない。 同時に動かすと CI が落ちたときに原因が版なのか構成なのか切り分けられなくなる。 ci.yml と cd.yml を同じ変更に含め、同じ action の版が二つのワークフローで 食い違う状態を残さない。 破壊的変更のうちこの repo に当たりうる 3 点はいずれも影響しないことを確認した。 `setup-node` の自動キャッシュは `package.json` に `packageManager` フィールドが 無いため作動せず、既存の `actions/cache` ステップと衝突しない。`checkout` v7 の fork PR ブロックは `pull_request_target` / `workflow_run` が対象で、ci.yml は `push` / `pull_request`、cd.yml は `release` 発火のため当たらない。runner の 最低版要件は GitHub ホストの `windows-latest` / `ubuntu-latest` のみを使って いるため問題にならない。 `dtolnay/rust-toolchain@stable` はブランチ参照のため対象外。 `tauri-apps/tauri-action@v0` は別軸のため #37 に分ける。 Refs #36 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
smileygames
commented
Aug 21, 2026
smileygames
left a comment
Member
Author
There was a problem hiding this comment.
セルフレビュー(auto モード / 人間チェックなし)
完了条件の照合
| #36 の完了条件 | 結果 |
|---|---|
| 3 つが移行先の版になっている | 満たす。checkout@v7 / setup-node@v7 / cache@v6 |
| CI が pass し、Node.js 20 の deprecation 警告が消えている | 満たす。下の実測を参照 |
cd.yml の actions/* が ci.yml と同じ版に揃っている |
満たす。差分上で両ファイルとも同一の版 |
制約の照合
- 版を上げるだけ — 満たす。差分は 8 行すべてが
uses:行であり、ステップ構成・キャッシュキー・node-versionに変更はない。 - ci.yml と cd.yml を同じ PR で上げる — 満たす。版の食い違いは残っていない。
- cd.yml は release 発火のため PR では走らない — 差分による確認で代替。ci.yml と同一の版であることを上で照合済み。
検証(親側で独立に実測)
- CI(
CI/check)いずれもd7d4fecで pass。 - 当該 check-run の annotation 数を API で直接取得し、0 件であることを確認した。deprecation 警告は残っていない。完了条件の「警告が消えている」を推定ではなく実測で閉じている。
スコープ
変更ファイルは #36 の対象ファイル一覧と一致。tauri-apps/tauri-action@v0 は #37 へ分離済み、dtolnay/rust-toolchain@stable はブランチ参照のため対象外。いずれも issue 本文の記載どおりで、超過も不足もない。
指摘
なし。
リリース種別
patch と判定する。CI/CD 設定のみであり、配布されるアプリの挙動に観測可能な変化はない(rules/operations/release-version-rule.md)。
自己レビュー通過。auto モードのため人間チェックはなく、このままマージへ進む。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
影響範囲
CI/CD ワークフローのみ。
.github/workflows/ci.ymlと.github/workflows/cd.ymlのactions/*の版を上げる。アプリケーションのコード・依存・ビルド構成には触れていない。変更
actions/checkoutv4v7actions/setup-nodev4v7actions/cachev4v6いずれも Node.js 20 を対象としており、GitHub 側が Node.js 24 で強制実行したうえで毎回 deprecation の annotation を出していた。強制実行は猶予であって恒久的な互換保証ではないため、猶予が切れる前に版を上げる。
dtolnay/rust-toolchain@stableはブランチ参照のため対象外。tauri-apps/tauri-action@v0は Node の deprecation とは別軸のため #37 に分ける。制約の遵守
node-versionは変えていない。同時に動かすと、CI が落ちたときに原因が版なのか構成なのか切り分けられなくなるため。検証
actions/checkout@v7/actions/setup-node@v7/actions/cache@v6)。setup-nodeの自動キャッシュはpackage.jsonにpackageManagerフィールドがあるときに作動する。この repo には当該フィールドが無いことを確認済みで、node_modulesを明示的に持つ既存のactions/cacheステップとは衝突しない。checkoutv7 の fork PR ブロックはpull_request_target/workflow_runが対象。ci.yml はpush/pull_request、cd.yml はrelease発火のため当たらない。windows-latest/ubuntu-latestのみを使っているため問題にならない。actions/*が ci.yml と同じ版に揃っていることの差分確認による。Closes #36