Skip to content

fix: Renovate PRのTrackingを一律Closedにする - #5

Merged
shunsuke-shimomura merged 2 commits into
mainfrom
fix/renovate-tracking-by-pr-state
Aug 5, 2026
Merged

fix: Renovate PRのTrackingを一律Closedにする#5
shunsuke-shimomura merged 2 commits into
mainfrom
fix/renovate-tracking-by-pr-state

Conversation

@shunsuke-shimomura

@shunsuke-shimomura shunsuke-shimomura commented Aug 5, 2026

Copy link
Copy Markdown
Member

背景

PR #4 で Renovate PR を検出できるようになったが、dry-run 実行で判定ロジックの問題が判明した。

失敗例(dry-run): https://github.com/ut-issl/sw-integration-task-list/actions/runs/30981776243/job/92227541642

ut-issl/issl-ubuntu-environment-setup#112: ... - autoclosed
  Status=Todo, Tracking=Closed → Tracked

autoclose された(未マージで CLOSED になった)PR がプロジェクト Status=Todo のまま残るため、従来の「Status が Done か」で判定するロジックが、すでに Closed だった Tracking を Tracked に引き戻していた。

方針

Renovate の PR は内容が議論の俎上に上がることがなく、手動でトラッキングする必要もない。したがって PR の状態(open/closed/merged)やプロジェクト Status に関わらず、Renovate 項目は一律 Tracking=Closed にするのが正しい。

修正内容

  • Renovate と判定した項目は無条件で Tracking=Closed に設定(既に Closed の項目はスキップ)。
  • 不要になった以下を削除して簡素化: GraphQL クエリの state / JQ の status 抽出、Tracked オプションの取得・検証、status-field-name input と STATUS_FIELD env。
  • 副次的に、autoclose 済み PR が Tracked へ復活する問題も解消。

テスト(合成フィクスチャ)

PR state 旧Tracking 結果
#112 autoclosed CLOSED Closed SKIP(復活しない)
#461 MERGED Tracked Closed
#470 OPEN none Closed(open でも Closed)
#469 MERGED none Closed

python3 yaml.safe_load / actionlint パス。

影響範囲

  • 本リポジトリの reusable workflow 1ファイルのみ。呼び出し側は @main 参照かつ status-field-name を渡していないため input 削除の影響なし。マージ後の次回スケジュール実行から有効。

GraphQL APIではRenovate botのauthor.loginは"renovate"(Bot型)で返るが、
フィルタが"renovate[bot]"(REST/UI表記)と比較していたため常に不一致となり、
Status=DoneのRenovate PRがあってもTrackingがClosedに更新されず素通りしていた。
両表記にマッチさせ、content=nullの項目でも落ちないよう修正。
@github-actions github-actions Bot added ci ⚙️ Changes to CI workflows sys::SE システムズエンジニアリング sys::SW ソフトウェア labels Aug 5, 2026
Renovate PRは議論・手動トラッキングの対象にならないため、PRの状態
(open/closed/merged)やプロジェクトのStatusに関わらず、Renovate項目は
一律Tracking=Closedにする。既にClosedの項目はスキップ。

これにより、autocloseされた(未マージCLOSEDの)PRがTrackedへ復活する
問題も解消される。不要になったstate/status/Trackedの参照およびStatus
関連のinput/env(status-field-name)を削除して簡素化。
@shunsuke-shimomura
shunsuke-shimomura force-pushed the fix/renovate-tracking-by-pr-state branch from b274d98 to fcb67d1 Compare August 5, 2026 06:51
@shunsuke-shimomura shunsuke-shimomura changed the title fix: Renovate PRのTracking判定をPR実状態ベースに変更(autoclose対応) fix: Renovate PRのTrackingを一律Closedにする Aug 5, 2026
@shunsuke-shimomura
shunsuke-shimomura merged commit 3c584d9 into main Aug 5, 2026
6 checks passed
@shunsuke-shimomura
shunsuke-shimomura deleted the fix/renovate-tracking-by-pr-state branch August 5, 2026 06:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci ⚙️ Changes to CI workflows sys::SE システムズエンジニアリング sys::SW ソフトウェア

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant