diff --git a/personal/plans/balda-mm-pr-plan.md b/personal/plans/balda-mm-pr-plan.md index d07d7c64..734791f6 100755 --- a/personal/plans/balda-mm-pr-plan.md +++ b/personal/plans/balda-mm-pr-plan.md @@ -18,8 +18,8 @@ ## 0. ✅ ПОСТ-МЕРЖ: git-гигиена (2026-09-29) -Ветки снесены, prune выполнен, worktree почищены. Полный разбор — -[[personal/plans/balda-runtime-rebuild-mm-validation]] блок «2026-09-29». +Ветки снесены, prune выполнен, worktree почищены, `/tmp` и форки `norma` вычищены. +Полный разбор — [[personal/plans/balda-runtime-rebuild-mm-validation]] блок «2026-09-29». ```bash cd ~/Developer/balda @@ -32,13 +32,28 @@ git remote prune origin && git remote prune upstream git worktree remove --force <11 путей> && git worktree prune git branch -D codex/mattermost-prod-fix rm -rf ~/Developer/balda/personal +rm -rf /tmp/balda-* /private/tmp/balda-* # ~130 файлов +rm -rf ~/Developer/norma-local ~/Developer/norma-fork ~/Developer/norma-upstream-check # 291 МБ ``` +**Итог: `~/Developer/balda` = только `main`, один worktree, чистое дерево** (кроме `.gitignore`). + 🔴 **Питфолл: `git worktree list` показывал 10 несуществующих путей** `/private/tmp/balda-mm-pr8-*`. Каталоги снесены из `/tmp`, но `.git/worktrees/` живы и **держат ветку**: `git branch -D` → `error: cannot delete branch 'X' used by worktree at '/path'`. Порядок обязателен: `worktree remove --force` → `worktree prune` → `branch -D`. +🔴 **Питфолл при сносе форков `norma`:** в `~/Developer/norma-fork` лежал **непушенный** коммит +`70ff876 feat: support custom OpenAI base URL via OPENAI_BASE_URL env var` (ветка +`feat/custom-openai-base-url`). Это тот самый `OPENAI_BASE_URL`, на котором держится запуск Балды. +Проверять `git log --branches --not --remotes --oneline` **перед** `rm -rf` любого репо. + +📌 **`.gitignore` изменён (не закоммичен):** добавлены `/personal/` и `/tools/` — доки Obsidian +дважды попадали в корень репо из-за `write_file` с vault-относительным путём при cwd = репо. + +📌 **`~/Developer/balda/personal/` был дубликатом вотла, не уникальным контентом** — обе версии +в `~/obsidian` новее по размеру и дате. Сверять перед сносом, а не удалять по имени файла. + ⚠️ **Локальная `main` отстала от `upstream/main`.** MM-транспорт ушёл в **апстрим**, не в `origin/mallexxx/balda`, поэтому `git pull origin main` → `Already up to date` — это не «всё чисто», а «origin не содержит мержа». Догонять через `git merge upstream/main` (не rebase — `AGENTS.md`). diff --git a/personal/plans/balda-runtime-rebuild-mm-validation.md b/personal/plans/balda-runtime-rebuild-mm-validation.md index 0f6bee7a..0e330c6f 100755 --- a/personal/plans/balda-runtime-rebuild-mm-validation.md +++ b/personal/plans/balda-runtime-rebuild-mm-validation.md @@ -78,10 +78,43 @@ error: cannot delete branch 'X' used by worktree at '/path' | `~/Developer/runtime-local/tools/` | untracked, **рабочий дельта-апплер PR #4** (`apply-project-deltas.py`, `deltas-*.json`, `run-project-deltas.sh`). **Не удалять** | | `__dolt_remote_info__` | служебная ветка в обоих ремоутах — **не трогать** | -⚠️ **Незакрытый мусор:** ~130 файлов `/tmp/balda-*` (скрипты, логи, образы 0.1.9–0.1.14, кэши Go, -`balda-linux-arm64-runtime210`). Снос согласован не был. Откат на Kraken от этих образов **не +⚠️ **Мусор в `/tmp` — СНЕСЁН (2026-09-29):** ~130 файлов `/tmp/balda-*` (скрипты, логи, образы +0.1.9–0.1.14, кэши Go, `balda-linux-arm64-runtime210`). Откат на Kraken от этих образов **не зависит** — теги уже загружены в docker на хосте. +### ✅ Снос форков `norma` + правка `.gitignore` (2026-09-29) + +**`~/Developer/norma-local` · `norma-fork` · `norma-upstream-check` — УДАЛЕНЫ** (291 МБ). + +🔴 **Перед сносом `norma-fork` обнаружен непушенный коммит:** +`70ff876 feat: support custom OpenAI base URL via OPENAI_BASE_URL env var` +(ветка `feat/custom-openai-base-url`, в remotes его нет). Это тот самый `OPENAI_BASE_URL`, +на котором держится запуск Балды (в YAML `base_url` мёртв). Alex принял решение снести без +выгрузки патча. ⚠️ Если `OPENAI_BASE_URL` понадобится в апстриме `norma` — коммит восстанавливать +неоткуда, писать заново. +Также потеряна незакоммиченная правка `norma-local/pkg/runtime/hostedagent/openai.go`. + +**`.gitignore` в `~/Developer/balda` — изменён (НЕ закоммичен):** +```gitignore +# Local notes accidentally written with vault-relative paths +/personal/ +/tools/ +``` +Причина: доки Obsidian (`personal/plans/...`, `personal/tech/...`) дважды попадали в корень репо +из-за вызова `write_file` с vault-относительным путём при cwd = `~/Developer/balda`. `/personal/` +защищает от повтора; `/tools/` — untracked локальный дельта-апплер. + +📌 **Мусор `~/Developer/balda/personal/` был дубликатом вотла, не уникальным контентом.** +Сверка по содержимому перед сносом: + +| Файл в репо | В `~/obsidian` | Вердикт | +|---|---|---| +| `plans/runtime-pr5-toolset-dedup-review-fixes.md` 15 KB @ 09-28 | **23 KB @ 09-29** | репо — устаревший черновик | +| `tech/music-broken-tolad.md` 4.7 KB @ 09-26 | **6.6 KB @ 09-27** | репо — устаревшая копия | + +Обе версии в вотле новее и полнее → потерь нет. 📌 **Урок:** перед сносом «мусора» сверять +содержимое с вотлом по размеру+дате, а не только по имени файла. + ⚠️ **2 stash в `~/Developer/balda`** — `stash@{0}` (logging-дебаг whale-20260623, 2 файла), `stash@{1}` (zulip-events WIP, 2 файла вкл. `go.mod`). **Не удалены**, решение за Alex. Если понадобится — `git stash show -p stash@{N} > /path/patch.diff` перед `stash drop`. @@ -486,12 +519,20 @@ reboot**. Источники в `~/Developer/balda/tools/` (созданы за 6. **Починить bridge `balda-executor-mcp`** — HTTP 000 + JSONDecodeError (отдельная инфра). 7. Прогнать сценарии D2-b / D2-c (после части B) — они и есть приёмка надёжности WS. 8. ✅ ~~Убрать мусор `~/Developer/balda/personal/`~~ — снесён 2026-09-29. -9. ⚠️ Временное в `/tmp` (не переживёт reboot): `mergemsg.txt`, `balda-test.log`, - `/tmp/mm-*.sh` на Kraken. **Плюс ~130 файлов `/tmp/balda-*`** — снос не согласован (см. блок 2026-09-29). +9. ✅ ~~Временное в `/tmp`~~ — **~130 файлов `/tmp/balda-*` снесены 2026-09-29.** Осталось на Kraken: + `/tmp/mm-*.sh` (не переживут reboot; источники в `~/Developer/balda/tools/`). 10. 🔴 **Локальная `main` отстала от `upstream/main`.** `git pull origin main` даёт `Already up to date` — MM-транспорт ушёл в **апстрим**, не в `origin/mallexxx/balda`. Чтобы догнать, нужен `git merge upstream/main` (не rebase — правило AGENTS.md). **Решение Alex по этому пункту не получено** — спрашивать перед действием. +11. ⚠️ **`.gitignore` изменён и НЕ закоммичен** (`/personal/`, `/tools/`). Решение по коммиту + за Alex. Коммитить **только этот файл** — `go.mod`/`Dockerfile.release`/`go.sum`/`app.go`/ + `preflight.go` не трогать (вне PR, нужны для стенда). +12. ⚠️ **2 stash в `~/Developer/balda` не удалены** — `stash@{0}` (logging-дебаг whale-20260623), + `stash@{1}` (zulip-events WIP вкл. `go.mod`). Решение за Alex. +13. ✅ ~~Форки `norma`~~ — `norma-local`/`norma-fork`/`norma-upstream-check` снесены 2026-09-29 + (291 МБ). ⚠️ Вместе с `norma-fork` потерян непушенный `70ff876` (`OPENAI_BASE_URL`) — + см. блок «Снос форков `norma`». ## Связанные заметки diff --git a/personal/plans/runtime-pr5-toolset-dedup-review-fixes.md b/personal/plans/runtime-pr5-toolset-dedup-review-fixes.md index 847c2b65..54e9c1c1 100755 --- a/personal/plans/runtime-pr5-toolset-dedup-review-fixes.md +++ b/personal/plans/runtime-pr5-toolset-dedup-review-fixes.md @@ -18,6 +18,14 @@ > ⚠️ **`~/Developer/norma-local`, `norma-fork`, `norma-upstream-check` — это форки `norma`, > ДРУГОГО репозитория.** К PR #4/#5/#7 отношения не имеют, хотя названия сбивают. > `runtime-local` — единственный настоящий клон `runtime`. +> +> 🗑️ **СНЕСЕНЫ 2026-09-29** (291 МБ, решение Alex). ⚠️ Вместе с `norma-fork` потерян +> **непушенный** коммит `70ff876 feat: support custom OpenAI base URL via OPENAI_BASE_URL env var` +> (ветка `feat/custom-openai-base-url`, в remotes отсутствовал) + незакоммиченная правка +> `norma-local/pkg/runtime/hostedagent/openai.go`. Это тот самый `OPENAI_BASE_URL`, на котором +> держится запуск Балды (в YAML `base_url` мёртв — см. [[personal/tech/balda-go-fx-pitfalls]]). +> **Восстанавливать неоткуда** — при необходимости писать заново. +> 📌 Урок: перед `rm -rf` репо — `git log --branches --not --remotes --oneline`. ---