Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions AGENT_DIARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -1713,12 +1713,12 @@ BREACH: MSC-P-19 | date: 2026-10-03 | rule: §12 | guard_at_time: no | detected_
**Измерения, которые определили протокол:** LM Studio/llama.cpp **не принимает `tool_choice`** (400) ⇒ харнесс применяет дифф сам, а не доверяет tool-call; модель рассуждает в `content` («I haven't found the bug yet») ⇒ **двухфазный ответ** («теперь выведи только дифф»); бриф из головы файла ввёл модель в заблуждение («seems to be a diagnostic report script») ⇒ **код сам находит релевантный срез** по идентификаторам падающего теста; один вызов = **147 токенов**; **~150–300 с на вызов** ⇒ 24 шага ≈ 1–2 ч на задачу (практический блокер).
**Следующие рычаги (по убыванию ожидаемого эффекта):** (1) включить **MTP-драфтер** `gemma-4-26b-a4b-it-qat-mtp` (уже лежит на сервере; карточка требует QAT-драфтер той же точности) — должен срезать латентность; (2) ужать бюджет вывода шага write до 512 с двухфазным ответом; (3) **контролируемый A/B исполнителей на одном протоколе**: наш луп на Gemma 4 vs наш луп на шлюзе (Qwen3-Coder-480B, ≈$0.0004/запрос) — отделит «Gemma не может» от «сервер медленный».
**Не сделано:** кодовый агрегатор (LLM map-reduce) для 10 детей × 2 потока; применение фрагмента конфига к глобальному (файл владельца); повторные прогоны корпуса; T11-аудит своих чисел; коммита нет.
## [2026-10-21] Решения владельца применены: оркестратор = free OpenCode-аккаунт, Tīrtha выключен, ключ Tīrtha стоит ротировать (⚠️)
## [2026-10-21] Решения владельца применены: оркестратор = free OpenCode-аккаунт, внешний провайдер выключен, его ключ стоит ротировать (⚠️)
**Status:** ⚠️ глобальный конфиг изменён (бэкап рядом), прогоны эксперимента не запускались.
**Что сделано:** (1) **Tīrtha выключен** — глобальный `model` в `~/.config/opencode/opencode.jsonc` переключён с `tirtha/auto` на `opencode-go/minimax-m3.1-flash-free` (бэкап `opencode.jsonc.bak-20261021`); блок провайдера `tirtha` и ключ **оставлены** (включается одной строкой). BOM из файла убран (PS 5.1 `Set-Content -Encoding UTF8` его добавляет — риск для JSONC-парсера); `opencode debug config` резолвит: model = free, 4 MCP-сервера и провайдер tirtha целы. Эффект: **ежедневный OpenCode больше не списывает кредит $59.25** (текущая сессия продолжает использовать старый конфиг до перезапуска).
(2) **Оркестратор — бесплатная OpenCode-аккаунт-модель**, выбрана пробами (`probe_model.py`): `minimax-m3.1-flash-free` — **USABLE 12.5 с** ← взята; `beam-free` ответила за 9 с, но не тем токеном; `longcat-2.5-preview-free` и `muse-spark-1.2-contributor` — **таймаут**; метеред `claude-haiku-5-5` — **таймаут** (usage-limit Go-плана вешает CLI вместо ошибки). Правило: **модель годна только после пробы, которая вернула ответ**; зависание — это отказ, а не «медленный старт».
**Следствие, которое я зафиксировал в дизайне:** при слабом оркестраторе **план обязан быть code-first** (детерминированный скелет: одна микротаска на файл-кандидат, по порядку; модель только уточняет goal/порядок/acceptance). Обоснование — наш собственный факт: Tīrtha-планировщик (480B-кодер) **дважды вернул пустой план**, а рука при этом выглядела «сделанной» ⇒ планирование не должно зависеть от дешёвой модели.
**⚠️ Требует внимания:** мой диагностический `Select-String` по конфигу **напечатал `apiKey` Tīrtha в вывод сессии** (в репозиторий он не попал и в коммит не пойдёт, но лог сессии его видел) ⇒ **разумно ротировать ключ**.
**⚠️ Требует внимания:** диагностический вывод конфига один раз попал в лог сессии вместе с секретом (значение в репозиторий не попало). Правило: конфиги читать точечно и печатать только имена/маску; ключ стоит ротировать.
**Не сделано:** минимальный воркер-луп целиком, кодовый агрегатор и верификатор-рецепт, планировщик волн по 2; перезагрузка модели на сервере с `--parallel 2` (ждёт владельца); T11-аудит своих чисел; коммита нет.
## [2026-10-21] Живая проверка удалённого LM Studio: tool-calling работает, пол шага = 147 токенов ⇒ полоса 512–4096 измерена (⚠️ 1 пробный вызов на своём железе)
**Status:** ⚠️ сервер владельца прочитан и один раз дёрнут минимальным запросом (147 токенов на его железе, не на ключе Tīrtha). Прогоны эксперимента не запускались.
Expand Down
Loading