Scope entity resolution reasoning effort independently

This commit is contained in:
Nico committed 2026-10-15 09:31:30 +02:00
1 parent 6c3415b13a
commit 69e4f3b349
6 files changed
+105 -4

No files matched your search

+34
View File
@@ -50,3 +50,37 @@ def test_identity_projection_keeps_readable_evidence_and_legacy_requests(stage):
assert value == context["sources"][key]
assert len(new["messages"][1]["content"]) < len(old["messages"][1]["content"]) / 2
assert data["output_schema"] == new["output_schema"]
@pytest.mark.parametrize("version,expected", [
("entity_resolution_plan_v1", "low"),
("entity_resolution_assessment_v3", "low"),
("case_interpretation_resolved_v3", "medium"),
("hypothesis_generation_v1", "medium"),
("investigation_v1", "medium"),
("entity_resolution_assessment_v3_suffix", "medium"),
])
def test_identity_override_is_scoped_at_http_transport(http_endpoint, version, expected):
url, seen, _ = http_endpoint
provider = ProviderConfig(id="test", model="fixture", base_url=url,
reasoning_effort="medium", entity_resolution_reasoning_effort="low", max_output_tokens=16384)
config = GatewayConfig((provider,))
query = request()
query['prompt_version'] = version
asyncio.run(LLMGateway(config).complete_round(query))
assert seen[0]['body']['reasoning_effort'] == expected
assert seen[0]['body'][provider.token_parameter] == 16384
assert provider.reasoning_effort == "medium"
assert config.snapshot()['providers'][0]['entity_resolution_reasoning_effort'] == "low"
@pytest.mark.parametrize("effort", [True, 8192, [], "unlimited"])
def test_invalid_identity_reasoning_override(effort):
with pytest.raises(LLMError, match="LLM_CONFIG"):
ProviderConfig(id="test", model="fixture", base_url="http://localhost",
entity_resolution_reasoning_effort=effort)
def test_omitted_identity_override_preserves_previous_snapshot():
provider = ProviderConfig(id="test", model="fixture", base_url="http://localhost", reasoning_effort="medium")
assert 'entity_resolution_reasoning_effort' not in GatewayConfig((provider,)).snapshot()['providers'][0]