Skip to content

ci: Goキャッシュを軽量化し文書変更のWindows検証を省略 - #15

Merged
milkeclair merged 3 commits into
mainfrom
ci/faster-checks
Nov 12, 2026
Merged

milkeclair merged 3 commits into
mainfrom
ci/faster-checks

Conversation

@milkeclair

@milkeclair milkeclair commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

やったこと

  • Wails CLI導入時のGo依存とビルド領域をアプリから隔離し、完成したEXEをGo/OS/arch/Wails版ごとにキャッシュする。
  • 文書・Release手順のみの変更ではWindowsジョブを省略する。未知の変更・差分取得失敗・手動Releaseでは全検証する。
  • 差分判定の回帰テストとactionlintを軽量ジョブで毎回実行し、手順を更新する。Releaseの出力追記もShellCheckの検査に合わせてまとめる。

やらないこと

  • LLVMのキャッシュとテスト並列化は、まず支配的なGo準備と実行要否を改善するため対象外。

動作確認 (方法、事前準備、確認したこと、動画などの資料)

方法:

  • 実Gitの一時リポジトリで変更検出の回帰テストを実行。
  • Bash構文・actionlint・actions-lock生成/verify・全差分を確認。
  • 実Windows CIを同一コミットで3回実行し、キャッシュ未作成・再利用2回を比較。

事前準備:

  • 改善前main e37f270のWindowsジョブは132秒。そのうちGo準備61秒、約440MiBキャッシュの復元が約44秒。
  • Wails CLIとアプリのキャッシュパスを分け、従来キャッシュを引き継がない構成。

確認したこと:

  • 変更検出の10テストが成功。文書・アプリ・混在・削除・rename・異常SHA・手動Releaseを確認。
  • actionlint、Bash構文、差分、actions-lock生成/verifyに成功。新規Actionはlockfileで固定。
  • Windows CIは初回・再利用2回とも成功。Goテスト・vet、フロント175件・書式検査、EXEビルド・版情報・checksumを確認。
  • #14の実差分は通常CIでWindows省略、手動Releaseでは全検証となることを確認。

エビデンス:

  • GitHub CIの実行時間・cache容量・成功状態をログで比較する変更。アプリ画面の挙動は変わらず、画面動画はレビューに寄与しないため、CIログと計測値を記載する。

その他 (レビュワーへの注意点など)

  • CI全体(待ち時間を含む)は改善前mainの137秒に対し、再利用時126秒・133秒。Windowsジョブは132秒から112秒・117秒。Go準備は61秒から26秒・28秒。hosted runnerのばらつきを含む今回の観測値。
  • Goキャッシュは約440MiBから約99MiB、別のCLIキャッシュは約32MiB。Goキャッシュ復元は約44秒から約5秒。
  • キャッシュ未作成の初回はWindows235秒・CI全体249秒。PRキャッシュはmainから使えないため、取り込み後の初回もキャッシュ作成が必要。
  • 軽量ジョブは7〜8秒で成功。文書のみのWindows省略は実Gitで検証済みで、実mainでの確認は取り込み後。
  • 手動Releaseは常にWindows全検証。新しいRelease公開は今回の検証対象外。

CLIのmodule/build領域を一時領域へ隔離し、Go・OS・arch・Wails版ごとの実行ファイルを保存する。アプリ用Goキャッシュのパスも分けて、CLI依存を含む従来の約440MiBのキャッシュを引き継がない。
差分がREADME・docs・Release workflowだけならWindows jobを省略する。未知の変更や比較失敗、手動Releaseでは全検証し、変更検出テスト・actionlint・actions-lockは毎回実行する。
常設したactionlintのShellCheck検査に合わせ、同じGITHUB_OUTPUTへの連続した追記を一つのリダイレクトへまとめる。
@milkeclair milkeclair self-assigned this Nov 12, 2026
@milkeclair milkeclair added the enhancement New feature or request label Nov 12, 2026
@milkeclair
milkeclair marked this pull request as ready for review November 12, 2026 09:17
@milkeclair
milkeclair merged commit 4cefca0 into main Nov 12, 2026
6 checks passed
@milkeclair
milkeclair deleted the ci/faster-checks branch November 12, 2026 09:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant