[2026-09-27] eagle: family/plans/music-jellyfin-lidarr-taiga.md personal/plans/balda-mm-phase4-agents.md personal/projects/balda/balda-kraken-mm-deploy.md
This commit is contained in:
1 parent
74193b4d08
commit
51189c64f9
3 files changed
+467
-17
No files matched your search
@@ -4,17 +4,23 @@
|
||||
> Статус: **✅ РАБОТАЕТ. Бот отвечает аккаунту Alex.** Образ `0.1.10` (коммит `9f1e6c9c`,
|
||||
> он же PR baldaworks/balda#8).
|
||||
> 🔴 **ТЕКУЩЕЕ СОСТОЯНИЕ (2026-09-27): бот отвечает ТЕКСТОМ, инструменты вызвать НЕЛЬЗЯ.**
|
||||
> На Kraken стоит `balda-mm:0.1.11`. Любой ход с **явным вызовом инструмента** падает с
|
||||
> `duplicate tool: "balda.control.shutdown"` — **на `0.1.11` тоже**, не только на `0.1.12`
|
||||
> На Kraken стоит **диагностический** `balda-mm:0.1.13-diag` (не `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 того же дока.
|
||||
> 🔴 **КОРЕНЬ (исправлено 2026-09-27, проверено кодом):** Balda регистрирует bundled MCP-сервер
|
||||
> **ДВАЖДЫ на одном URL** — `registry.Set("balda", …)` (`internalmcp/manager.go:213`) и
|
||||
> session-scoped привязка `balda-session-memory-<token>` (`sessionmemorymcp/broker.go:111`,
|
||||
> URL = тот же эндпоинт + `?token`), которую `runtime_manager.go:344-345` добавляет в
|
||||
> `extraMCPServerIDs`. `hostedToolsets` строит 2 тулсета → одинаковые имена инструментов →
|
||||
> `PackTool` (`toolutils.go:47-48`) падает.
|
||||
> ⚠️ **Прежняя версия корня («двойная паковка в ADK», `toolPreprocess`+`toolsetPreprocess`)
|
||||
> ОПРОВЕРГНУТА исполняемым тестом:** `mcptoolset.set` **не реализует** `ProcessRequest`
|
||||
> (метод есть только у `mcpTool`), поэтому `toolsetPreprocess` пропускает MCP-тулсеты.
|
||||
> Это дефект **регистрации в Балде**, не ADK и не форка. Разбор — [[personal/plans/balda-mm-phase4-agents]] §19.
|
||||
> Фикс **написан** (дедуп тулсетов по эндпоинту в `hostedToolsets`), `go build`/`go vet` ✅,
|
||||
> тесты не прогнаны. Целевой образ `balda-mm:0.1.13`. См. §19.3-19.5 того же дока.
|
||||
> ⚠️ Собран был **`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**;
|
||||
|
||||
Reference in new issue
Block a user