55 lines
5.0 KiB
Markdown
55 lines
5.0 KiB
Markdown
# WALKTHROUGH — dedinit.ru (капитанский журнал)
|
||
|
||
## 2026-09-13 — Пост «GoToSocial молча съедал статусы с релеев»
|
||
|
||
### Контекст
|
||
Опубликован пост о граблях с релеями GoToSocial: подписка выглядела рабочей (approved, 202 Accepted), а лента была пустой из-за отсутствия `match_by_default` и пустых матчеров (deny-by-default).
|
||
|
||
### Что сделано
|
||
1. Создан бандл `content/posts/20260913 - gotosocial relay match by default/`: index.md (frontmatter по конвенции, date 2026-09-13T03:00+03:00 в прошлом) + hero.svg (единый стиль).
|
||
2. `make build` — без ошибок; статья в `public/2026/gotosocial-relay-match-by-default/`, title и hero.svg на месте, RSS собрался (5 постов, новый первый).
|
||
3. Коммит 0fcfeb3 запушен в gitverse (истина).
|
||
4. Деплой `make deploy` (SSHPASS из docs/DEPLOY_INSTRUCTIONS.md) — прод отдаёт 200:
|
||
https://dedinit.ru/2026/gotosocial-relay-match-by-default/
|
||
5. docs/STATUS.md и docs/TODO.md обновлены (запись о публикации).
|
||
|
||
### Примечание
|
||
- Коммит/пуш правок docs/ в этой сессии блокировался песочницей (требует явного подтверждения) — изменения на диске, коммит по подтверждению пользователя.
|
||
|
||
## 2026-09-12 — Уборка структуры репозитория + OpenSpec
|
||
|
||
### Контекст
|
||
Репозиторий dedinit.ru (Hugo, тема rDedInit/PaperMod) имел документацию в корне; задача — привести к стандарту: README краткий, вся документация в docs/, AGENTS.md для агентов.
|
||
|
||
### Что сделано
|
||
1. **AGENTS.md создан** (корень) — правила: русский язык, структура (README краткий + docs/), стек (Hugo Extended, тема rDedInit, gitverse источник истины, деплой SFTP), статьи (bundle, date в прошлом, hero.svg), деплой только `make deploy`, git-правила, OpenSpec-процесс, проверки перед публикацией.
|
||
2. **Документация перенесена в docs/** (git mv): DEPLOY_INSTRUCTIONS.md, ROADMAP.md, PAPERMOD_PARAMS.md, QWEN.md, gitea-setup.md, ssh_setup_instructions.md, Telegram_frontend.md.
|
||
3. **Промежуточные файлы**: `.qwen/PROJECT_SUMMARY.md` → docs/archive/, `winscp_script.txt` → tools/.
|
||
4. **README.md переписан** кратко (55 строк): суть, быстрый старт, структура, указатели на docs/, конвенции. История убрана.
|
||
5. **Ссылки обновлены**: Makefile и tools/deploy_sftp.py → docs/DEPLOY_INSTRUCTIONS.md; docs/QWEN.md, docs/ROADMAP.md — пути.
|
||
6. **Коммиты/пуш**: d426aa3 (уборка), 0f4d6da (правило OpenSpec в AGENTS.md), f07bffe (openspec-propose локализации).
|
||
|
||
### OpenSpec — задача локализации
|
||
- Change: `openspec/changes/localize-i18n-ru/` (propose завершён, валиден).
|
||
- Артефакты: proposal.md (зачем), specs/i18n/spec.md (требования + сценарии), design.md (решения), tasks.md (5 задач).
|
||
- **Питфол синтаксиса**: `openspec validate --change <name>` — ОШИБКА (`unknown option '--change'`). Правильно: `openspec validate <name>`. Это зафиксировано во всех 6 локальных openspec-скиллах (.hermes/skills/openspec-*/SKILL.md).
|
||
|
||
### Файлы проекта
|
||
- Согласно правилу «вся документация в docs/» — файлы проекта лежат в docs/:
|
||
- `docs/STATUS.md` — текущее состояние, сделано, следующие шаги, как проверить.
|
||
- `docs/PRD.md` — требования, границы, критерии готовности.
|
||
- `docs/TODO.md` — журнал задач (история, статусы).
|
||
- `docs/WALKTHROUGH.md` — этот журнал.
|
||
|
||
### Как повторить / проверить
|
||
```bash
|
||
cd /opt/dedinit.ru
|
||
make build # сборка
|
||
openspec validate localize-i18n-ru # валидация active-change
|
||
git pull # обновление (origin = gitverse)
|
||
```
|
||
|
||
### Известные подводные камни
|
||
- `.hermes/` игнорируется git (.gitignore) — openspec-скиллы не коммитятся.
|
||
- Секреты: winscp_script.txt и DEPLOY_INSTRUCTIONS.md содержали SFTP-пароль в истории (известно, ротация не проводилась). В новые файлы пароли НЕ записывать.
|
||
- Yandex.Disk НЕ должен синхронизировать .git (ломал репозиторий на Windows). |