1.3 KiB
1.3 KiB
2026-04-26 — NamespaceManager rewrite, step 7
Цель шага
Добавить минимальную модель данных для будущего NamespaceManager, не меняя пока production wiring.
Почему это отдельный шаг
После шагов 1-6 уже стало ясно, что следующая стадия — не ещё один patch по месту, а переход к явной модели lifecycle.
Но сразу подключать новый manager к watcher-ам и компонентам рано. Сначала нужна опорная модель:
NamespacePhaseNamespaceSourceNamespaceEventTypeNamespaceRecordNamespacePartState
Что меняем
- Добавляем новый файл с типами model layer.
- Добавляем helper-методы:
Clone()IsActive()IsTerminal()
- Добавляем unit tests на:
- корректный deep copy;
- active semantics;
- terminal semantics.
Что НЕ меняем
- не подключаем manager к production path;
- не меняем watcher-ы;
- не меняем resolver;
- не затрагиваем текущее изменение в
serviceaccount.go.