fix: recognize Dutch evolution questions
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-15 06:49:35 +02:00
parent beacdf2560
commit 06c86e91a0
3 changed files with 26 additions and 5 deletions
@@ -27,7 +27,7 @@ from app.services.vector_feature_service import VectorFeatureService
class GeoAssistantService:
HISTORY_KEYWORDS = (
"histor",
"evolutie",
"evolu",
"verander",
"trend",
"vroeger",
@@ -38,6 +38,11 @@ class GeoAssistantService:
"gestegen",
)
@classmethod
def history_requested(cls, question: str) -> bool:
normalized = question.casefold()
return any(keyword in normalized for keyword in cls.HISTORY_KEYWORDS)
def __init__(self, settings: Settings | None = None):
self.settings = settings or get_settings()
@@ -272,7 +277,7 @@ class GeoAssistantService:
temporal_series: list[AssistantTemporalSeries] = []
temporal_context: list[dict[str, Any]] = []
include_history = any(keyword in payload.question.casefold() for keyword in self.HISTORY_KEYWORDS)
include_history = self.history_requested(payload.question)
for key, observations in self._series(datasets):
first = observations[0]
last = observations[-1]
@@ -86,6 +86,18 @@ def test_geo_assistant_rejects_model_that_is_not_installed(monkeypatch) -> None:
assert exc_info.value.code == "OLLAMA_MODEL_UNAVAILABLE"
@pytest.mark.parametrize(
"question",
[
"Hoe evolueerden bevolking en bosoppervlakte?",
"Toon de historische ontwikkeling van water.",
"Welke trend zien we sinds 2013?",
],
)
def test_geo_assistant_recognizes_dutch_historical_questions(question: str) -> None:
assert GeoAssistantService.history_requested(question) is True
def test_geo_assistant_sends_grounded_context_without_thinking_trace(monkeypatch) -> None:
service = GeoAssistantService(ollama_settings())
project_id = uuid4()