1. Справочники коэффициентов и характеристик ФСНБ (admin)

— В smeta_admin_backend добавлены модели KoefJustification, KoefCharacteristicMeta, ResursSection с репозиториями и сидерами; контроллеры KoefJustificationController (212 строк) и CharacteristicMetaAdminController (74 строки)

— Расширен XmlParserService и ImportService под иерархию ресурсов

— Добавлен сид koef_justification.json на 7826 строк

— В smeta_admin_frontend созданы вьюхи KoefJustificationView.vue (431 стр) и CharacteristicMetaView.vue (227 стр), пункты в AppSidebar, методы в api/index.js

— Коммиты: bd04fbc (admin-backend), 3c9a131 (admin-frontend)

2. Импорт ФСНБ DEF-001/002/003 + поле «Письмо Минстроя» в Kvartal

— Фиксы в XmlParserService и ImportService, документация docs/koef_analysis_571_774_812.md (284 стр) и docs/koef_justification_design.md (626 стр), SQL-миграция v2.2.0-fsnb-columns.sql

— В Kvartal добавлены 17 строк под поля письма Минстроя; KvartalController расширен

— Bump pom.xml; во фронте обновлён KvartalView.vue под новые поля

— В smeta-user-backend закоммичены три PDF методички (приказы 571пр/774пр/812пр)

— Коммиты: 4d62ab4, f18e791, cb8f537

3. Наследование характеристик object/smeta/razdel/rabota (user)

— В smeta-user-backend добавлены KoefCharacteristicMeta, поля characteristics в BuildingObject/Smeta/SmetaRazdel/SmetaRabota, CharacteristicsController (136 стр), CharacteristicMetaSeeder (235 стр), CharacteristicsResolver (116 стр) с логикой наследования

— Создан FsnbTemplateBuilder на 989 строк; ExportService расширен на 385 строк

— Во фронте — компонент CharacteristicsForm.vue (165 стр) + интеграция в ObjectView/SmetaView/RazdelRows

— Коммиты: 567197b (user-backend), 0251558 (user-frontend)

4. Неучтённые ресурсы раздела, коэффициенты работ, дерево секций ФСНБ

— В smeta-user-backend добавлены SmetaNeuchtennyyResurs (54 стр), SmetaRabotaKoef (89 стр) с репозиториями; контроллеры SmetaRabotaKoefController (153 стр), KoefJustificationController (80 стр), методы CatalogController (28 стр) и SmetaController

— CatalogService расширен на 180 строк (дерево секций), SmetaService на 244 строки, SmetaTotalService на 254 строки

— Во фронте: NeuchtennyyPicker.vue (326 стр), KoefPicker.vue (225 стр), CharacteristicsButton.vue (157 стр), переписан RazdelRows.vue (+421/-достаточно)

— Коммиты: 505441f (user-backend), 104da43 (user-frontend)

5. Удаление GitHub Actions CI/CD пайплайнов

— В smeta_admin_backend удалены .github/workflows/deploy.yml и deploy-prod.yml (-285 строк)

— В smeta-user-backend удалены build-and-deploy.yml и deploy-prod.yml (-288 строк)

— Коммиты: a7b3630, 511e2b4

6. AI News: обработка ошибок Claude API в n8n

— В workflows/ai-news-prod.json упрощён сценарий: добавлено ветвление на 401-ошибки авторизации, удалено 302 строки устаревших нод

— Коммит: 00ee7fd

7. Бамп версий и мерджи релизных веток

— smeta-user-backend: bump до 2.2.1, мерджи mvp → release/v1

— smeta_admin_backend и smeta_user_frontend — соответствующие синхронизации mvp/release/v1

— Коммиты: b4fc017, a59d464, 7d3fa99, c69f6f1, ca62775, d06d700

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

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

smeta_admin_backend | 9579 | 303 | 4

smeta_admin_frontend | 701 | 6 | 2

smeta-user-backend | 3453 | 381 | 8

smeta_user_frontend | 1540 | 242 | 3

smeta-n8n-workflow | 2 | 302 | 1

Итого | 15275 | 1234 | 18

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

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

Справочники коэф/характеристик ФСНБ (admin back+front, сид 7826 стр) | 10

Импорт ФСНБ DEF-001/002/003 + Письмо Минстроя + миграция/доки | 8

Характеристики object/smeta/razdel/rabota + резолвер наследования + FsnbTemplateBuilder | 14

Неучтённые ресурсы, коэффициенты работ, дерево секций (back+front) | 12

Удаление GitHub Actions CI/CD из двух бэкендов | 1

AI News: обработка ошибок Claude API | 1

Бампы версий, мерджи, методички PDF | 1

Итого | ~47 час