# План: вывод Zulip из эксплуатации (decommission) _Создан: 2026-09-29_ ## Цель Снести Zulip-стек на Mac (Colima Docker), **сохранив историю переписки**. Транспорт Hermes уже переехал на Mattermost — Zulip держится только ради истории. ## Состояние | Этап | Статус | |---|---| | 1. Выгрузка истории в SQLite | ✅ сделано 2026-09-29 | | 2. Верификация целостности | ✅ сделано | | 3. Правка ссылок на Zulip DB в скиллах/SOUL | ⏳ план согласован, ждёт выбора варианта | | 4. Снос стека | ⛔ не начато | **Артефакт этапа 1:** `~/Documents/zulip_message_history.sqlite` (78.1 MB, 134 734 сообщения) → инструкция по поиску в [[tech/zulip-message-history]] ## Решение: формат истории Рассматривались три варианта: | Вариант | Плюсы | Минусы | Итог | |---|---|---|---| | `pg_dump` (custom format) | полный бэкап, восстановим одной командой | нечитаем без psql; тянет за собой весь Postgres | ❌ отклонён | | Экспорт в markdown-файлы по тредам | читаемо в Obsidian, grep-абельно | 197 файлов, ломает структуру при правках, нет поиска по тексту | ❌ отклонён | | **SQLite + FTS5** | один файл, структура тредов через FK, полнотекстовый поиск | нужен `sqlite3` CLI | ✅ **выбран** | **Явное указание Alex:** «никаких вложений и меты. только история переписки». Поэтому pg_dump, volume `zulip_zulip-data`, аплоады и аватары в выгрузку не попали. ## Открытый вопрос (шаг 3) — правка ссылок на Zulip DB Найдено **7 групп файлов**, ссылающихся на `zulip-db-forensics` / `psql` к Zulip. После сноса эти инструкции станут нерабочими. | # | Файл | Ссылок | |---|---|---| | 1 | `~/.hermes/hermes-whale/SOUL.md:36` | 1 | | 2 | `~/.hermes/hermes-whale/memories/USER.md` | 1 | | 3 | `skills/software-development/zulip-db-forensics/SKILL.md` | основной | | 4 | `skills/software-development/zulip-thread-handoff/SKILL.md` | 4 | | 5 | `skills/software-development/zulip-bot-routing/SKILL.md` | 6 | | 6 | `skills/software-development/project-progress-audit/SKILL.md` | 3 | | 7 | `eagle-dashboard`, `systematic-debugging`, `personal-os-daily-brief`, `zfs-panic-recovery`, `htpc-steam-shortcuts` | по 1 | **Предложенные варианты:** - **A (чисто)** — переименовать скилл `zulip-db-forensics` → `message-history-search`, перевести все 7 групп на SQLite. ~10 файлов. - **B (минимально)** — только `SOUL.md` + `USER.md` + блок «ИСТОЧНИК = SQLite» в скилл. 3 файла. - **C (гибрид, рекомендован)** — `SOUL.md` + `USER.md` + переписать тело `zulip-db-forensics/SKILL.md` на SQLite, **имя скилла не менять** (8 входящих ссылок переименование сломает без выгоды), в остальных файлах заменить только psql-команды. **Решение не принято** — ждёт ответа Alex. ## Шаг 4 — снос (выполнять ПОСЛЕ шага 3) ```bash cd ~/Developer/zulip docker compose down docker volume rm zulip_zulip-data zulip_zulip-pgdata zulip_zulip-rabbitmq zulip_zulip-redis docker rmi zulip/docker-zulip:11.6-0 ``` ### 🔴 Порядок важен: сначала зависимости 1. **`zulip-router`** (`~/Developer/zulip-router/`, порт 8090) — поллит Zulip Events API. Снести/остановить **до** Zulip, иначе словит restart-loop на мёртвом API. 2. **Hermes `platforms: zulip`** в `~/.hermes/config.yaml` — уже не используется (транспорт Mattermost), но платформа в конфиге останется висеть. Убрать или выключить. 3. **Bot-роутинг** (Валера/Клавдий/Eagle/Кит webhook `host.docker.internal:8644-8645`) — уходит вместе с Zulip. Balda-боты остаются без транспорта. ### Что освободится | Ресурс | Объём | |---|---| | Образ `zulip/docker-zulip:11.6-0` | 3.84 GB | | Volume `zulip_zulip-pgdata` | 503 MB (на диске) | | Volume `zulip_zulip-data` | 38.1 MB | | Контейнеры (5 шт) | ~260 MB | ## Проверка перед сносом (обязательно) - [ ] `sqlite3 ~/Documents/zulip_message_history.sqlite "PRAGMA integrity_check;"` → `ok` - [ ] `count(*)` из `messages` = **134 734** - [ ] FTS-запрос по известному слову возвращает результаты - [ ] Файл продублирован вне Mac (Time Machine / Kraken / NAS) — **не сделано**, Alex не подтвердил необходимость ## Связанные документы - [[tech/zulip-message-history]] — SQLite с историей и инструкция по поиску - [[projects/zulip-router]] — архитектура роутера, конфиг ботов - [[tech/hermes-whale-mattermost-transport]] — текущий транспорт Hermes - [[tech/docker-mac-disk-issues]] — контекст: почему Zulip тормозил