Skip to content

[Feature] codex_session を session resume 方式にして全ログ再送をやめる #164

@a2m-m

Description

@a2m-m

Background / Why

codex_session.shbuild_prompt(L111-)は reply のたびに cat "${log_file}" で全会話ログを再送しており、reply 回数に比例してプロンプトが肥大化する。#146 でバナー混入は解消したが、全ログ再送による肥大化は別途残る。

Related Issues

Scope(やること)

  • codex exec resume <session_id>--last 対応)を用い、reply 時は新規メッセージのみ送る差分送信に切り替える
  • start 時に codex 側 session id を取得・保存する(stderr バナーの session id: 行 or 別手段)
  • 既存の log ファイル(人間可読の会話記録)は維持しつつ、codex への送信は差分のみにする

Out of Scope(やらないこと)

Approach(方針)

#146 の調査結果: codex exec resume <id> / resume --last が利用可能で差分送信は技術的に可能。ただし session id の取得・保存と reply フローの作り替えが必要で、全呼び出し元(/review・/research・/issue-lint・/plan)に影響するため独立 Issue として扱う。

Acceptance Criteria

  • reply 時に全ログ再送ではなく codex exec resume で新規メッセージのみを送る
  • codex session id を start で取得・保存し reply で利用する
  • reply を複数回繰り返してもプロンプト送信量が会話長に比例して増えない(差分送信)リグレッションテストがある

Risks / Rollback

  • Risk: resume の挙動差・session id 取得失敗時のフォールバック設計
  • Rollback: 全ログ再送方式へ revert する

Test Plan

  • 擬似 codex で resume 呼び出し時の引数(session id・差分のみ)を検証する

Commit Plan

  • Commit 1: start で session id を取得・保存
  • Commit 2: reply を resume 差分送信に切替+テスト

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfeature新機能・改善scope/codexCodex統合に関するIssuescope/harnessハーネス(hooks/skills/agents 等の開発基盤)強化

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions