ADR 0009: Strangler-миграция и когда допускаются отклонения от политики¶
Статус: Accepted
Дата: 2026-04-02
Связанные ADR¶
Вне ADR¶
| Документ | Роль |
|---|---|
| architecture-migration.md | architecture migration |
| architecture-policy.md | навигатор |
Контекст¶
Кодовая база развивается долго; полная перелопатка под новые правила недопустима по стоимости. Вместе с тем нужны ясные правила для прототипов и merge в основную ветку.
Решение¶
Миграция¶
- Новый код — сразу по текущей архитектурной политике и ADR.
- Старый код в монолитном ViewModel — правим при доработке фичи или при явном рефакторинге; полный перенос не обязателен по искусственному дедлайну (strangler).
Отклонения¶
Короткий прототип или spike — допускается упрощение. Перед merge в основную ветку либо приводим к политике, либо явно помечаем в PR и создаём задачу на вынос.
Последствия¶
История main остаётся приемлемой для ревью; технический долг контролируется задачами, а не только устной договорённостью.
Отклонённые альтернативы¶
- «Заморозить» рефакторинг до большого банга — отклонено в пользу постепенного strangler.