Newer
Older
AI_Lab_SCRUME_Co / CHANGELOG.md

Изменения AILab SCRUME Agent

История до 1.7.5 — в git log (сообщения коммитов вида v1.7.5: …). Здесь ведём план и состав следующего релиза.


1.7.6 — план (не выпущено)

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

Основание — аудит профиля ai-si 05.11.2026. Проверенное состояние:

Что Факт
skills/productivity/docx/references/anonymization.md процедура полная: тело, таблицы, все headerN/footerN.xml, docProps/core.xml, app.xml, картинки; замена подчёркиваниями; верификация из 3 шагов
skills/productivity/docx/scripts/scan_open_pii.py есть, работает (--summary, --header, --json, --fail-on-open)
skills/ailab/anonymization-check лежит в сборке, в профиль не ставится — категории ailab в установленном профиле нет
profiles/<p>/hooks/ пусто — принуждения нет
SOUL.md сборки про обезличивание, периметр и заказчика — ни слова

Отсюда формулировка «у нас обезличивание до отправки в модель» сегодня не подтверждается: правило записано в скилле, но срабатывает по триггеру и зависит от того, вспомнит ли модель его применить.

1. Поставить ailab/anonymization-check в профиль при установке и обновлении

  • Что: категория skills/ailab/* должна попадать в установленный профиль так же, как остальные скиллы; сейчас в профиле её нет.
  • Где: механизм установки скиллов (bundle → ~/hermes/skills), setup.ps1, проверка состава после установки.
  • Критерий приёмки: после чистой установки и после обновления ls <профиль>/skills/ailab/anonymization-check даёт SKILL.md и scripts/scan_open_pii.py; скилл виден в индексе скиллов агента.
  • Причина: скилл, лежащий только в сборке, в работе не участвует. Это главное расхождение между «заявлено» и «есть».

2. Правило порядка в SOUL.md — и в сборке, и в профиле

Добавить раздел (формулировка для вставки):

## Периметр данных

- Документ заказчика (ТЗ, договор, переписка, форма, ИД) не открывается инструментами
  чтения, пока не решено, откуда берётся обезличенная копия: её даёт пользователь
  или агент делает копию и читает только её.
- Читается и разбирается только копия. Оригинал не открывать «чтобы посмотреть объект».
- Таблица соответствия токенов и реальных значений не читается никогда — она и есть
  закрываемые данные.
- Отчёт по проверке полноты обезличивания агент читает в `--summary` (счётчики);
  полный отчёт со значениями — человеку.
- Формулировка «документ обезличен» запрещена. Правильно: «шаблоны нашли N, вот что
  осталось открытым».
  • Где: SOUL.md в сборке (приезжает всем получателям) + profiles/<p>/SOUL.md в рабочем профиле (иначе правило не действует у того, кто уже установлен).
  • Критерий приёмки: правило есть в обоих файлах; на контрольной задаче («прочитай ТЗ и найди требования») агент сначала спрашивает про обезличенную копию, а не открывает оригинал.
  • Ограничение, которое надо написать в релиз-ноутах честно: это по-прежнему правило в промпте. Принуждение — только через hook/шлюз (см. п. 4).

3. Журнал применения ИИ — с записями, а не пустая форма

  • Что: форма журнала + процедура, при которой запись появляется сама, а не заполняется задним числом «для проверки».
  • Минимальный состав записи: дата · задача · сервис · контур · категория данных (🟢/🟡/🔴) · обезличивание выполнено (да/нет, чем подтверждено) · результат перепроверен человеком · кто.
  • Куда писать: файл журнала в рабочей папке проекта (CSV/MD), запись — по факту задачи; при инциденте — отдельной строкой в журнал инцидентов.
  • Критерий приёмки: после пилота на одной команде в журнале есть не менее 5 реальных записей, каждая с категорией данных и отметкой обезличивания; повторяющаяся операция закрывается одной строкой, без ручного заполнения таблицы каждый раз.
  • Причина: в папке «AI безопасность» журнал присутствует только как пустая форма Регламента. Пустая форма — не контроль.

4. (Задел, вне объёма 1.7.6) Принуждение на исходящем запросе

Каталог hooks/ пуст — механизма, физически не дающего уйти оригиналу, нет. Кандидат на следующий релиз: перехват исходящего запроса (hook или шлюз) с прогоном шаблонов ПДн и блокировкой отправки. Перед планированием — проверить, какие события Hermes умеет перехватывать; обещать механизм без проверки нельзя.

Что НЕ входит в 1.7.6

  • Локальная модель / RAG (Ollama + Open WebUI): решения нет, железа нет. Ценность такого контура — только на красной категории, и он снимает риск утечки ценой качества на русском техническом тексте.
  • Заполнение Регламента и приказа ООО «СКРАМ ИНЖИНИРИНГ» — организационный слой, отдельная работа вне сборки.

Как выпускается

  1. Пункты 1–3 закрыты и проверены на чистой установке, а не только в рабочем профиле.
  2. distribution.yaml → version: 1.7.6; README.md → «Текущая версия: 1.7.6».
  3. Коммит с сообщением v1.7.6: <главное изменение>.
  4. Сборка bundle, проверка по разделу «Проверка перед передачей» в README.