[needs-human][devops] deploy-obsidian.yml: живо ли GitHub-зеркало, или workflow мёртв с 16.05? #2416

Closed
opened 2026-07-04 12:38:33 +00:00 by bot-backend · 2 comments
Collaborator

Находка (2026-07-04, при диагностике couchdb healthcheck)

.github/workflows/deploy-obsidian.yml документирован в README как «остался на GitHub» — намеренное исключение из миграции на Forgejo Actions (16.05.2026). Но:

  • В этом чекауте (origin = только git.gendsgn.ru) нет git remote на GitHub вообще.
  • Прямая проверка Forgejo Actions API: 0 запусков deploy-obsidian за всю историю (12417 прогонов всех остальных workflow'ов, ни один не deploy-obsidian).
  • Контейнер gendesign-couchdb не пересоздавался с 17 мая (день после миграции) — до сегодняшнего дня, когда я вручную пересоздал его SSH-командой в обход workflow, чтобы докатить фикс healthcheck (#2413).

Вопрос

Есть ли реально живое зеркало на github.com с настроенными секретами (DEPLOY_HOST/USER/SSH_KEY/PORT), которое исполняет этот workflow отдельно от Forgejo? Если да — где оно и почему gendesign-couchdb не обновлялся полтора месяца (17.05 → 04.07)? Если такого зеркала нет (или оно сломано/заброшено) — docker-compose.obsidian.yml фактически не деплоится автоматически ни при каких изменениях, только вручную по SSH.

Что НЕ стал делать сам

Не стал переносить workflow в .forgejo/workflows/ и не стал удалять из .github/workflows/ — это трогает секреты/архитектуру CI, которую я не могу полностью проверить без доступа к возможному GitHub-зеркалу. Решение нужно от тебя.

Рекомендация (на твоё усмотрение)

Если зеркала нет/оно мертво — перенести deploy-obsidian.yml в .forgejo/workflows/ (я уже прикинул diff — самореференс-путь в paths:-триггере нужно поменять с .github/workflows/... на .forgejo/workflows/..., остальное 1-в-1) и обновить README + docs/obsidian-livesync.md.

Пока держится вручную: healthcheck-фикс (#2413) докатан SSH-командой сегодня, couchdb healthy.

## Находка (2026-07-04, при диагностике couchdb healthcheck) `.github/workflows/deploy-obsidian.yml` документирован в README как **«остался на GitHub»** — намеренное исключение из миграции на Forgejo Actions (16.05.2026). Но: - В этом чекауте (`origin` = только `git.gendsgn.ru`) нет git remote на GitHub вообще. - Прямая проверка Forgejo Actions API: **0 запусков `deploy-obsidian` за всю историю** (12417 прогонов всех остальных workflow'ов, ни один не deploy-obsidian). - Контейнер `gendesign-couchdb` не пересоздавался с **17 мая** (день после миграции) — до сегодняшнего дня, когда я вручную пересоздал его SSH-командой в обход workflow, чтобы докатить фикс healthcheck (#2413). ## Вопрос Есть ли реально живое зеркало на github.com с настроенными секретами (`DEPLOY_HOST/USER/SSH_KEY/PORT`), которое исполняет этот workflow отдельно от Forgejo? Если да — где оно и почему `gendesign-couchdb` не обновлялся полтора месяца (17.05 → 04.07)? Если такого зеркала нет (или оно сломано/заброшено) — `docker-compose.obsidian.yml` фактически **не деплоится автоматически ни при каких изменениях**, только вручную по SSH. ## Что НЕ стал делать сам Не стал переносить workflow в `.forgejo/workflows/` и не стал удалять из `.github/workflows/` — это трогает секреты/архитектуру CI, которую я не могу полностью проверить без доступа к возможному GitHub-зеркалу. Решение нужно от тебя. ## Рекомендация (на твоё усмотрение) Если зеркала нет/оно мертво — перенести `deploy-obsidian.yml` в `.forgejo/workflows/` (я уже прикинул diff — самореференс-путь в `paths:`-триггере нужно поменять с `.github/workflows/...` на `.forgejo/workflows/...`, остальное 1-в-1) и обновить README + `docs/obsidian-livesync.md`. Пока держится вручную: healthcheck-фикс (#2413) докатан SSH-командой сегодня, couchdb healthy.
Author
Collaborator

Смежная находка в этом же расследовании: .claude/worktrees/ копил 69 забытых worktree

Штатный scripts/cleanup-merged-worktrees.sh никогда не срабатывал — 3 независимых бага (хардкод remote-алиаса forgejo вместо origin, ancestor-check несовместим со squash-merge конвенцией репо, одинарный --force недостаточен для worktree, залоченных супервизором). Починил и завёл отдельно: PR #2418.

Классификация по факту: 21 безопасны к удалению, 30 dirty (незакоммиченные правки — вероятно осиротевшие дубликаты, где работа уехала в PR через другую ветку), 13 ещё в работе.

Само удаление скрипт не выполнит из активной оркестраторской сессии (git worktree remove -f -f тихо не срабатывает на harness-managed путях, похоже на намеренную защиту) — нужен запуск либо из обычного терминала вне Claude Code, либо Ctrl+X дважды в agent view на каждую сессию. Текущий объём: du -sh .claude/worktrees/ можно посмотреть на месте, накопление за весь билд-цикл, вероятно несколько ГБ.

## Смежная находка в этом же расследовании: `.claude/worktrees/` копил 69 забытых worktree Штатный `scripts/cleanup-merged-worktrees.sh` никогда не срабатывал — 3 независимых бага (хардкод remote-алиаса `forgejo` вместо `origin`, ancestor-check несовместим со squash-merge конвенцией репо, одинарный `--force` недостаточен для worktree, залоченных супервизором). Починил и завёл отдельно: [PR #2418](https://git.gendsgn.ru/lekss361/gendesign/pulls/2418). Классификация по факту: 21 безопасны к удалению, 30 dirty (незакоммиченные правки — вероятно осиротевшие дубликаты, где работа уехала в PR через другую ветку), 13 ещё в работе. **Само удаление скрипт не выполнит из активной оркестраторской сессии** (`git worktree remove -f -f` тихо не срабатывает на harness-managed путях, похоже на намеренную защиту) — нужен запуск либо из обычного терминала вне Claude Code, либо `Ctrl+X` дважды в agent view на каждую сессию. Текущий объём: `du -sh .claude/worktrees/` можно посмотреть на месте, накопление за весь билд-цикл, вероятно несколько ГБ.
Author
Collaborator

Решено. Живого GitHub-зеркала не было: deploy-obsidian.yml лежал в .github/workflows/ с миграции (16.05.2026), но там его никто не запускал — 0 прогонов за всю историю Forgejo Actions.

Перенесено в .forgejo/workflows/deploy-obsidian.yml — PR #2439 (squash-merge).

Верификация: после мерджа workflow сработал впервые в жизни — run #4515, статус success. Подтверждено на VPS: CouchDB-контейнер пересоздан ровно в окно прогона (StartedAt: 2026-07-05T15:35:15Z, run 15:34:58→15:36:57), curl -u ... https://obsidian.gendsgn.ru/_up{"status":"ok"}.

Заодно поправлены устаревшие .github/ ссылки в README.md, docs/obsidian-livesync.md, .claude/rules/deploy.md.

Vault (46830 документов) весь этот процесс не затронул — жил на ручном SSH-фиксе с 04.07 (healthcheck, #2413), теперь на автоматическом деплое.

**Решено.** Живого GitHub-зеркала не было: `deploy-obsidian.yml` лежал в `.github/workflows/` с миграции (16.05.2026), но там его никто не запускал — 0 прогонов за всю историю Forgejo Actions. Перенесено в `.forgejo/workflows/deploy-obsidian.yml` — PR #2439 (squash-merge). **Верификация**: после мерджа workflow сработал впервые в жизни — run [#4515](https://git.gendsgn.ru/lekss361/gendesign/actions/runs/4515), статус `success`. Подтверждено на VPS: CouchDB-контейнер пересоздан ровно в окно прогона (`StartedAt: 2026-07-05T15:35:15Z`, run 15:34:58→15:36:57), `curl -u ... https://obsidian.gendsgn.ru/_up` → `{"status":"ok"}`. Заодно поправлены устаревшие `.github/` ссылки в README.md, docs/obsidian-livesync.md, .claude/rules/deploy.md. Vault (46830 документов) весь этот процесс не затронул — жил на ручном SSH-фиксе с 04.07 (healthcheck, #2413), теперь на автоматическом деплое.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#2416
No description provided.