Files
fission-src/doc/thinking/2026-04-26-namespace-manager-step7.md
T

36 lines
1.3 KiB
Markdown

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