feat(rbac): hide unauthorized menu sections and enforce route guards

This commit is contained in:
2026-03-06 10:50:28 +03:00
parent 6a68770a8e
commit 535095d31c
43 changed files with 4071 additions and 245 deletions

View File

@@ -1,7 +1,7 @@
# Implementation Plan: Clean Repository Enterprise Preparation
**Branch**: `023-clean-repo-enterprise` | **Date**: 2026-03-03 | **Spec**: [`spec.md`](./spec.md)
**Input**: Feature specification from [`/specs/023-clean-repo-enterprise/spec.md`](./spec.md)
**Branch**: `023-clean-repo-enterprise` | **Date**: 2026-03-04 | **Spec**: [`spec.md`](./spec.md)
**Input**: Feature specification from [`/specs/023-clean-repo-enterprise/spec.md`](./spec.md) + clarifications session 2026-03-04
## Summary
@@ -9,7 +9,9 @@
1) исключает тестовые/демо-данные из дистрибутива,
2) блокирует любые внешние интернет-источники ресурсов,
3) допускает загрузку ресурсов только с внутренних серверов компании,
4) предоставляет обязательную проверку compliance и аудитный отчёт перед выпуском.
4) предоставляет обязательную проверку compliance и аудитный отчёт перед выпуском,
5) управляется через декларативный конфиг `.clean-release.yaml` в корне репозитория (FR-015FR-020),
6) включает очистку БД от тестовых пользователей/демо-данных как обязательную стадию.
Ключевой UX фиксируется как интерактивный TUI сценарий на основе [`ux_reference.md`](./ux_reference.md): оператор в одном консольном интерфейсе запускает проверку, видит прогресс по этапам, нарушения и итоговый статус (`COMPLIANT`/`BLOCKED`).
@@ -31,7 +33,7 @@
**Scale/Scope**:
- 1 enterprise release flow;
- 1 TUI сценарий подготовки/проверки;
- 36 новых/обновлённых модулей проверки и отчётности;
- 69 новых/обновлённых модулей (+config_loader, filesystem_scanner, db_cleanup_executor);
- документация и контракты в пределах feature-папки.
## Constitution Check
@@ -95,6 +97,8 @@ frontend/
2. Политика source isolation (детекция и запрет внешних internet endpoints, allowlist внутренних серверов).
3. Формат compliance-отчёта для релизного аудита (минимальный обязательный набор полей).
4. Паттерн интеграции TUI-проверки в существующий release workflow (ручной запуск + CI gate).
5. **[НОВОЕ]** Декларативный конфиг `.clean-release.yaml` как единый source of truth для всех стадий валидации.
6. **[НОВОЕ]** Очистка БД от тестовых пользователей и демо-данных как обязательная стадия pipeline.
Выход Phase 0: заполненный [`research.md`](./research.md) без `NEEDS CLARIFICATION`.

View File

@@ -14,6 +14,7 @@
3. Настроен внутренний реестр серверов ресурсов (artifact/git/package mirrors).
4. Внешний интернет для узла проверки недоступен/запрещён согласно корпоративной политике.
5. Доступен TUI-скрипт проверки clean-compliance.
6. В корне репозитория есть `.clean-release.yaml` с секциями `prohibited_categories`, `allowed_sources` и `database_cleanup`.
## Step 1 — Запуск TUI