14. Юридическое досье — версионирование заключений
Date: 2026-01-22
Status
Accepted
Context
Необходимо отслеживать историю изменений заключения для аудита.
Decision
Модель LegalConclusionVersion с полями:
version_number— номер версииstatus_at_version— статус на момент версииsnapshot_data— JSON со снимком ключевых данныхchange_comment— комментарий к изменениюcreator— автор изменения
Версия создаётся автоматически при переходах workflow.
Обоснование
- Аудит — полная история изменений
- Откат — возможность анализа предыдущих версий
- Ответственность — фиксация автора каждого изменения
Альтернативы
- django-simple-history — рассмотрено, но слишком избыточно
- django-reversion — рассмотрено, но сложнее в настройке
Consequences
- (+) Полная аудиторская трассировка
- (+) Контроль версий без внешних зависимостей
- (-) Рост объёма данных в БД
Источник: backend/narmak_v2/app/legal_dossier/ADR.md (ADR-009)