Skip to content

Releases: codedevdev/lexpatrool

v1.7.1

Choose a tag to compare

@github-actions github-actions released this 03 May 13:31

release: LexPatrol 1.7.1

Обновления из GitHub (in-app)

  • Поток обновления без electron-updater: проверка релизов через публичный GitHub API, сравнение версий, выбор установочного ассета.
  • Модуль src/main/updater/: загрузка с прогрессом и отменой, проверка размера и SHA256, установка под Windows (в т.ч. helper через PowerShell), файл сессии обновления, отложение (snooze), лог updater.log.
  • Интерфейс: баннер о доступном обновлении, модалка установки, хук useInAppUpdateFlow; доработки настроек и моста IPC/preload под скачивание и запуск установщика.

Стабильность и безопасность (аудит)

  • Строгая проверка URL перед shell.openExternal (только http: / https: через разбор URL).
  • Один экземпляр приложения: requestSingleInstanceLock и обработка повторного запуска.
  • Предсказуемые ошибки при резервном копировании БД и прочие точечные правки по отчёту аудита; расширен typecheck на main-процесс при необходимости.

Оверлей и интерфейс

  • Вынесены/зафиксированы константы раскладки оверлея (overlay-layout-constants), правки оверлейного окна и связанных экранов (дашборд, государственный раздел, оверлей, настройки, оболочка приложения и навигация) в связке с горячими клавишами и подсказками.

Тесты и покрытие

  • Vitest и @vitest/coverage-v8: два профиля — полный набор с порогами coverage и «критический» (vitest.critical.config.ts) для CI.
  • Vitest 3 / test.projects: отдельные проекты node (main, shared, parsers, services) и jsdom (renderer); без устаревшего environmentMatchGlobs. В каждом проекте заданы resolve (алиас на stub electron), plugins и setupFiles, чтобы стабильно работали stub и @testing-library/jest-dom.
  • Stub Electron для юнит-тестов: в т.ч. расширенный globalShortcut и globalShortcutTestHooks (сброс, подмена register, учёт unregister / unregisterAll).
  • Юнит-тесты updater: checker (semver, выбор ассета, фикстуры API), validator, downloader, installer (чистая логика + моки spawn), state, snooze, logger.
  • Поиск и данные: search-tokens, article-number, retrieval и теги на in-memory БД с миграциями; сиды при необходимости.
  • Парсеры и утилиты: article-import-filter, html-element-plain-text; константы оверлея; backup-restore / restore-сценарии.
  • Горячие клавиши: validateAccelerator, applyOverlayGlobalShortcuts на stub; чтение/сохранение хоткеев в БД, humanize для Windows.
  • IPC: вынесен mergeAgentConfig в отдельный модуль с тестами на in-memory БД.
  • Renderer: smoke-тесты на @testing-library/react (в т.ч. RouteEmptyState, формат хоткеев в lib).

CI и релиз

  • ci.yml: на PR и push в основные ветки — параллельно lint и test; тесты с npm rebuild better-sqlite3; сначала критический coverage, затем полный; сборка Windows после успешных проверок; на тег v* — публикация GitHub Release с установщиками и .sha256.
  • release-windows.yml: только ручной workflow_dispatch для сборки артефактов без публикации релиза (теги обрабатываются в ci.yml).
  • После полного прогона тестов: vitest-coverage-report-action — комментарий в PR с summary из coverage/coverage-summary.json; в артефакт coverage добавлены coverage-summary.json и coverage-final.json (включая coverage/critical/, если файлы есть).
  • Краткий блок Coverage в summary job для ссылки на HTML-отчёт в артефакте.

Документация

  • README: команды проверки (verify, тесты, coverage), описание CI, опциональные секреты; актуализация под новый пайплайн и обновления.

Версия

  • Версия приложения: 1.7.1.

Full Changelog: v1.7.0...v1.7.1

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 30 Apr 19:15

release: LexPatrol 1.7.0

ИИ и RAG

  • Конвейер ответа: опциональная перепись вопроса под поиск, гибридный retrieval (ключевые слова + семантика), слияние кандидатов (RRF), опциональный LLM-реранкер, финальный ответ с ситуационным системным промптом; опциональные стадии отключаются в настройках.
  • Семантический поиск по статьям: локальное хранение эмбеддингов, отдельные настройки модели и провайдера для embeddings (наследование от основного или свой endpoint), перестроение индекса из раздела ИИ, инкрементальное обновление по изменённым статьям.
  • Улучшение подбора контекста: подсказки по кодексам из текста запроса, разбор номеров статей, учёт закреплённых из диалога статей.

Поиск по базе (FTS)

  • В полнотекстовый индекс включены краткое описание, санкции и наказание и ключевые поля метаданных (штрафы, УК, юрисдикция, звёзды и т.д.).
  • В индекс добавлено название документа — проще находить статьи по формулировкам вида «статья N … кодекса», даже если полное название есть только у документа.

Диалоги и настройки ИИ

  • Сохранённые диалоги привязаны к выбранному агенту (поле agent_id).
  • Расширены типы и IPC и preload под новый конвейер, embeddings и отчёты по retrieval.

Оверлей и интерфейс

  • Доработаны оверлейные окна (закрепы, шпаргалки, подборки, общий оверлей), горячие клавиши и вспомогательное tool-overlay окно.
  • Обновлены страницы заметок, подборок, шпаргалок и настроек в связке с оверлеем и новыми возможностями.

Техническое

  • Миграции БД: 006 (ai_conversations.agent_id), 007–008 (пересборка FTS), 009 (article_embeddings и dirty-триггеры).
  • Vitest и юнит-тесты для нормализации аббревиатур кодексов; правки tsconfig для main и node при сборке новых модулей.
  • README: актуализировано описание ИИ, RAG и настройки провайдеров и контекста.

Версия

  • Версия приложения: 1.7.0.

Full Changelog: v1.6.0...v1.7.0

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 29 Apr 20:29

release: LexPatrol 1.6.0

Импорт и парсинг

  • Превью разбиения и автоимпорт учитывают выбранный фильтр статей (все / с санкциями / без): в превью попадают те же блоки, что уйдут в БД.
  • Детектор «санкций» для фильтров: режимы balanced (только сильные маркеры) и strict (для «без санкций»); меньше ложных срабатываний на процессуальные формулировки («лишение свободы» в перечислениях и т.п.).
  • Разбиение форумного текста: «голые» номера без скобочного классификатора (R/F/A) не считаются заголовком УК; склейки «.Часть», «.Статья» после точки; однозначные главы в соседних статьях на одной строке (6.x, 7.x).

Метаданные статей

  • Из заголовка/тела: юрисдикция R/F/A (в т.ч. кириллические буквы в копипастах), флаг судимости CR, приоритет звёзд из табличного вида | N* и описательных фраз; категория тяжести по звёздам (лёгкая / средняя / высокая).

Подборки

  • Событие collections:changed: список подборок и оверлей подборок обновляются без ручного обновления после изменений из другого окна.
  • Страница подборки «Состав и поиск» (/collections/:id): состав, поиск по подборке, ссылка со списка подборок.
  • Читатель: чипы метаданных под заголовком, компактные индикаторы R/CR/звёзды в дереве статей; понятнее добавление в подборку (подпись, кнопка, тост, сообщения по кодам ошибки).

Оверлей

  • Закрепы: общий компонент ArticleMetaChips (как в читателе) — юрисдикция, тяжесть, звёзды, штрафы, УК и др.

Техническое

  • IPC: параметр фильтра в parse:resolve-article-splits и parse:auto-import-preview; рассылка collections:changed после CRUD подборок и состава.

Версия

  • Версия приложения: 1.6.0.

Full Changelog: v1.5.0...v1.6.0

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 29 Apr 16:55

release: LexPatrol 1.5.0

ИИ

  • Полная настройка разбита на «Подключение» (API, ключ, модель) и «Ответ модели» (температура, лимит токенов, расширение контекста); вкладка «Вопрос» убрана — проверка в «Быстром вопросе» на той же странице.
  • Агенты: только роль (название, описание, доп. инструкции); провайдер, Base URL и ключ задаются только в «Подключении» / «Ответ модели».
  • Контекст для модели: выдержки вокруг совпадения с запросом (не только начало статьи), лимит статей из одного документа, до 12 фрагментов; явная ветка при пустом поиске; заголовки фрагментов с номером статьи.
  • Многословный запрос: выборка текста по span совпадений (buildMatchSnippetMulti).

База знаний

  • При поиске блок «Все документы» показывает и документы с совпадениями по тексту статей (FTS), не только по названию.

Настройки

  • Раздел «Окна поверх игры и оверлей»: главное окно, оверлей закрепов (уровень поверх, прозрачность с %, клики в игру, быстрые кнопки).
  • Резервная копия: экспорт JSON и полный импорт с заменой базы; после импорта перезагрузка окон и хоткеев.
  • Сообщество: ссылки на Discord и Issues (GitHub) в настройках и в боковой панели.

Документация

  • README: разделы «Сообщество и поддержка», «Антивирусы и VirusTotal» (ложные срабатывания, эвристика).

Техническое

  • Единый список таблиц бэкапа (LEX_BACKUP_TABLE_ORDER), IPC db:restore, восстановление BLOB из JSON.
  • Исправление чёрного экрана на странице настроек (состояние notifyOnStartup).

Версия

  • Версия приложения: 1.5.0.

Full Changelog: v1.4.0...v1.5.0

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 29 Apr 13:40

release: LexPatrol 1.4.0

База и контент

  • Подборки статей (сменные коллекции) с назначением из читателя.
  • Шпаргалки: отдельные текстовые заметки в базе, раздел в приложении.
  • Теги на статьях, блок «См. также» между статьями.
  • Снимок текста статьи до обновления (previous_body) для контроля изменений.
  • Недавно открытые статьи в читателе (reader_recents).

Окна поверх игры

  • Отдельные окна «Шпаргалки» и «Подборки» с глобальными горячими клавишами (настраиваются в разделе «Настройки»).
  • Стабильный показ окон на Windows: корректная загрузка маршрута, ожидание готовности окна; опционально LEX_OVERLAY_NO_FOCUS.
  • Основной оверлей: убраны дублирующие блоки подборки/шпаргалки и лишние кнопки — доступ через горячие клавиши и главное окно.

Настройки и удобство

  • Таблица горячих клавиш: текущее сочетание, значение по умолчанию, предпросмотр при записи новой комбинации.
  • Окна шпаргалок/подборок: упрощённая шапка, подсказки внизу; двойной клик по названию шпаргалки копирует текст.

Читатель и навигация

  • Доработки читателя под новые сущности (подборки, см. также, недавние и др.).
  • Палитра команд (быстрый переход по разделам и действиям).

Импорт и безопасность

  • Уточнения на экранах импорта и встроенного браузера; безопасное открытие внешних ссылок (safe-external-url).
  • Правки разбора/сохранения статей и поиска (retrieval, article-split) под новую схему данных.

Прочее

  • Миграция БД 005_lexpatrol_features.sql.
  • Версия приложения: 1.4.0.
  • Удалён устаревший файл «Процессуальный кодекс.txt» из репозитория.

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 28 Apr 23:37

Full Changelog: v1.2.0...v1.3.0

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 28 Apr 22:39

Full Changelog: v1.1.2...v1.2.0

v1.1.2

Choose a tag to compare

@github-actions github-actions released this 28 Apr 20:48

Full Changelog: v1.1.1...v1.1.2

v1.1.1

Choose a tag to compare

@github-actions github-actions released this 28 Apr 19:28

Full Changelog: v1.1.0...v1.1.1

1.1.0

Choose a tag to compare

@codedevdev codedevdev released this 28 Apr 19:23
v1.1.0

LexPatrol 1.1.0