Shepherd and churn efficiency: five fixes from the 2026-11-01 data

オープン
#7,455 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
8/100
issue の種類
リファクタリング
明瞭さ
おおむね明確
活発さ
活発
技術スタック
github-actions, python
領域
ci-cd, devops

調査の方向性

The payload names the CI shepherd (reconcile) workflow, the final gate step that makes cancelled runs read as FAILURE, the shepherd:merge approval logic on merge-only updates, and the promoter-bot plan holds for data files; it does not name file paths, so locate them first. Each of the five items should land as its own PR referencing this issue, and the work is done when the cancelled-run rate and the holds data move as the weekly conflict job (#7444) would show. Start with the reconcile trigger and the gate step, since they are the two causes with the most evidence in the payload.

索引モデルが issue の本文から書いたものです。

説明

enhancement priority: medium scope:infra

Five efficiency fixes, found from one day's data on 2026-11-01. Each lands as its own PR "Part of" this issue.

  1. Calm the shepherd's reconcile runs. 319 of the 500 most recent cancelled runs were CI shepherd (reconcile), not real CI. It fires when a workflow finishes and newer runs cancel older ones, which likely explains most of the 22-28% cancelled rate on the dashboard.
  2. Stop cancelled runs showing as failed. A cancelled run's final gate step exits with an error, so GitHub marks it FAILURE. Workers were sent to fix these: 22 of 41 env fix runs from 10-29 to 10-31 found only cancelled checks. #7432 fixed how ci_digest reads them; this fixes the source.
  3. Keep approval on a merge-only update. A PR that only takes main loses shepherd:merge, goes to draft and re-runs CI, as #7441 did twice. If the patch is identical, skip that. Any real code change still needs re-approval. Owner approved starting this 2026-11-01.
  4. Stop holds on data files. Data files were 54 of the week's 75 file-level plan holds. Regenerated files should not hold at all, and same-estate slices should be scheduled apart.
  5. Break repeat fix loops. #7389 went through ten rounds of one blocked fix. After two rounds with the same cause, hold the PR and name the blocker.

Items 4 and 5 are in churn (promoter-bot). The weekly conflict job (#7444) tracks the effect.

主要言語
Python
スター
57
フォーク
11
平均マージ
1時間 26分
マージ済み PR(30日)
974

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

squid-protocol/gitgalaxy のほかの issue

squid-protocol/gitgalaxy の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。