[2026-09-27] eagle: personal/projects/balda/balda-kraken-mm-deploy.md
This commit is contained in:
1 parent
627d06c07f
commit
304119a6d5
1 file changed
+72
-4
@@ -3,10 +3,14 @@
|
||||
> Создан 2026-09-26. Обновлён 2026-09-26 (**✅ ФАЗА ЗАКРЫТА — боевая приёмка пройдена**).
|
||||
> Статус: **✅ РАБОТАЕТ. Бот отвечает аккаунту Alex.** Образ `0.1.10` (коммит `9f1e6c9c`,
|
||||
> он же PR baldaworks/balda#8).
|
||||
> ⚠️ **Актуальный рабочий образ на Kraken — `balda-mm:0.1.11`** (2026-09-26, позже этой фазы):
|
||||
> добавлен Mattermost-классификатор scope в `ScopeResolver` + включён
|
||||
> `balda.session_memory` (MCP-инструменты в сессии). Разбор — [[personal/plans/balda-mm-phase4-agents]] §12.
|
||||
> Compose: `/home/kraken/balda/docker-compose.yml` (`image: balda-mm:0.1.11`).
|
||||
> ⚠️ **АКТУАЛЬНЫЙ РАБОЧИЙ ОБРАЗ НА KRAKEN — `balda-mm:0.1.12`** (2026-09-27). Что в нём:
|
||||
> Mattermost-классификатор scope в `ScopeResolver` (`0.1.11`) + **форк runtime с tool-calling
|
||||
> для провайдера `type: openai`** (`openai.go`: `openAIToolsFromConfig`, `parseChatResponse`,
|
||||
> `TurnComplete = !hasToolCalls`). Без форка MCP-инструменты НЕ доходят до модели.
|
||||
> Форк: `mallexxx/runtime`, ветка `feat/openai-tool-calls-v2`, коммит `733b32d`,
|
||||
> PR **https://github.com/normahq/runtime/pull/4**. В Балде подключён
|
||||
> `replace github.com/normahq/runtime/v2 => ./runtime-local`.
|
||||
> Compose: `/home/kraken/balda/docker-compose.yml`. Разбор — [[personal/plans/balda-mm-phase4-agents]] §12.
|
||||
> **Доказательство (лента `balda-test`):** `cbwsorzwoigbtrdnteugnx4aqo` (Alex) —
|
||||
> `@balda скажи одно слово` → `edxrgupoxiyig5gzmr79tjypbme` (бот) — `слово`.
|
||||
> `settlement_stage=accepted`, `bad_seq`=0, `RestartCount`=0.
|
||||
@@ -19,6 +23,70 @@
|
||||
|
||||
---
|
||||
|
||||
## 🔴🔴🔴 КАК ПОСТИТЬ В `qentra:balda-test` — ЧИТАТЬ ПЕРЕД КАЖДЫМ ТЕСТОМ (2026-09-27)
|
||||
|
||||
> **ЭТО ГЛАВНЫЙ БЛОК ЭТОГО ДОКА. ЗАПИСАНО КАПСОМ ПО ТРЕБОВАНИЮ ALEX.**
|
||||
> **Я ПОТЕРЯЛ ЭТУ ИНФУ ОДИН РАЗ — БОЛЬШЕ НЕ ПОТЕРЯЮ.**
|
||||
|
||||
### 🔴 ПРАВИЛО №1: `mmctl --local post create` НЕ РАБОТАЕТ
|
||||
|
||||
```
|
||||
Error: creating posts is not supported in local mode
|
||||
```
|
||||
|
||||
**НЕ ПЫТАТЬСЯ. НЕ ЛЕЗТЬ В API-ЛОГИН. НЕ ИСКАТЬ ПАРОЛЬ АДМИНА. СРАЗУ ГОТОВЫЙ СКРИПТ.**
|
||||
|
||||
### 🔴 ПРАВИЛО №2: ЕДИНСТВЕННЫЙ РАБОЧИЙ ПУТЬ — `mm-post-user.sh`
|
||||
|
||||
```bash
|
||||
ssh kraken '/tmp/mm-post-user.sh 7bjw4g7o1jdsbmjbqd649xxgaw testuser "T3stPassw0rd!x" "@balda <ТЕКСТ>"'
|
||||
```
|
||||
|
||||
| Параметр | Значение | ❌ ЧТО НЕ ТАК |
|
||||
|---|---|---|
|
||||
| channel_id | `7bjw4g7o1jdsbmjbqd649xxgaw` | НЕ `753nhtnudtb39ph4zib1norwor` (это MM DM) |
|
||||
| **username** | **`testuser`** | НЕ `admin` |
|
||||
| **пароль** | **`T3stPassw0rd!x`** | НЕ `backoffice-adminpw` (это пароль backoffice БАЛДЫ, не MM!) |
|
||||
| тип | человек (не бот) | пост от бота отбросит `IsBotEcho` |
|
||||
|
||||
Исходник: `~/Developer/balda/tools/mm-post-user.sh` — **в репозитории, не только в `/tmp`**.
|
||||
Если `/tmp` пуст после ребута: `scp ~/Developer/balda/tools/mm-post-user.sh kraken:/tmp/`.
|
||||
|
||||
### 🔴 ПРАВИЛО №3: ПАРОЛЬ АДМИНА MM НЕ ХРАНИТСЯ НИГДЕ
|
||||
|
||||
Проверено: в `/home/kraken/balda/secrets/` его **нет**. `backoffice-adminpw` — **другой пароль**
|
||||
(backoffice Балды, даёт 401 на MM API). Не тратить время на поиск — **логиниться `testuser`.**
|
||||
|
||||
### 🔴 ПРАВИЛО №4: ГДЕ ИСКАТЬ ЗАБЫТОЕ — ZULIP БАЗА, НЕ `session_search`
|
||||
|
||||
```bash
|
||||
docker exec zulip-database-1 psql -U zulip zulip -c "
|
||||
SELECT m.id, m.date_sent, REPLACE(REPLACE(LEFT(m.content,300),E'\n',' '),'|','/') as content
|
||||
FROM zerver_message m
|
||||
JOIN zerver_recipient r ON m.recipient_id = r.id
|
||||
WHERE r.type = 2 AND m.content ILIKE '%mm-post-user%'
|
||||
ORDER BY m.date_sent DESC LIMIT 10;"
|
||||
```
|
||||
|
||||
**Именно этот запрос вернул пароль `T3stPassw0rd!x`** после того, как `session_search` дал ноль.
|
||||
🔴 `session_search` индексирует сессии Hermes, **НЕ Zulip**. Сказано «из базы» → `docker exec psql`.
|
||||
Скилл: [[software-development/zulip-db-forensics]].
|
||||
|
||||
### 🔴 ПРАВИЛО №5: ЧИТАТЬ ЛЕНТУ — `mmctl --local post list` (работает!)
|
||||
|
||||
```bash
|
||||
ssh kraken 'docker exec mattermost mmctl --local post list qentra:balda-test 2>&1 | tail -30'
|
||||
```
|
||||
Создание запрещено, **чтение — работает**. Это и есть «читать сессию из базы».
|
||||
|
||||
### 🔴 ПРАВИЛО №6: ПРИЁМКА = ОТ АККАУНТА ALEX, НЕ ОТ `testuser`
|
||||
|
||||
`testuser` (`c6udeze8dfrdxm5jbgq55bd58r`) **НЕ владелец** → `settlement_stage=unauthorized`.
|
||||
Владелец — `admin` = `cbwsorzwoigbtrdnteugnx4aqo`. Ответ от `testuser` **доказывает конвейер,
|
||||
но НЕ работу для заказчика.** Для настоящей приёмки нужен его аккаунт.
|
||||
|
||||
---
|
||||
|
||||
## ✅ ПРИЁМКА ПРОЙДЕНА (2026-09-26, образ `balda-mm:0.1.10`)
|
||||
|
||||
**Сквозной путь проверен ОТ АККАУНТА ALEX — не от тестового.** Прошлая «приёмка» от
|
||||
|
||||
Reference in new issue
Block a user