Skip to content

サブエージェントの停止の hook が最後の応答を読む前に帳簿を書き、使用量を最後の応答 1 件分少なく数える #2576

Open

Description

@takemi-ohama

何を見つけたか

サブエージェントの停止の hook(plugins/ndf/scripts/lib/usage_capture.py の record_subagent)が会話の記録を読む時点で、最後の応答がまだ書かれていない。そのため帳簿の値が最後の応答 1 件分だけ少なくなる。

  • 会話の記録が残っているサブエージェント 204 件で、帳簿の最後の行と今の会話の記録を比べた。195 件で、帳簿の値がちょうど最後の応答 1 件分だけ少なかった
  • 出力トークンの和は、帳簿が会話の記録より 16.8% 少ない

どこで見つけたか

#1979 の設計(ループ lroot3 の周回 16、.worktrees/design/issue-1979 の issues/issue-1979-design.md、コミット 1cb1933)。読み手役の指摘を確かめる作業の中で見つけた。

なぜ今直さないか

#1979 の受け入れ条件(同じ message.id の最後の usage・2 回数えない・期間の境界・runtime: claude の work の行)の外にある。#1979 の設計では「一致の範囲の外」と明記し、この課題を参照する。

受け入れ条件

  • 1. 1 回だけ止まるサブエージェントで、帳簿の値が会話の記録の最後の応答まで含む
  • 2. 直し方(停止の後に読み直す・次の hook で差を書く・集計で会話の記録から補う、など)を比べて選んだ理由を残す
  • 3. 再現するテストがある

関連

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: ndf-skillNDF の Skill 本体bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions