Skip to content

レビュー要求を内部キューで保持し、レビュー完了後に Codex を更新する #382

Description

@lynnswap

目的

「後でアップデート」を選んだ後もレビュー要求を受け付け、CodexReviewKit 内部で待機させる。実行中レビューが終わったら Codex を更新して app-server だけを再起動し、同じ MCP セッションとジョブ ID で待機レビューを実行する。

完了条件

  • 新規要求を拒否せず、Kit 側のキューと通常の MCP 完了待機で保持する。更新専用の再送・待機判断を LLM に要求しない。
  • 更新を一度だけ実行し、Monitor と MCP サーバーは存続する。失敗時も受付済みジョブを失わない。
  • 待機ジョブの状態参照・キャンセル、受付順、履歴保存、既存の並行実行を保つ。
  • 起動時と起動から8時間ごとに自動チェックする。設定画面から同じ checker を手動実行し、確認結果を表示する。
  • 既存の540秒の MCP 待機上限は維持し、上限に届いた場合は同じジョブを review_await で待てる。
  • Preview と回帰テストを追加し、各 Ready PR をローカル・リモートレビューと CI 成功後に main へ統合する。

2026-09-26 に承認された Docs/deferred-codex-update-design.md に従う。依存する実装単位は sub-issue の順で統合する。

処理フロー

sequenceDiagram
    participant L as MCP クライアント
    participant S as CodexReviewStore
    participant C as app-server
    participant U as Codex 更新処理
    Note over S: 「後でアップデート」を選択
    L->>S: review_start(B)
    Note over S: B をキューで保持し、MCP 呼び出しを待機
    C-->>S: 実行中レビュー A の完了
    Note over S,C: A の結果保存と後片付けを完了し、旧プロセスを終了
    S->>U: codex update を一度実行
    U-->>S: 更新結果
    S->>C: 現在の CLI から app-server を起動・初期化
    S->>C: B を開始
    C-->>S: B の最終結果
    S-->>L: review_start(B) の結果
Loading

B の要求は Kit 内部で保持し、更新待ちを理由に LLM へ再送や専用の待機判断を要求しません。既存の540秒の待機上限に達した場合だけ、同じジョブを review_await で待てます。

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions