fix: trim opencode-go 422 salvage to the invariant set
Drop the bare "tool.content" pattern (any 400 mentioning tool.content in a non-list context would be sent through the image-strip path) and the profile flag snapshot test; the behaviour tests (classifier verdict + proactive downgrade) already pin the contract.
This commit is contained in:
@@ -169,8 +169,8 @@ _IMAGE_CORRUPT_PATTERNS = (
|
||||
_MULTIMODAL_TOOL_CONTENT_PATTERNS = (
|
||||
"text is not set", "tool message content must be a string", "tool content must be a string",
|
||||
"tool message must be a string", "expected string, got list", "expected string, got array",
|
||||
"tool_call.content must be string", "tool.content.str", "tool.content",
|
||||
"input should be a valid string",
|
||||
# Console Go / pydantic-v2 relays behind opencode-go (422, param ``messages.N.tool.content.str``, #104731).
|
||||
"tool_call.content must be string", "tool.content.str", "input should be a valid string",
|
||||
)
|
||||
|
||||
# Local-inference memory/resource-ceiling rejections (oMLX/MLX memory guard,
|
||||
|
||||
@@ -254,11 +254,3 @@ class TestOpenCodeGoFullKwargsIntegration:
|
||||
assert "extra_body" not in kwargs
|
||||
assert kwargs["reasoning_effort"] == "high"
|
||||
|
||||
|
||||
class TestOpenCodeGoVisionToolMessages:
|
||||
"""OpenCode Go provider profile declares supports_vision_tool_messages=False (#104731)."""
|
||||
|
||||
def test_supports_vision_true_and_tool_messages_false(self, opencode_go_profile):
|
||||
assert opencode_go_profile.supports_vision is True
|
||||
assert opencode_go_profile.supports_vision_tool_messages is False
|
||||
|
||||
|
||||
Reference in New Issue
Block a user