Skip to content

v1.8.0

Choose a tag to compare

@teraxis teraxis released this 14 Sep 12:56
  • Автоматична звірка та взаємне доповнення записів із захистом від подвоєння сум при збереженні річних декларацій (код 888).
  • Індикатори джерела в інтерфейсі (бірюзові та помаранчеві бейджі) та аудит розбіжностей у системному журналі.
  • Фільтр «Усі виявлені об'єкти» та збереження зведених об'єктів:
    • Чекбокс у фільтрах розділів «Нерухомість», «Транспорт» та «Активи» для перегляду всіх об'єктів (включаючи деактивованих осіб чи сторонніх власників).
    • Збереження об'єднаних об'єктів для деактивованих суб'єктів без втрати зв'язків.
  • Оновлення розділу «Інтерпретація / Попередній перегляд»:
    • Перенесення кнопок експорту у верхню панель управління та згортання бічного сайдбару.
    • Групування джерел експорту у зручні картки по реєстрах.
  • Вдосконалення Хронології майна (Timeline):
    • Нова колірна схема (зелений — власність, оранжевий — користування, комбінований — спільне право).
    • Підтримка візуалізації реєстрових даних, оновлена стилізація заголовків і наконечників стрілок.
    • Нативні кастомні курсори перетягування (grab / grabbing) для горизонтальної навігації.

Виправлено

  • Парсинг PDF ДРФО:
    • Усунуто прилипання підсумкових рядків «Всього за рік» до нових квартальних записів.
    • Розрахунок вертикальних меж рядків через якірні лінії для запобігання зрізанню коду 888 та обрізанню багаторядкових описів.
  • Повна узгодженість майна між розділами:
    • Спільна логіка фільтрації об'єктів у «Нерухомості», «Хронології майна» та «Інтерпретації» для забезпечення ідентичної кількості об'єктів в усіх поданнях.
    • Відновлено заголовок «5. Майно» у структурі документа та попередньому перегляді.
  • Стабільність тестів та SQLite:
    • Ізоляція тестів SQLite у dedicated-колекцію SqliteStorageTestCollection для усунення гонки підключень при паралельному виконанні.

Змінено

  • Оновлено панель параметрів експорту та структуру бічного меню.

Видалено

v1.7.4 (2026-09-03)

Виправлено

  • Позначка у фільтрах «Випадків перетину кордону» більше не скидається одразу після натискання, а сам фільтр нарешті застосовується до таблиці.
  • Фільтр за особою в перетинах кордону більше не пропонує тих, кого в таблиці немає: після об'єднання двох осіб у переліку лишалися обидві, хоча довідка показує одну.
  • Фільтр, який нічого не знайшов, більше не забирає з собою таблицю разом із панеллю фільтрів — розділ лишається на місці з поясненням, і фільтр можна зняти.
  • Фільтри в «Членах сім'ї», «Близьких особах», «Довіреностях» і «Деталізованих доходах» більше не порожні: доти вони наповнювалися до того, як реєстри прочитані, і лишалися порожніми до кінця роботи.
  • Перший захід в «Інтерпретацію» після запуску показує довідку, а не порожнечу до виходу в інший розділ і повернення назад.
  • У «Параметрах експорту» над кожним реєстром стояла зайва порожня галочка без назви: картка Condemno показується лише у блоці «НАЗК».

Додано

  • Об'єднання осіб: накладна панель «Групи осіб» у розділі «Суб'єкти» для об'єднання записів, складання ПІБ з усіх варіантів написання, поширення тотожності на об'єкти нерухомості та дедупліковане зарахування доходів ДРФО.
  • Упорядкування списку «Суб'єктів» за заголовками стовпців: сортування за ПІБ, присутністю у звіті, кількістю баз та кількістю записів зі збереженням структури об'єднаних груп.
  • Групування джерел «Параметрів експорту»: картки різних форм одного реєстру (ДРФО, НАЗК, ЄДРТЗ, ВККС) зведено в єдині блоки відповідних реєстрів.

Змінено

  • Заголовок «Деталізовані доходи» відділений відступом зверху від попередньої таблиці згідно з параметрами шаблону DOCX.
  • У випадайці фільтра «Ознака» відображається код ознаки доходу разом із її розшифровкою з реєстрових записів.

v1.7.3 (2026-09-02)

Додано

  • У розділі «Суб'єкти» для кожної особи в меню дій («Дії», колонка 9) додано пункт «Перевірити ресурси» для примусової повторної перевірки на зовнішніх API-ресурсах (Condemno / НАЗК) в обхід локального кеша.

v1.7.2 (2026-09-02)

Виправлено

  • Виправлено аварійне завершення роботи застосунку (SIGABRT / System.IO.FileNotFoundException: Could not load file or assembly 'System.IO.Hashing') на macOS arm64 та інших платформах у compact / trimmed збірках при агрегації суб'єктів або натисканні «Перебудувати». Складання System.IO.Hashing захищене від тримінгу (TrimmerRootAssembly) та явно підключено у Peromat.App і Peromat.Cli.
  • Додано модульні тести для перевірки детермінованості генерації 16-значних XXH3-ідентифікаторів у CondemnoUidGenerator.

v1.6.0 (2026-08-22)

Виправлено

  • Зіставлення декларацій: реєстровий обʼєкт, який належить СТОРОННІЙ особі, більше не приписується до
    задекларованого. Власник був лише позитивним сигналом, тож ділянка чужої людини могла злитися з
    декларацією на самій площі (в межах 2%) та назві міста. Перевірка одностороння: декларація без
    власників або реєстровий запис без власників нічого не блокують — блокує лише випадок, коли обидві
    сторони називають людей і жодна не збігається.

  • Діагностика бачила лише записи, а блок джерела (параметри запиту) — ні. Мітка, що лишилася
    нерозпізнаною там, не повідомлялася нічим: саме так «Пошук за» весь час був відсутній у вивантаженні
    при мовчазному звіті. Тепер блок джерела теж сканується, а кількість ЗАПИСІВ не змінюється — на неї
    спираються всі регресійні заміри.

  • Зіставлення декларацій: земельна ділянка більше не зливається з будинком, що стоїть на ній.
    Площа будівлі та площа її ділянки — величини одного порядку, тож вони легко потрапляють у допуск
    2%; тип об'єкта був лише позитивним сигналом, тому тип, який ПРЯМО суперечив, нічого не коштував
    парі. На реальних даних задекларовану ділянку 422 було злито з адміністративним будинком 425,4 кв.м
    на самій лише площі та назві міста. Тепер клас об'єкта — така сама жорстка суперечність, як площа.

  • ДРРП: витяг тепер зберігає, ЯК шукали — «Пошук за: частковим співпадінням». Це окремий факт від
    переліку опитаних реєстрів, і не косметичний: частковий збіг розширює пошук і може повернути майно
    іншої особи зі схожим ПІБ, тобто міняє довіру до самого витягу. Ключ 639 «Спосіб зіставлення в
    пошуку».

  • Реєстр ключів: рядок, доданий вручну через пробіл замість табуляції, більше не втрачається — якщо
    рядок починається з цифр, номер однозначний. Рядок узагалі без номера на початку й далі
    повідомляється як дефект.

  • ДРРП: закрито останні прогалини теки. Видалення в журналі змін тепер розпізнається — реєстр пише
    «видалено», а код знав лише «вилучено», тож такі рядки лишалися поза описом змін. Іпотека зі
    старого Державного реєстру іпотек зберігає «Додаткові дані» — це поле, де стоїть генеральний
    кредитний договір, і його номери не траплялися більше ніде. Блок власників у журналі змін
    розкладається на осіб, тож орган видачі паспорта більше не губиться. Склеєна двома колонками мітка
    «Відсоток зносу: 15, Загальна» / «вартість нерухомого майна (грн): 55815» більше не показується як
    нерозпізнана: обидва числа й так зберігалися.

  • ДРРП, журнал змін: запис тепер зберігає, ЩО саме змінилося. Реєстр друкує це під підзаголовком
    «Опис змін:» окремим рядком на кожне поле («Іпотекодержатель: X змінено на Y»), а решта полів запису
    описує стан ДО зміни — тож ці рядки були єдиним свідченням нового значення, і вони нікуди не
    потрапляли. На іпотеці, перепроданій двічі, проміжний іпотекодержатель не існував у вивантаженні
    взагалі: ланцюг переходу права вимоги обривався посередині. Ключ 638 «Опис змін».

  • Реєстр ключів: два ключі, додані востаннє (636 «Реєстратор припинення», 637 «Дата, час перетину
    кордону транспортним засобом»), насправді не завантажувалися — у файлі назва була вклеєна в колонку
    номера, рядок не розбирався й мовчки пропускався. Перевірка невідомих ключів цього спіймати не
    могла: вона спрацьовує лише на ключі, які вивантаження ВЖИВАЄ, а щойно доданий ключ їй невидимий.
    Тепер такий рядок повідомляється окремим сигналом, а файл із багаторядковими назвами в лапках
    читається правильно.

  • ДРРП, обтяження: запис знову має сторони. Реєстр друкує їх одним абзацом, останній рядок якого
    переносився так, що слово «реєстрації:» опинялося на початку рядка й читалося як нова назва поля —
    абзац обривався на слові «країна», а решта не потрапляла нікуди. Через це в записі про обтяження не
    було ЖОДНОЇ сторони, а податковий номер особи, майно якої обтяжується, не траплявся у вивантаженні
    взагалі. Те саме виправлено для сторін іпотеки.

  • ДРРП, інші речові права: запис тепер зберігає, з якого запису його перенесено. Реєстр друкує це
    рядком «Перенесено із запису: 30387791» — посилання назад на попередній запис права. Іпотека його
    читала, інше речове право ні, тож на земельних ділянках цей номер був єдиним фактом рядка, який не
    потрапляв у жодне поле й не траплявся більше ніде у вивантаженні.

  • ДРФО: код суду більше не зникає при повторному збереженні запису. Він ділив поле з кодом
    роботодавця, і при читанні заповнювалося лише одне з двох — тож у наступному вивантаженні суду вже
    не було.

  • Перетини кордону: час перетину людиною і час перетину транспортним засобом більше не змішуються в
    одному полі — у реальних даних вони відрізняються на кілька хвилин.

  • ЄДРТЗ: запис про транспортний засіб тепер зберігає, з якої відповіді реєстру він походить — номер,
    ідентифікатор і дату відповіді, а також параметри запиту. Раніше ці дані читалися з файлу, але
    нікуди не записувалися.

  • ЄДРТЗ: документ-підстава реєстрації транспортного засобу тепер зберігається як документ — його
    дата, серія з номером і орган видачі. Раніше вони лишалися нерозібраним текстом.

  • ЄДРТЗ: номер будинку і номер квартири з адреси власника більше не втрачаються.

  • ДРФО: податковий агент (роботодавець) тепер окрема сторона запису. Раніше його назва зберігалася
    в одному полі з ім'ям платника, а код ЄДРПОУ — в одному полі з кодом суду, тож з вивантаження не
    можна було зрозуміти, де людина, а де підприємство.

  • Довіреності: припинена довіреність більше не виглядає як чинна. Стан («Припинено дію», «Видалено»),
    дата припинення та документ-підстава раніше не читалися взагалі — у звіті така довіреність нічим не
    відрізнялася від діючої. Витяги, імпортовані раніше, переобробляться автоматично.

  • Довіреності: передоручення тепер пов'язане з довіреністю, на яку воно видане — раніше в базі не
    було жодного зв'язку між ними.

  • Довіреності: нотаріус і його округ більше не дублюються у вивантаженні. Кожне збереження й повторне
    вивантаження додавало ще одну копію.

  • Довіреності: особа, яка видала довіреність, тепер показується серед пов'язаних осіб — раніше вона
    зберігалася окремо від решти сторін і в цей перелік не потрапляла.

  • ДРРП: ознака завершеності будівництва тепер показує те, що написано у витягу («закінчений
    будівництвом об'єкт»), а не підставлене «Так».

  • ДРРП: якщо реєстраційний номер об'єкта вказаний лише в тексті додаткових відомостей, він тепер
    теж читається як номер об'єкта — раніше такий об'єкт лишався взагалі без номера й не зіставлявся
    з собою ж в інших витягах.

  • ДРРП: земельні ділянки зі «спеціального розділу» більше не залишаються без прав. У витягу таке
    право надруковане ПЕРЕД своєю ділянкою і без власного заголовка, тож читалося як історія
    попередньої ділянки — на реальному витягу 30 із 32 ділянок потрапляли в базу зовсім без оренди, без
    орендодавця й без строку. Витяги, імпортовані раніше, переобробляться автоматично.

  • ДРРП: опис змін («було X, змінено на Y») більше не підміняє собою самі дані. Раніше такий рядок
    ставав значенням поля, яке описував: замість справжнього іпотекодержателя в базу йшло речення про
    його заміну, а банк із середини ланцюжка зникав.

  • ДРРП: сторони, вказані в записі журналу змін (наприклад банк-заявник, який більше ніде в документі
    не згадується), тепер зберігаються. Вони правильно розпізнавалися, але не потрапляли у вихідні дані.

  • ДРРП: у переліку сторін більше не з'являються порожні записи без імені та коду. Їх породжував
    уточнювач типу суб'єкта («Орган місцевого самоврядування»), надрукований перед іменем наступної
    сторони.

  • ДРРП: у старих витягах більше не зникають попередні співвласники. Коли документ друкує кількох
    закритих співвласників поспіль під одним заголовком «Інформація про деталізацію», раніше зберігався
    лише останній — на реальному витягу з чотирьох колишніх власників квартири в базу потрапляв один,
    а решта не з'являлися ні в об'єкті, ні в переліку осіб. Витяги, імпортовані раніше, переобробляться
    автоматично.

  • ДРРП: номер документа більше не обрізається на комі, яка є частиною самого номера — «31-13-0,27-688/108-18»
    зберігався як «31-13-0».