The TransformedTool.from_tool() docstring previously claimed output_schema=False would "disable output schema and structured outputs," but this was never implemented. Passing False would either raise a Pydantic validation error (on the Tool model) or get converted to None which is indistinguishable from "inherit from parent."
A proper implementation needs a way to distinguish "no schema was specified" (NotSet → inherit) from "explicitly disable structured output" (False → strip structured_content from results). This requires either a sentinel value that survives Pydantic model storage or a separate boolean field.
The false documentation was removed in #3823 to avoid misleading users.
🤖 Generated with Claude Code
The
TransformedTool.from_tool()docstring previously claimedoutput_schema=Falsewould "disable output schema and structured outputs," but this was never implemented. PassingFalsewould either raise a Pydantic validation error (on theToolmodel) or get converted toNonewhich is indistinguishable from "inherit from parent."A proper implementation needs a way to distinguish "no schema was specified" (
NotSet→ inherit) from "explicitly disable structured output" (False→ stripstructured_contentfrom results). This requires either a sentinel value that survives Pydantic model storage or a separate boolean field.The false documentation was removed in #3823 to avoid misleading users.
🤖 Generated with Claude Code