[2026-09-27] eagle: personal/plans/balda-mm-phase4-agents.md personal/projects/balda/balda-kraken-mm-deploy.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-27 01:35:32 +06:00
1 parent 7f85c2094a
commit 9493ae5514
2 files changed
+182 -41

No files matched your search

@@ -3,15 +3,28 @@
> Создан 2026-09-26. Обновлён 2026-09-26 (**✅ ФАЗА ЗАКРЫТА — боевая приёмка пройдена**).
> Статус: **✅ РАБОТАЕТ. Бот отвечает аккаунту Alex.** Образ `0.1.10` (коммит `9f1e6c9c`,
> он же PR baldaworks/balda#8).
> ⚠️ **АКТУАЛЬНЫЙ РАБОЧИЙ ОБРАЗ НА KRAKEN — `balda-mm:0.1.11`** (2026-09-27).
> Собран был **`0.1.12`** (форк runtime с tool-calling для `type: openai`: `openAIToolsFromConfig`,
> 🔴 **ТЕКУЩЕЕ СОСТОЯНИЕ (2026-09-27): бот отвечает ТЕКСТОМ, инструменты вызвать НЕЛЬЗЯ.**
> На Kraken стоит `balda-mm:0.1.11`. Любой ход с **явным вызовом инструмента** падает с
> `duplicate tool: "balda.control.shutdown"` — **на `0.1.11` тоже**, не только на `0.1.12`
> (A/B проведён 2026-09-27, лог подтверждён). Обычные текстовые ответы работают — отсюда
> ложное впечатление «рабочего образа».
> 🔴 **Корень (доказан по коду ADK `v2.4.0`):** двойная паковка инструментов —
> `toolProcessor` (`tools_processor.go:40-58`) расширяет инструменты toolset'ов в `f.Tools`,
> затем `base_flow.go` вызывает `toolPreprocess(f.Tools)` **и** `toolsetPreprocess(Toolsets)`
> без защиты между ними → `PackTool` (`toolutils.go:47-48`) видит имя второй раз → падение.
> **Это дефект ADK, не Балды и не форка.** Полный разбор — [[personal/plans/balda-mm-phase4-agents]] §16.2.
> Фикс (Option A, патч форка `runtime-local/agentfactory/agentfactory.go`) спланирован, но
> **не начат** — ждёт go-ahead Alex. Целевой образ `balda-mm:0.1.13`. См. §18 того же дока.
> ⚠️ Собран был **`0.1.12`** (форк runtime с tool-calling для `type: openai`: `openAIToolsFromConfig`,
> `parseChatResponse`, `TurnComplete = !hasToolCalls`; форк `mallexxx/runtime`, ветка
> `feat/openai-tool-calls-v2`, коммит `733b32d`, PR **https://github.com/normahq/runtime/pull/4**;
> в Балде — `replace github.com/normahq/runtime/v2 => ./runtime-local`).
> 🔴 **Но `0.1.12` откачен на `0.1.11`:** форк включил второй раунд ADK и **обнажил** двойную
> паковку инструментов → `duplicate tool: "balda.control.shutdown"` на каждом ходу, Балда молчала.
> На `0.1.11` Балда отвечает, но инструменты не исполняются (инструменты не пакались вообще).
> Разбор и следующий шаг — [[personal/plans/balda-mm-phase4-agents]] §16.
> 🔴 **`0.1.12` откачен на `0.1.11` — но это оказалось НЕ лечением** (2026-09-27): ранняя
> версия этого дока утверждала, что форк «обнажил» двойную паковку. **Опровергнуто A/B:**
> `0.1.11` падает тем же `duplicate tool` при явном вызове инструмента. Паковка инструментов
> идёт на сборке запроса, **до** первого ответа модели, и от второго раунда ADK не зависит.
> Баг жил в связке Balda↔ADK всегда.
> Разбор и следующий шаг — [[personal/plans/balda-mm-phase4-agents]] §16.2 и §18.
> Compose: `/home/kraken/balda/docker-compose.yml` (`image: balda-mm:0.1.11`).
> **Доказательство (лента `balda-test`):** `cbwsorzwoigbtrdnteugnx4aqo` (Alex) —
> `@balda скажи одно слово` → `edxrgupoxiyig5gzmr79tjypbme` (бот) — `слово`.