diff --git a/cmd/core-runtime/main.go b/cmd/core-runtime/main.go index 43a5c94..135d82d 100644 --- a/cmd/core-runtime/main.go +++ b/cmd/core-runtime/main.go @@ -1817,20 +1817,14 @@ func researchFindingMatchesIntent(query string, finding epistemics.ResearchFindi if !nearestFlightQuery(query) { return true } - evidence := strings.ToLower(strings.Join([]string{ - finding.Source.Title, - finding.Source.Publisher, - finding.Source.Locator, - finding.Statement, - finding.Excerpt.Text, - }, " ")) - travelEvidence := strings.Contains(evidence, "рейс") || - strings.Contains(evidence, "вылет") || - strings.Contains(evidence, "авиабил") || - strings.Contains(evidence, "аэропорт") || - strings.Contains(evidence, "самолет") || - strings.Contains(evidence, "самолёт") || - strings.Contains(evidence, "расписан") + displayedExcerpt := strings.ToLower(humanResearchExcerpt(query, finding.Excerpt.Text)) + travelEvidence := strings.Contains(displayedExcerpt, "рейс") || + strings.Contains(displayedExcerpt, "вылет") || + strings.Contains(displayedExcerpt, "авиабил") || + strings.Contains(displayedExcerpt, "аэропорт") || + strings.Contains(displayedExcerpt, "самолет") || + strings.Contains(displayedExcerpt, "самолёт") || + strings.Contains(displayedExcerpt, "расписан") if !travelEvidence { return false } diff --git a/cmd/core-runtime/main_test.go b/cmd/core-runtime/main_test.go index db5eb1c..3034495 100644 --- a/cmd/core-runtime/main_test.go +++ b/cmd/core-runtime/main_test.go @@ -52,7 +52,7 @@ func TestNearestFlightEvidenceRequiresBothRouteEndpointsWhenKnown(t *testing.T) if !researchFindingMatchesIntent(query, matched) { t.Fatal("route evidence with both endpoints was rejected") } - unrelated := epistemics.ResearchFinding{Source: epistemics.Source{Title: "Рейсы Москва — Казань", Locator: "https://example.test/moscow-kazan"}, Excerpt: epistemics.SourceExcerpt{Text: "Ближайшие к Казани города и расстояние до них."}} + unrelated := epistemics.ResearchFinding{Source: epistemics.Source{Title: "Рейсы Москва — Казань", Locator: "https://example.test/moscow-kazan"}, Excerpt: epistemics.SourceExcerpt{Text: "Рейсы Москва — Казань — Ближайшие к Казани города; цена указана ориентировочно."}} if researchFindingMatchesIntent(query, unrelated) { t.Fatal("one-ended travel evidence was accepted") }