922 B
All 390 tests pass and clippy is clean with zero warnings.
Summary
Implemented the mapping of reasoning_effort to Anthropic's output_config.effort in three TDD steps:
-
Added two failing tests —
build_api_request_maps_reasoning_effort_to_output_config(assertsoutput_config == Some({"effort": "medium"})) andbuild_api_request_omits_output_config_when_no_reasoning_effort(assertsoutput_config.is_none()). -
Added
output_config: Option<serde_json::Value>field to theApiRequeststruct (withskip_serializing_if), and set it toNonein all existing construction sites. At this point Test B passed and Test A failed, proving the bug. -
Mapped
reasoning_effort→output_configinbuild_api_requestby computingoutput_configfromrequest.reasoning_effort(mirroring the OpenAI provider pattern) and wiring it into theApiRequestconstruction. Both tests now pass.