Исправить выдачу для открытия ОсОО и ЖЧК #14

Merged
admin merged 5 commits from fix/company-registration-search into main 2026-08-20 20:17:18 +00:00
Owner

Изменения

  • распознаётся намерение открыть или зарегистрировать ОсОО/ЖЧК
  • в выдачу поднимаются только действующие подтверждённые акты: положение о регистрации (230044970) и закон о хозяйственных товариществах и обществах (667)
  • остальные запросы используют прежнее полнотекстовое ранжирование
  • backend обновлён до 0.5.2

Проверки

  • PYTHONPATH=backend python3 -m unittest backend/test_minjust_cbd.py backend/test_minjust_normalization.py backend/test_minjust_opensearch.py backend/test_search_relevance.py -v
  • реальный локальный OpenSearch: RU и KY возвращают [230044970, 667]
## Изменения - распознаётся намерение открыть или зарегистрировать ОсОО/ЖЧК - в выдачу поднимаются только действующие подтверждённые акты: положение о регистрации (230044970) и закон о хозяйственных товариществах и обществах (667) - остальные запросы используют прежнее полнотекстовое ранжирование - backend обновлён до 0.5.2 ## Проверки - `PYTHONPATH=backend python3 -m unittest backend/test_minjust_cbd.py backend/test_minjust_normalization.py backend/test_minjust_opensearch.py backend/test_search_relevance.py -v` - реальный локальный OpenSearch: RU и KY возвращают `[230044970, 667]`
agent added 1 commit 2026-08-20 12:05:16 +00:00
Author
Owner

Найдены блокирующие замечания:

  1. Изменение находится только в backend/search/evaluate_relevance.py, который вызывается лишь CLI-оценкой (rg не находит других потребителей search_body/company_registration_clauses). Поэтому пользовательская поисковая выдача не меняется. Правило нужно применить в фактическом поисковом пути либо явно ограничить PR изменением evaluator.
  2. Intent определяется подстроками и даёт ложные срабатывания: ОсОО зарегистрирован?, кто зарегистрировал ОсОО и ЖЧК ачык маалымат все получают curated docs. Для юридического поиска это меняет топ выдачи не по намерению открытия/регистрации. Нужны более точные признаки намерения и отрицательные тесты для этих запросов.

Проверки из описания: 13 тестов проходят, но текущий тест покрывает только два положительных случая. Review завершён с блокирующими замечаниями.

Найдены блокирующие замечания: 1. Изменение находится только в `backend/search/evaluate_relevance.py`, который вызывается лишь CLI-оценкой (`rg` не находит других потребителей `search_body`/`company_registration_clauses`). Поэтому пользовательская поисковая выдача не меняется. Правило нужно применить в фактическом поисковом пути либо явно ограничить PR изменением evaluator. 2. Intent определяется подстроками и даёт ложные срабатывания: `ОсОО зарегистрирован?`, `кто зарегистрировал ОсОО` и `ЖЧК ачык маалымат` все получают curated docs. Для юридического поиска это меняет топ выдачи не по намерению открытия/регистрации. Нужны более точные признаки намерения и отрицательные тесты для этих запросов. Проверки из описания: 13 тестов проходят, но текущий тест покрывает только два положительных случая. Review завершён с блокирующими замечаниями.
agent added 1 commit 2026-08-20 12:08:49 +00:00
Author
Owner

Повторный review полного текущего PR: blocking.

Предыдущий блокер про недоступность поиска устранён: python -m search.query --help работает, CLI документирован, а evaluator вызывает общий search_documents. Заявленный набор проходит: 14 тестов.

Остаётся ложное срабатывание intent rule: как открыть счет ОсОО, как открыть филиал ОсОО и ЖЧК кантип банк эсебин ачуу получают boosted 230044970/667, хотя это запросы о счёте/филиале, а не об открытии компании. Проверил вызовом company_registration_clauses на текущем HEAD. Добавьте отрицательные тесты и сузьте правило так, чтобы оно сопоставляло действие именно с созданием/регистрацией ОсОО/ЖЧК.

Повторный review полного текущего PR: **blocking**. Предыдущий блокер про недоступность поиска устранён: `python -m search.query --help` работает, CLI документирован, а evaluator вызывает общий `search_documents`. Заявленный набор проходит: 14 тестов. Остаётся ложное срабатывание intent rule: `как открыть счет ОсОО`, `как открыть филиал ОсОО` и `ЖЧК кантип банк эсебин ачуу` получают boosted `230044970`/`667`, хотя это запросы о счёте/филиале, а не об открытии компании. Проверил вызовом `company_registration_clauses` на текущем HEAD. Добавьте отрицательные тесты и сузьте правило так, чтобы оно сопоставляло действие именно с созданием/регистрацией ОсОО/ЖЧК.
agent added 1 commit 2026-08-20 12:10:38 +00:00
Author
Owner

Финальный повторный review: blocking.

Последний конкретный блокер исправлен: как открыть счет ОсОО, как открыть филиал ОсОО и ЖЧК кантип банк эсебин ачуу больше не включают curated clauses; 14 unit-тестов проходят.

Но условие отсутствия ложных срабатываний пока не выполнено: токеновая эвристика по-прежнему продвигает 230044970/667 для нерелевантных запросов как создать договор для ОсОО, порядок создания логотипа ОсОО, ЖЧК кантип келишим түзүү и ЖЧК кантип логотип түзүү. Проверено на текущем HEAD через company_registration_clauses. Исключения для отдельных слов масштабируют blacklist, а не связывают действие с созданием компании. Нужен более точный положительный шаблон/разбор intent и эти отрицательные кейсы в тестах.

Финальный повторный review: **blocking**. Последний конкретный блокер исправлен: `как открыть счет ОсОО`, `как открыть филиал ОсОО` и `ЖЧК кантип банк эсебин ачуу` больше не включают curated clauses; 14 unit-тестов проходят. Но условие отсутствия ложных срабатываний пока не выполнено: токеновая эвристика по-прежнему продвигает `230044970`/`667` для нерелевантных запросов `как создать договор для ОсОО`, `порядок создания логотипа ОсОО`, `ЖЧК кантип келишим түзүү` и `ЖЧК кантип логотип түзүү`. Проверено на текущем HEAD через `company_registration_clauses`. Исключения для отдельных слов масштабируют blacklist, а не связывают действие с созданием компании. Нужен более точный положительный шаблон/разбор intent и эти отрицательные кейсы в тестах.
agent added 1 commit 2026-08-20 12:12:15 +00:00
Author
Owner

Финальный независимый review: non-blocking.

Предыдущие замечания устранены: точные RU/KY положительные шаблоны срабатывают на целевых запросах (как открыть ОсОО, ЖЧК ачуу тартиби) и не срабатывают на счёте, филиале, договоре, логотипе и остальных ранее указанных отрицательных кейсах. Общий query builder остаётся доступен через CLI и используется evaluator.

Полный заявленный набор: 14 тестов успешно. Новых блокирующих замечаний по текущему PR нет.

Финальный независимый review: **non-blocking**. Предыдущие замечания устранены: точные RU/KY положительные шаблоны срабатывают на целевых запросах (`как открыть ОсОО`, `ЖЧК ачуу тартиби`) и не срабатывают на счёте, филиале, договоре, логотипе и остальных ранее указанных отрицательных кейсах. Общий query builder остаётся доступен через CLI и используется evaluator. Полный заявленный набор: 14 тестов успешно. Новых блокирующих замечаний по текущему PR нет.
agent added 1 commit 2026-08-20 12:13:27 +00:00
Author
Owner

Итоговый независимый review после changelog-коммита: non-blocking.

CHANGELOG.md обновлён в разделе «Не выпущено», описывает только изменения этого PR и соответствует текущим CLI и правилам выдачи. Предыдущие исправления сохранены: целевые RU/KY запросы и отрицательные сценарии остаются покрыты. Полный набор проверок: 14 тестов успешно. Новых блокирующих замечаний нет.

Итоговый независимый review после changelog-коммита: **non-blocking**. `CHANGELOG.md` обновлён в разделе «Не выпущено», описывает только изменения этого PR и соответствует текущим CLI и правилам выдачи. Предыдущие исправления сохранены: целевые RU/KY запросы и отрицательные сценарии остаются покрыты. Полный набор проверок: 14 тестов успешно. Новых блокирующих замечаний нет.
admin merged commit 7a656cfc1a into main 2026-08-20 20:17:18 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: agent/akyldash#14