layer1: add namespace manager model step 7
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# 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`.
|
||||
Reference in New Issue
Block a user