Skip to content

issue-implement: CI 失敗時の修正→commit→再確認ループを明示する #37

Description

@hirokisakabe

Status: Ready

概要

issue-implement SKILL.md の step 10(CI 確認)で、CI 失敗時の対応が「ログを確認して修正し、追加 commit で対応する」とだけ記載されており、修正ループの上限・断念条件・断念後の挙動が定義されていない。これを明示して挙動を予測可能にする。

背景 / モチベーション

  • 現状の step 10 は「失敗したら直す」としか書いておらず、何回まで自動修正を試みるか、どのような失敗を「修正不能」と判断してユーザーへ委ねるか、が未定義
  • 上限なしで修正を繰り返すと、flaky test や根本的な設計問題に起因する失敗でもエージェントが無限ループに陥るリスクがある
  • ループ回数上限と断念条件を SKILL.md に明示することで、エージェントの挙動が一貫・予測可能になる

受け入れ条件

  • issue-implement SKILL.md の step 10 に、修正→commit→gh pr checks --watch の再確認ループが明示されている
  • ループの上限回数(例: 3 回)が記載されており、上限到達時はユーザーへ状況を報告して判断を仰ぐ挙動になっている
  • 「修正可能な失敗(lint エラー・型エラー等)」と「修正困難な失敗(flaky test・設計起因のテスト失敗等)」の区別が記載されており、後者はループを短縮してユーザーに委ねる方針が書かれている
  • CI が開始されないケース(コンフリクト)の既存記述がループ仕様と矛盾しない形で保持されている

スコープ外

  • ループ回数の動的調整(上限は固定値でよい)
  • CI ログの自動解析ツールやスクリプトの新規開発
  • GitHub Actions 以外の CI システムへの個別対応
  • flaky test の自動リトライ(CI 側の責務)

実装方針

issue-implement SKILL.md の step 10 のみを改訂する。追加するのはテキスト仕様のみで、コードや新規ファイルは不要。

  1. ループ構造(修正→commit→gh pr checks --watch→失敗なら繰り返し)を箇条書きで明示
  2. 上限回数を 3 回と定め、到達時の挙動(ユーザーへ失敗ログ・試行回数を報告し判断を仰ぐ)を記載
  3. 失敗種別の判断基準(lint/型エラーは修正継続、flaky/設計起因は即断念候補)を追記
  4. 既存の「CI が開始されない場合」の記述をループ仕様と整合する位置に移動または統合

参考

  • 現行 step 10: issue-implement SKILL.md L149–158

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions