Skip to content

Releases

Release v0.1.42

Choose a tag to compare

@github-actions github-actions released this 11 Oct 11:07

PDFCompare Local v0.1.42

Обмен ручными решениями AI-отчёта между коллегами.

До сих пор решения по зонам («Правка / Проверить / Шум») и поправленные контуры хранились только в браузере
того, кто их принял, и в ссылке между листами. Коллега, получивший ZIP отчёта, их не видел.

На странице обзора AI-отчёта появились кнопки «Сохранить решения» и «Загрузить решения». Первая скачивает
JSON-файл с решениями и контурами, вторая загружает такой файл в открытый отчёт. Решения привязаны к зонам
отчёта, а не к папке, в которую он распакован, поэтому файл подходит к любому экземпляру того же отчёта.
Записи, не относящиеся к зонам этого отчёта, пропускаются; страница сообщает, сколько загружено и сколько
пропущено. Файл другого формата не принимается.

Формат данных AI-отчёта не изменился. Уже выданные отчёты остаются в прежнем виде.

Release v0.1.41

Choose a tag to compare

@github-actions github-actions released this 11 Oct 08:44

PDFCompare Local v0.1.41

Ручная доработка AI-отчёта на странице листа.

Решение по зоне принимается тремя кнопками «Правка / Проверить / Шум» прямо под заголовком зоны
(клавиши 1–3). Рядом видно, совпадает ли решение с выводом AI; вернуть вывод AI можно одним щелчком.
Зоны с ручным решением помечены в списке; зона, которую текущий фильтр скрыл бы после смены класса,
остаётся в списке, пока она выбрана.

Контур зоны, нанесённый AI, можно поправить: кнопка «Править контур» (клавиша E) позволяет сдвинуть
контур, перетащить вершины, добавить вершину двойным щелчком по ребру и удалить Alt+щелчком; Ctrl+Z
отменяет шаг, Esc завершает правку, «Вернуть контур AI» восстанавливает исходный. Детальный фрагмент
OLD / NEW строится по новому контуру. Поправленные контуры хранятся в браузере вместе с ручными
решениями и передаются ссылкой между листами; исходный вывод AI не меняется.

На каждой странице листа появилась кнопка «Листы» — перечень всех листов отчёта со счётчиками правок
и «проверить», главными объектами и превью OLD / NEW.

Исправлено: в AI-отчёте, построенном приложением, кнопки перехода между листами вели и на листы,
для которых нет ответа AI.

Формат данных AI-отчёта не изменился. Уже выданные отчёты остаются в прежнем виде.

Release v0.1.40

Choose a tag to compare

@github-actions github-actions released this 10 Oct 19:22

PDFCompare Local v0.1.40

Обновлён дизайн AI-отчёта.

В матрице листов вместо одинакового служебного текста в каждой строке теперь перечислены изменённые
объекты: красным — правки, оранжевым — наблюдения, которые AI не подтвердил и которые нужно проверить.
Список пересчитывается с учётом ручной оценки: если пометить зону шумом, она исчезает из сводки.
Над матрицей добавлен фильтр листов «Все / С правками / Проверить / Без правок».

На странице листа зоны подписаны названиями объектов. Для наблюдений со структурированным ответом
модели показаны значения OLD и NEW и последствие правки. Если номера ревизий неизвестны, подписи
«OLD · OLD» больше не выводятся.

Формат данных AI-отчёта не изменился. Уже выданные отчёты остаются в прежнем виде.

Release v0.1.39

Choose a tag to compare

@github-actions github-actions released this 10 Oct 18:35

PDFCompare Local v0.1.39

Обновлён дизайн итогового HTML-отчёта сравнения.

На главной странице под карточками статусов появилась полоса «Серьёзность изменений»: сколько листов
крупных, средних, малых, другого формата и без изменений. Нажатие на сегмент фильтрует матрицу.
Столбцы уровня, «заполнено %», «лист %», мм² и числа зон сортируются нажатием на заголовок.

Легенда теперь описывает фактическое правило: уровень листа — худший из трёх сигналов
(доля изменённого от нарисованного, площадь крупнейшей зоны, число зон). Поэтому лист с 6% изменений
может быть «крупным» из-за множества зон; подсказка на бейдже уровня показывает расчёт по этому листу.

Страница листа показывает метрики плитками, включая добавленную и удалённую площадь в цветах DIFF,
и заметки об автовыравнивании: компенсированный сдвиг листа или то, что выравнивание не применялось.

Исправлено:

  • уже совмещённый лист помечался как сбой выравнивания ECC; теперь это метод ALREADY_ALIGNED
    без предупреждения. ECC_FAILED остаётся для листов, где общего сдвига нет — обычно виды перенесены
    по-разному. Изображение для diff и метрики не меняются;
  • лист несовместимого формата показывал битое изображение DIFF и необработанный ключ SIZE_MISMATCH;
  • Enter на странице листа открывал слайдер даже при фокусе на кнопке «Вперёд» или ссылке;
  • в карточках документов выводилась заглушка «ред. ?»;
  • итоговые сообщения CLI не учитывали --lang.

Движок сравнения и метрики не изменились. report.json дополнен полями ecc_failed и notes_by_lang.

Release v0.1.38

Choose a tag to compare

@github-actions github-actions released this 09 Oct 10:18

PDFCompare Local v0.1.38

В AI-отчёте можно вручную изменить классификацию наблюдения на «правка», «шум» или «проверить»,
а затем вернуть исходный вывод AI. Сводка пересчитывается с учётом ручных решений. На главной странице
появился общий переключатель «По умолчанию показывать только правки на всех листах».

Решения сохраняются локально в браузере. Переходы кнопками отчёта переносят их между локальными HTML;
исходные JSON/ZIP, модель и серверный кэш не редактируются. Для другого браузера или новой копии
каталога отчёта локальное сохранение не гарантируется.

Просмотрщик поддерживает приблизительные контуры объектов вместо обязательных прямоугольных зон
и отдельное оранжевое обозначение неопределённости. Скрытые фильтром зоны скрываются и на чертеже.

В отдельной поставке Telegram-сервиса фрагменты служат для чтения листа, а находки формируются
по объектам. Красная метка требует читаемых OLD → NEW фактов изменения проекта. Печать, сглаживание,
шрифты и перенос неизменённого блока считаются оформлением; неподтверждённые выводы требуют проверки.
Кэш прежнего формата сохраняется, новый анализ требует новых обращений к провайдеру.

Приватный Telegram-сервис по-прежнему не входит в публичную сборку.

Release v0.1.37

Choose a tag to compare

@github-actions github-actions released this 09 Oct 08:13

PDFCompare Local v0.1.37

Версия синхронизирована с обновлением отдельно развёрнутого Telegram-сервиса.

На экране перед запуском теперь доступны обычное сравнение, AI всего комплекта и AI одной пары страниц.
Для всего комплекта пользователь выбирает Gemini/Qwen и подтверждает внешнюю передачу JPEG-фрагментов.
После сравнения автоматически проверяются все сопоставленные пары, включая неизменённые; добавленные
и удалённые страницы перечисляются отдельно без AI. Частичный результат не получает статус завершённого.

Публичная сборка по-прежнему не содержит приватный Telegram-сервис. Движок и форматы совместимы с v0.1.36.

Проверки: Windows/Linux private release gates, сценарии выбора всего комплекта без повторной загрузки,
полная автоматическая AI-обработка с имитацией провайдера и неизменённым листом, защита от повторного
запуска и регрессия частичного результата.

Release v0.1.36

Choose a tag to compare

@github-actions github-actions released this 09 Oct 07:53

PDFCompare Local v0.1.36

Исправлено ложное завершение MCP-сравнения при параллельной обработке больших комплектов.

  • Python spawn повторно импортировал модуль worker в каждом дочернем процессе. Эти процессы перезаписывали worker.json своим PID. После завершения дочернего процесса MCP мог ошибочно объявить основной worker погибшим и удалить ещё используемый временный отчёт.
  • Идентификатор публикует только основной процесс, до тяжёлых импортов. Дочерние процессы сохраняют его без изменений. Проверка PID по времени создания и безопасная отмена сохранены.
  • Очистка повторно читает статус после обнаружения завершившегося процесса, чтобы не заменять уже записанное completed ошибкой из устаревшего снимка.

Включены улучшения v0.1.35: уникальное обозначение DWG в штампе сохраняет соответствие страниц при изменении формата бумаги.

Проверки: Ruff, mypy, регрессии spawn-импорта и гонки очистки, полный набор тестов; полный серверный прогон комплекта больших чертежей с несколькими worker.

Release v0.1.35

Choose a tag to compare

@github-actions github-actions released this 09 Oct 07:39

PDFCompare Local v0.1.35

Сопоставление одного чертежа после изменения формата бумаги.

  • Движок извлекает однозначное обозначение DWG из физической области правого нижнего штампа. Уникальное совпадение в обоих документах вместе с общим текстом позволяет сохранить пару OLD/NEW даже при другом соотношении сторон.
  • Повторяющиеся, противоречивые и отсутствующие обозначения сохраняют обычные проверки размеров и содержимого. Ссылки на другие чертежи вне штампа не используются как идентичность страницы.
  • При несовместимом формате отчёт сохраняет оба исходных растра с пометкой size_mismatch и подтверждённым обозначением. Изображения не растягиваются; физические зоны исключения и эффективный DPI сохраняют прежнюю семантику.

Проверки: Ruff, mypy, полный набор регрессий и тесты извлечения обозначений, неоднозначных совпадений и изменения формата бумаги.

Release v0.1.34

Choose a tag to compare

@github-actions github-actions released this 08 Oct 15:23

PDFCompare Local v0.1.34

Явное сравнение одной пары страниц в движке и MCP.

  • preview_pdf_comparison и start_pdf_comparison принимают force_single_pair=true. Каждый входной PDF должен содержать ровно одну страницу.
  • Выбранные страницы сравниваются между собой, без автоматического поиска соответствий. Это позволяет проверять выбранную пару даже при больших различиях между ревизиями.
  • Физические зоны исключения, эффективный DPI, лимит мегапикселей и отмена сохраняют прежнее поведение. По умолчанию сопоставление остаётся автоматическим.

Проверки: Ruff, mypy, регрессионные тесты и отдельные проверки явной пары и отклонения многостраничных входов.

Release v0.1.33

Choose a tag to compare

@github-actions github-actions released this 08 Oct 08:13

PDFCompare Local v0.1.33

Обновление безопасности зависимостей.

  • PyJWT обновлён до 2.15.1 в runtime и сборочном окружении.
  • urllib3 обновлён до 2.8.0 в окружении проверки и сборки.
  • Оба hash-lock обновлены. Проверка известных уязвимостей по-прежнему блокирует выпуск небезопасной сборки.

Дистрибутивы: EXE, portable ZIP, установщик и SHA256SUMS.txt.