From 6bd9acac6e61767946bf1334536dfa842deef543 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Tue, 25 Aug 2026 02:04:48 +0300 Subject: [PATCH] Route travel searches to current sources --- modules/interaction/domain/chat.go | 3 ++- modules/interaction/domain/chat_test.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/interaction/domain/chat.go b/modules/interaction/domain/chat.go index e9be08d..9c12838 100644 --- a/modules/interaction/domain/chat.go +++ b/modules/interaction/domain/chat.go @@ -479,7 +479,8 @@ func sourceDependentQuestion(primary, secondary interaction.SpeechAct, tokens [] currentCue := containsStemInTokens(tokens, "сейчас", "сегодня", "текущ", "актуаль", "последн", "прямо") observedStateCue := containsStemInTokens(tokens, "погод", "температур", "осад", "ветер", "курс", "цен", "стоим", "новост", "распис", "событ", "статус", "доступен", "работает", "запущен", "срок") || approximateToken(tokens, "погод", 2) placeSearchCue := containsStemInTokens(tokens, "ресторан", "кафе", "отел", "магаз", "мест", "ближ", "адрес", "организац") - return currentCue || observedStateCue || placeSearchCue + travelSearchCue := containsStemInTokens(tokens, "билет", "рейс", "поезд", "автобус", "перелет", "перелёт", "отправлен", "прибыт") + return currentCue || observedStateCue || placeSearchCue || travelSearchCue } // approximateToken catches ordinary keyboard slips without turning routing diff --git a/modules/interaction/domain/chat_test.go b/modules/interaction/domain/chat_test.go index 25b5655..75c49ef 100644 --- a/modules/interaction/domain/chat_test.go +++ b/modules/interaction/domain/chat_test.go @@ -155,7 +155,7 @@ func TestSourceDependentQuestionRequestsWebResearchWithoutEntityBranch(t *testin } func TestSourceDependentQuestionToleratesTyposAndPlaceSearch(t *testing.T) { - for _, message := range []string{"какая пугода в Сочи", "найди ближайший ресторан в Сочи"} { + for _, message := range []string{"какая пугода в Сочи", "найди ближайший ресторан в Сочи", "найди билеты до Ялты"} { candidate := BuildDeterministicCandidate(message, "", time.Unix(10, 0).UnixMilli()) seen := false for _, hint := range candidate.CapabilityHints { -- 2.54.0