[2026-09-28] eagle: personal/projects/balda/balda-mm-delegation-plan.md personal/tech/agents-bridge.md
This commit is contained in:
1 parent
4a6b5bcb70
commit
b219b5c2cb
2 files changed
+81
-12
No files matched your search
@@ -1,9 +1,13 @@
|
||||
# Balda 2.0 — Mattermost + распределённое делегирование (план)
|
||||
|
||||
> Создан 2026-09-25. Статус: **Фазы 1-3 закрыты 2026-09-26** (MM на Kraken · MM-адаптер
|
||||
> в коде · оркестратор развёрнут, **бот отвечает в MM**). Фаза 2 выведена на **PR
|
||||
> `baldaworks/balda#8`** — 8/8 CI PASS, ждёт ревью. Следующая — Фаза 4 (исполнитель).
|
||||
> Alex дал команду исполнять без вопросов.
|
||||
> Создан 2026-09-25. Статус (обновлён **2026-09-28**): **Фазы 1-3 закрыты** (MM на Kraken ·
|
||||
> MM-адаптер в коде · оркестратор развёрнут, **бот отвечает в MM**). Фаза 2 выведена на **PR
|
||||
> `baldaworks/balda#8`** — 8/8 CI PASS, `MERGEABLE`, `reviewDecision` пустой → ждёт ревью
|
||||
> апстрима (внешний блокер, не наша работа).
|
||||
> 🔴 **Фаза 4 собрана и исправна на всех звеньях, КРОМЕ одного: CLI в контейнере-исполнителе
|
||||
> не залогинен.** Любая реальная задача через мост падает `Not logged in · Please run /login`
|
||||
> (аудит 2026-09-28 живыми вызовами). Это последний блокер перед Фазой 5.
|
||||
> Диагноз + два пути фикса: [[personal/plans/balda-mm-phase4-agents]] **§20**.
|
||||
> Задача: поднять свежую Балду из `baldaworks/balda` (без наших коммитов), завязать на Mattermost,
|
||||
> построить распределённое делегирование (дешёвый оркестратор + подписочные CLI в VM).
|
||||
>
|
||||
@@ -323,14 +327,27 @@ PR: `gh pr create --repo baldaworks/balda --base main --head mallexxx:feat/matte
|
||||
🔴 **Доказано живым тестом: симлинк в Docker НЕ читается** → внешние проекты
|
||||
подключать **bind-mount'ом**, не линком. Hardlink — только для файлов внутри
|
||||
одного тома (не пересекает ФС, каталоги не линкует).
|
||||
1. Docker-контейнер (или UTM VM) с Node 24 + `codex` + `claude` + `git`.
|
||||
2. Авторизация: `claude setup-token` на Mac → `CLAUDE_CODE_OAUTH_TOKEN` в контейнер; для codex — свой flow.
|
||||
3. Bind-mount проектной директории (не весь `~`).
|
||||
4. Мост: FastAPI-сервис, принимает задачу от Kraken, запускает CLI headless, возвращает diff/тесты.
|
||||
5. Идемпотентность + таймауты + лимит параллельных задач (не более 1-2, чтобы не ловить «unusual traffic patterns»).
|
||||
1. ✅ Docker-контейнер с Node 24 + `codex` + `claude` + `git` — собран, Up.
|
||||
2. 🔴 **Авторизация — ЕДИНСТВЕННЫЙ НЕЗАКРЫТЫЙ ПУНКТ.** Плановый путь
|
||||
`claude setup-token` → `CLAUDE_CODE_OAUTH_TOKEN` **НЕ выполнен**: логина в
|
||||
`~/cli-auth/claude` нет, любая задача падает `Not logged in · Please run /login`
|
||||
(проверено 2026-09-28 живым вызовом моста). Диагноз и два пути фикса —
|
||||
[[personal/plans/balda-mm-phase4-agents]] **§20**.
|
||||
3. ✅ Bind-mount проектной директории (не весь `~`).
|
||||
4. ✅ Мост FastAPI (:8790, launchd `com.agents.bridge`), принимает задачу от Kraken,
|
||||
запускает CLI headless, возвращает stdout/exit_code.
|
||||
5. ✅ Идемпотентность + таймаут 900 с + лимит 1 параллельная задача.
|
||||
6. ✅ Балда → мост: MCP-сервер `balda-executor-mcp` (Kraken), образ `balda-mm:0.1.13`,
|
||||
MCP-инструменты **исполняются** (приёмка `executor_health: ok` 2026-09-27).
|
||||
|
||||
📌 **Итог на 2026-09-28:** вся цепочка MM → Балда → MCP → мост → docker exec → CLI
|
||||
собрана и исправна, кроме логина CLI. Закрыть его → Фаза 4 закрыта, Фаза 5 (сквозная
|
||||
приёмка + расходы) открывается.
|
||||
|
||||
### Фаза 5 — связка и приёмка
|
||||
1. Сквозной тест: сообщение в MM → Балда → мост → CLI → результат обратно в MM.
|
||||
⏳ **Заблокировано логином CLI** (см. Фаза 4 п.2). Пока проходит только до вызова
|
||||
самого CLI: `executor_health` возвращается, реальная задача — нет.
|
||||
2. Проверить расходы: DeepSeek-токены оркестратора + подписочные лимиты исполнителя.
|
||||
3. Записать в Obsidian: как работает, где логи, как откатить.
|
||||
|
||||
|
||||
Reference in new issue
Block a user