fix(namespace): harden lifecycle — RemoveNamespace, parallel dispatch, reconciler
- DefaultNSResolver.RemoveNamespace(): removes NS from global map on label removal so Snapshot() and idleObjectReaper stop iterating deleted namespaces. Fixes class of dirty-state bugs when NS name is reused by new tenant. - HandleWatcherNamespaceRemoval: call RemoveNamespace on both TrackOnly and DispatchRemove strategies — global resolver cleanup is always required. - dispatch(): parallel subscriber execution via goroutine per subscriber + sync.WaitGroup. Reduces onboarding latency from O(N_subscribers × API_latency) to O(max(API_latency)). Safe: MarkPart* are internally mutex-protected. - inMemoryNamespaceManager.RunReconciler(): 30s ticker scans for NamespacePhaseFailed records and retries via DispatchResync. Started automatically by RunManagedNamespaceWatcher. Fixes permanent stuck-failed state caused by transient k8s API errors. Analysis source: FORENSIC_ARCHITECTURE_AUDIT.md §Deep Risk Analysis
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
3. ЖДАТЬ следующей команды
|
||||
**ЗАПРЕЩЕНО** начинать работу, писать код, запускать команды — без явного "делай".
|
||||
|
||||
1. Не трогать рабочий код без явного указания.
|
||||
1. **⛔⛔⛔ АБСОЛЮТНЫЙ ЗАПРЕТ: не трогать и не читать рабочий код с целью подготовки к правке — без ПРЯМОГО указания "делай". Даже чтение файлов перед правкой — СТОП, сначала разрешение.**
|
||||
|
||||
2. Файлы редактируются локально:
|
||||
~/fission-src (текущая рабочая папка)
|
||||
|
||||
@@ -92,6 +92,7 @@ rsync -az -e "ssh -i ~/.ssh/naeel_vm_id_ed25519 -o StrictHostKeyChecking=no" \
|
||||
|
||||
## Поведение агента
|
||||
|
||||
- **⛔⛔⛔ АБСОЛЮТНЫЙ ЗАПРЕТ: не читать и не трогать код с целью подготовки к правке — без прямого "делай". Даже чтение файлов перед правкой — СТОП, сначала разрешение.**
|
||||
- Не трогать рабочий код без явного указания
|
||||
- Не делать НИЧЕГО сверх того, о чём явно приказали — ни git-команд, ни rebase, ни дополнительных шагов
|
||||
- Если для продолжения нужен выбор — СПРОСИТЬ разрешения, не делать самостоятельно
|
||||
|
||||
Reference in New Issue
Block a user