Skip to content

test(local-agent-loop): Claude の途中使用量のテスト名を実装に合わせ、includePartialMessages の受け渡しを確かめる - #299

Merged
coji merged 1 commit into
mainfrom
feat/298-claude-partial-usage-tests
Oct 10, 2026
Merged

coji merged 1 commit into
mainfrom
feat/298-claude-partial-usage-tests

Conversation

@coji

@coji coji commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Summary

#297(ADR-0034)の最終レビューで残った、動作に影響しない指摘 2 件を直す。

  • claudePartialUsage のテスト名を実装(同じ応答は 1 回だけ、leg ごとに見えた最大の値で数える)に合わせ、値が減る通知で合計が下がらないことを確かめるテストを足した。
  • ClaudeProvider.call が onPartialUsage のあるときだけ includePartialMessages: true を provider に渡すことを、CLI を起動せずに確かめるテストを足した。そのために ClaudeProvider のコンストラクタに、claudeCode と generateText を差し替える省略可能な引数を設けた(既定値は今までと同じ関数で、差し替えるのはテストだけ)。

Closes #298

Changes

  • spec(codex 起草・レビュー APPROVE)、実装、受け入れ APPROVE、simplify(変更なし)、supervision COMPLETE。
  • 公開 API の変更と新しい設計判断はないため、ADR とドキュメントは変更なし(ADR-0034 の範囲内)。
  • 範囲外:途中使用量の書き込みが応答ごとに約 2 回になる点(ADR-0034 の Consequences に記載済み)。

Test plan

  • テスト名が、同じ応答を一度だけ数え、各 leg の観測最大値を使うと表している。
  • 同じ応答の使用量が減る通知では、途中使用量の更新が報告されない。
  • 減少通知の後に別の応答を追加しても、合計は減少前の最大値を使う。
  • onPartialUsage がある ClaudeProvider.call は、provider 設定に includePartialMessages: true を渡す。
  • onPartialUsage がない ClaudeProvider.call は、provider 設定に includePartialMessages を含めない。
  • 設定の受け渡しテストは実際の CLI を起動しない。
  • 通常の ClaudeProvider.call は従来の provider と結果生成関数を呼び、従来と同じ結果を返す。
  • pnpm validate が通る(648 tests pass)。

Review gate

Round 1(全差分): GO。reviewed head 69e0745316554cb168f2c767e9487fb57359be84、blocker 0 件。Codex(gpt-6-sol medium)と Opus(high)の 2 系統とも 8 観点で blocker なし。pnpm validate と CI(validate / test-node / test-browser)は通過。

Non-blocking(P3):

  • 呼び出しのテストが作った一時ディレクトリを消していない(同じファイルの既存テストと同じ作り)。
  • 呼び出しのテストはフラグを確かめるだけで、記録した onSdkMessage にストリームイベントを流して onPartialUsage まで届くかは確かめていない(その経路は claudePartialUsage の単体テストで確認済み)。

Generated with spec-implement-accept skill

🤖 Generated with Claude Code

https://claude.ai/code/session_013YE1FnUCruD4Mtwbjx3nyq

…ges の受け渡しを確かめる

Refs #298

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013YE1FnUCruD4Mtwbjx3nyq
@vercel

vercel Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Actions Updated
durably-demo Ignored Ignored Preview Oct 10, 2026 1:15pm UTC
durably-demo-vercel-turso Ignored Ignored Preview Oct 10, 2026 1:15pm UTC

@coji
coji marked this pull request as ready for review October 10, 2026 13:18
@coji
coji merged commit 244303e into main Oct 10, 2026
5 checks passed
@coji
coji deleted the feat/298-claude-partial-usage-tests branch October 10, 2026 13:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

local-agent-loop: Claude の途中使用量の読み方に合わせてテスト名を直し、includePartialMessages の受け渡しをテストする

1 participant