mirror of
https://github.com/Routstr/routstr-core.git
synced 2026-10-06 04:38:22 +00:00
Address review on PR #680: - calculate_discounted_max_cost now calls estimate_image_tokens_from_input on body["input"], so a Responses request carrying an input_image reserves image tokens (previously the estimator was defined but never called, reserving 0). - _estimate_input_image_tokens now fetches and measures remote original-detail images instead of blindly reserving the 36,000-token worst case (~117x over-reserve for a 512x512 image), falling back to the worst case only when the fetch fails or the file is a file_id reference. - Broken/undecodable data URLs now reserve the declared detail's worst case (36,000 for original) rather than the 85-token low-detail floor: base64 is validated and PIL failures fall back explicitly instead of silently using _get_image_dimensions' 512x512 default. - Restore test_discount_cannot_be_dodged_by_hiding_prompt_in_tools (dropped in the rebase) and add regression tests for the Responses input-image wiring, remote original-detail fetch, and broken-data-URL fallback.