Releases: Romandredan/odata1c-gate
Release list
v0.3.0
Шлюз закрывает персональные данные, которые прежние версии отдавали модели открытыми: паспорт и адрес работника в кадровых и отчётных документах, номер паспорта в документах физлиц, ФИО в составных именах полей. Добавлены правила и готовые запросы для Бухгалтерии предприятия и Зарплаты и управления персоналом. Модель теперь видит открытыми одиночные слова в комментариях, совпадающие с названием контрагента или частью ФИО. После обновления нужно перезапустить демон и переиндексировать базы.
Новое
Готовые запросы для БП и ЗУП. При подключении базы укажите набор запросов: odata1c base add <база> --recipes bp или --recipes zup. Модель получит именованные запросы, которые проверены на живых базах:
- БП: остатки и оборотно-сальдовая ведомость по счёту, дебиторская и кредиторская задолженность, деньги на счетах и в кассе, реализация и поступление за период;
- ЗУП: работающие сотрудники, начисления и удержания, задолженность по зарплате, приёмы, увольнения, отпуска, больничные.
Правила гейта для своей конфигурации. Гейт — фильтр, который заменяет реквизиты и названия токенами до того, как их увидит модель. Если в вашей базе есть доработанные справочники и документы с персональными данными, опишите их поля файлом YAML в каталоге ~/.claude/odata1c/gate/. Правило действует на любой базе, где есть его сущность.
Уровень гейта при подключении. odata1c base add <база> --gate off|identifiers|identifiers+names задаёт уровень защиты этой базы сразу, без правки файла настроек.
Адрес базы — как в браузере. В bases.yaml достаточно указать корень публикации (https://server/base): окончание OData шлюз дописывает сам. Прежние полные адреса работают как раньше.
Исправлено
Паспорт и адрес работника уходили модели открытыми. В справках НДФЛ, пачках АДВ, справках о заработке и запросах СФР серия и номер документа и адрес работника стояли под общими именами полей, и гейт их не узнавал. Так было в БП и ЗУП, а номер паспорта в документах физлиц — и в УТ. Теперь закрыты весь документ физлица, документы о рождении и на проживание, полисы, дипломы, номер банковской карты, ФИО родственников, почта физлиц и регистрационный номер страхователя в фондах. На живой базе ЗУП до исправления в ответах шлюза нашлось 425 реальных значений персональных данных, после — ни одного.
Название организации портило обычные слова. Короткое название из справочника («Мост») заменялось токеном внутри других слов: «списание себестои[[org:N]]и», имена сущностей в перечне запросов. Теперь название заменяется, только когда стоит отдельным словом.
Одиночное слово заменялось токеном в любом тексте. При контрагенте ООО «Мост» слово «мост» закрывалось в каждом комментарии и назначении платежа. Теперь одиночное слово считается названием, только если по написанию видно, что это название: в кавычках, с формой собственности, в полной форме. Название из нескольких слов и полное ФИО закрываются как прежде.
Ложные срабатывания. Основание подписи («Устава»), поля …Сотрудника, сетевые адреса и отбор регистра бухгалтерии по коду счёта больше не принимаются за ФИО, почтовый адрес или банковский счёт.
Проверено
Приёмка на живых базах УТ, БП и ЗУП: реальных значений в ответах шлюза нет. На УТ ушло 224 замены голых одиночных слов, других изменений нет. Все проверки проходят на Windows и Ubuntu, Python 3.12 и 3.13. Проверочные дела плагина не прогонялись: навыки чтения в этом выпуске не менялись.
Совместимость
| Гейт открывает | одиночные названия и части ФИО в свободном тексте без кавычек и формы собственности («отгрузили Мост», «звонила Мария»); редкие написания — угловые кавычки, чужая форма собственности |
| Ломающие изменения | нет |
| Действия после обновления | перезапустить демон (odata1c daemon stop) и выполнить odata1c reindex <база> для каждой базы, без --force |
| Python / Claude Code | без изменений |
v0.2.0
v0.1.1
Full Changelog: v0.1.0...v0.1.1
Full Changelog: v0.1.0...v0.1.1
v0.1.0
Full Changelog: https://github.com/Romandredan/odata1c-gate/commits/v0.1.0