1. Phase 59 — редизайн разметки ФСНБ через дерево с наследованием

— Заменён ручной ввод кодов на навигацию по дереву ФСНБ (корень — тип норматива, full naming, последняя версия)

— Реализованы ленивая загрузка дерева, поиск, чипы фильтра «не размеченные» / «на проверку»

— Подразделы и группы работ стали явно размечаемыми узлами; параметры работы вынесены на боковую панель

— Введена строгая top-down цепочка наследования характеристик по уровням дерева; на узле-источнике значения видны как «свои»

— Унаследованные характеристики отмечаются в чекбоксах; добавлен переход к узлу-источнику, бейдж источника, группировка характеристик

— Бэк: AdminFsnbTreeController, AdminFsnbCharacteristicsController; новые модели FsnbRazdelCharacteristic, FsnbSbornikCharacteristic + репозитории

— Различение работ с одинаковым end_name; имена групп/работ как в просмотре ФСНБ

— Версии: backend v2.3.39 → v2.3.50, frontend v2.3.58 → v2.3.67

2. Phase 54.7 / 54.8 — раздел «Профи.ру» в админке

— Прокси-эндпоинты результатов пайплайна Профи.ру и дерева каталога услуг

— Фронт: дашборд пайплайна с визард-схемами (все схемы показываются напрямую), дерево каталога услуг

— Файлы: AdminProfiRuController.java (~130 строк), 6 файлов фронта (~497 строк)

3. Phase 53.1 / 53.2 / 58 — eval-результаты и матрица качества моделей

— Coverage с разбивкой по источникам и сборникам; source-фильтр в listCases (AdminEvalController, AdminFsnbCharacteristicsController)

— Очередь ревью характеристик: backend-эндпоинты + UI экрана «Очередь ревью характеристик» (~295 строк фронта)

— Матрица качества моделей: прокси + интеграция в AgentConfigView

— Eval-результаты — 4 блока (~463 строки фронта)

4. Phase 60 — эксперт-режим пользователя и эталонные сметы

— Admin API тоггла «Эксперт» (UsersController +22 строки) + UI тоггла в списке пользователей

— Бэкенд пользователя: атрибут эксперта + publish-hook эталонных смет (expert-gold-rag)

— Фронт: 3 файла, +30 строк

5. Phase 56.D.1 — agent-write endpoints характеристик ФСНБ

— Endpoints под service-token: setForCode/setBatch (+186 строк)

— Обязательная валидация axis_kod и value_kod (+45 строк)

6. Чат пользователя — модель ИИ в шапке и упрощение

— Эндпоинт текущей модели ИИ для пустого чата (backend, +37 строк)

— Модель ИИ видна сразу при открытии чата, показана в шапке (frontend, +43 строки)

— Чат работает только с ВОР, смета убрана из чата (–80 строк)

7. Прочее

— Обновлён fallback-список моделей агента: добавлена Opus 4.8 (AgentConfigController)

— 4 сессии IT-журналистики для блога Softlancer (25, 26, 28, 29 мая) — ежедневные публикации про разработку ПО с ИИ

Сводная статистика по коду:

Проект | Добавлено строк | Удалено строк | Коммитов

smeta_admin_backend | 1446 | 258 | 19

smeta_admin_frontend | 2656 | 275 | 27

smeta-user-backend | 662 | 26 | 9

smeta_user_frontend | 59 | 88 | 3

Итого | 4823 | 647 | 58

Оценка трудозатрат:

Задача | ~Часы

Phase 59 (дерево разметки ФСНБ + наследование) | 15

Phase 54.7/54.8 (Профи.ру в админке) | 6

Phase 53/58 (eval-результаты, очередь ревью, матрица качества) | 6

Phase 60 (эксперт-режим, expert-gold-rag) | 3

Phase 56.D.1 (agent-write endpoints + валидация) | 3

Чат пользователя (модель ИИ в шапке, ВОР-only) | 2

Фикс fallback-моделей агента (Opus 4.8) | 0.5

Сессии блога Softlancer (4 публикации) | 3

Итого | ~38.5 час