From c9036f716f774e40747db1a5a95ef556e0d5d8e1 Mon Sep 17 00:00:00 2001 From: Naeel Date: Sun, 26 Apr 2026 16:38:37 +0300 Subject: [PATCH] layer2: add single-file chat handoff --- NEXT_CHAT_LAYER2.md | 79 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 NEXT_CHAT_LAYER2.md diff --git a/NEXT_CHAT_LAYER2.md b/NEXT_CHAT_LAYER2.md new file mode 100644 index 00000000..3335ff92 --- /dev/null +++ b/NEXT_CHAT_LAYER2.md @@ -0,0 +1,79 @@ +# NEXT CHAT: LAYER2 START HERE + +Если ты новый агент в новом чате, сначала прочитай этот файл целиком. + +## Где работать + +Репозиторий: `fission-src` + +Ветка: + +`rewrite/layer2-namespace-manager-api-step1` + +## Что уже готово + +Layer1 завершён. + +Это значит: + +1. Внутренний `NamespaceManager` layer уже реализован. +2. Buildermgr, router и executor/multitenant уже переведены на общий watcher/helper layer. +3. Summary/debug contract стабилизирован. +4. Logging path усилен. +5. Layer1 закрыт commit-ом: + +`63ce6ea` +`layer1: close namespace manager step1` + +## Что уже было проверено + +Целевой прогон для layer1 уже был зелёным: + +`go test ./pkg/utils/... ./pkg/buildermgr/... ./pkg/router/... ./pkg/executor/multitenant` + +## Что нужно делать теперь + +Нужен layer2. + +Layer2 = не переписывать watcher-ы заново, а дать внешний read-only status/debug/API surface поверх уже готового `NamespaceManager` слоя. + +Цель: + +1. Найти лучший существующий read-only endpoint/status/debug surface. +2. Начать аккуратно выносить наружу `NamespaceManagerSummary`. +3. Не менять runtime semantics watcher-ов. +4. Не плодить второй источник правды о namespace state. + +## Как работать + +1. Работай маленькими шагами. +2. Перед кодом сначала найди правильную точку интеграции. +3. Все новые заметки пиши только в новые файлы в `doc/thinking/`. +4. Не трогай старые doc-файлы. +5. Не запускай background-команды. +6. Все команды запускай только через SSH на VM и всегда с timeout. + +## Важные файлы + +- `pkg/utils/namespace_manager.go` +- `pkg/utils/namespace_manager_model.go` +- `pkg/utils/namespace_manager_test.go` +- `pkg/buildermgr/ns_watcher.go` +- `pkg/router/ns_watcher.go` +- `pkg/executor/multitenant/ns_watcher.go` + +## Первый шаг в новом чате + +Сначала не писать код. + +Сначала: + +1. проверить текущую ветку и чистоту дерева; +2. найти существующий service-level status/debug/API contour; +3. выбрать один безопасный read-only entrypoint для первого шага layer2. + +## Текст первого сообщения нового чата + +Можно просто вставить это: + +"Прочитай файл NEXT_CHAT_LAYER2.md и продолжай работу строго по нему. Нужен layer2: safe read-only API/status/debug surface поверх NamespaceManager без изменения runtime semantics watcher-ов. Сначала найди правильную точку интеграции, потом делай маленькие шаги с документированием в новых файлах doc/thinking/." \ No newline at end of file