Skip to content

cross-refactoring: 最終ゲートの CI の待ち(予算 30 分のうち 13.4 分)を想定最大時間の勘定から外し、別の上限で待つ #2203

Closed as not planned

Description

@takemi-ohama

何が起きているか

テストの戦略が local-scoped-ci-whole(全体テストを CI に任せる)のとき、最終ゲートは CI の結論を待つ。その待ちの見込み(CI の壁時計)が、想定最大時間の中から常に確保されている。

PR #2192(2026-10-30、予算 30 分)のリファクタリング計画の「時間の上限」:

値 中身
確かめの開始の締め切り = H − 確かめの見込み 13:04:54
想定最大時間の終わり H 13:18:18
確かめの見込み(秒。最終ゲートの確かめ 1 回) 804
入力 CI の壁時計 c 804.0 / 戦略 local-scoped-ci-whole

30 分のうち 13.4 分が CI の待ちに確保され、実装に使えた時間は 5.09 分だった。PR #2178(同じく 30 分)も 616 秒を確保し、使えた時間は 6.85 分だった。

CI の待ちの間、cross-refactoring の CLI は何もしていない。待ちを予算に入れても、実装の質は上がらず、実装の時間が減るだけである。

提案

CI の待ちを想定最大時間の勘定から外し、別の上限で待つ。

  • 予算(想定最大時間)は、手元で手が動く時間(提案・計画・実装・検証・最終ゲートの修正)だけで勘定する
  • 最終ゲートの CI の待ちは、既にある「CI の待ちの上限」で打ち切る
  • 落ちたときの扱いは今どおり。原因の項目だけを取り消し、最終ゲートの修正を試みる
  • リファクタリング計画には、手元の作業の終わりと CI の待ちの終わりを別の行で載せる

受け入れ条件

  • local-scoped-ci-whole の実行で、改修計画の時点で使える時間に CI の待ちの見込みが入っていない
  • CI が落ちたとき、今と同じく原因の項目だけが取り消され、最終ゲートの修正が 1 回は試みられる
  • 実行全体の所要(コメントを最後に書いた時刻 − 開始)が、想定最大時間 + CI の待ちの上限を超えない
  • 予算 30 分の実際の実行 1 回で、使えた時間が今(5〜7 分)より CI の待ちの分だけ増えていることを確かめる

関連

根拠のデータ

Activity

  1. takemi-ohama commented on Nov 3, 2026

    @takemi-ohama
    ContributorAuthor

    volareinc/carmo-system-console#19031 で同じ事象を確認した(ndf 10.27.14、戦略 local-scoped-ci-whole)。最終ゲートの CI の待ちの上限 1077 秒が laravel-tests の所要に足りず、打ち直しまでの待ちで締め切りを越えた。取り消し前のコミットで CI はすべて通っていたが、採用した 6 件が全件取り消された(手で revert を revert して復元)。

  2. takemi-ohama commented on Nov 3, 2026

    @takemi-ohama
    ContributorAuthor

    #2457 へ統合した(2026-11-03、利用者の指示)。予算はコーディング時間だけを数えて選定にだけ使い、予算を理由に打ち切らない。この Issue の記録と実績の分析は #2457 から参照する。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions