diff --git a/lib/active_agent/providers/anthropic/transforms.rb b/lib/active_agent/providers/anthropic/transforms.rb index 747ed2e0..c28f1305 100644 --- a/lib/active_agent/providers/anthropic/transforms.rb +++ b/lib/active_agent/providers/anthropic/transforms.rb @@ -436,6 +436,7 @@ def cleanup_serialized_request(hash, defaults, gem_object = nil) msg.delete(:id) msg.delete(:model) msg.delete(:stop_reason) + msg.delete(:stop_details) msg.delete(:stop_sequence) msg.delete(:type) msg.delete(:usage) diff --git a/test/providers/anthropic/transforms_test.rb b/test/providers/anthropic/transforms_test.rb index 3c223a7b..8e0f915d 100644 --- a/test/providers/anthropic/transforms_test.rb +++ b/test/providers/anthropic/transforms_test.rb @@ -434,7 +434,7 @@ def transforms test "cleanup_serialized_request removes response-only fields from messages" do hash = { messages: [ - { role: "assistant", content: "hello", id: "msg_123", model: "claude-3", stop_reason: "end_turn", type: "message", usage: { input_tokens: 10 } } + { role: "assistant", content: "hello", id: "msg_123", model: "claude-3", stop_reason: "end_turn", stop_details: nil, type: "message", usage: { input_tokens: 10 } } ] } @@ -443,6 +443,7 @@ def transforms assert_nil result[:messages][0][:id] assert_nil result[:messages][0][:model] assert_nil result[:messages][0][:stop_reason] + assert_nil result[:messages][0][:stop_details] assert_nil result[:messages][0][:type] assert_nil result[:messages][0][:usage] assert_equal "hello", result[:messages][0][:content]