diff --git a/docs/progress.md b/docs/progress.md new file mode 100644 index 0000000..174430b --- /dev/null +++ b/docs/progress.md @@ -0,0 +1,46 @@ +# Прогресс миграции Python → Go + +Источник истины по статусу фаз. Обновляется после каждого завершённого шага. + +- Общий план: [plan-go-migration.md](plan-go-migration.md) +- Универсальный промпт для запуска фазы: [execute-phase-prompt.md](execute-phase-prompt.md) + +## Статус + +| # | Фаза | Статус | Начата | Завершена | Commit/PR | Заметки | +|----|------------------------------------------------------|--------------|------------|------------|-----------|---------| +| 0 | [Архивирование Python](phases/phase-0-archive.md) | 🔄 in_progress| 2026-04-18 | — | — | | +| 1 | [Go-скелет](phases/phase-1-skeleton.md) | ⏳ pending | — | — | — | | +| 2 | [Converter (goldmark)](phases/phase-2-converter.md) | ⏳ pending | — | — | — | | +| 3 | [HTTP-сервер](phases/phase-3-server.md) | ⏳ pending | — | — | — | | +| 4 | [UI на templUI](phases/phase-4-ui.md) | ⏳ pending | — | — | — | | +| 5 | [CLI-подкоманда](phases/phase-5-cli.md) | ⏳ pending | — | — | — | | +| 6 | [Docker + CI](phases/phase-6-docker-ci.md) | ⏳ pending | — | — | — | | +| 7 | [Документация + v0.2.0](phases/phase-7-docs.md) | ⏳ pending | — | — | — | | + +Легенда статусов: +- ⏳ `pending` — не начата +- 🔄 `in_progress` — в работе +- ✅ `done` — завершена, acceptance criteria выполнены +- ⚠️ `blocked` — заблокирована, см. заметки + +## Инварианты между фазами + +- `git status` чист перед началом каждой фазы. +- Каждая фаза завершается отдельным commit в `main` (или PR с мёрджем). Сообщение в формате `phaseN: <краткое описание>`. +- Acceptance criteria фазы проверяются до смены статуса на `done`. +- Любое отклонение от плана документируется в колонке «Заметки» с ссылкой на commit. + +## Лог ключевых решений (ADR lite) + +| Дата | Решение | Обоснование | +|------------|---------|-------------| +| 2026-04-18 | Goldmark + chroma inline + extension.Footnote + кастомный anchor-extender | См. `plan-go-migration.md` §11 | +| 2026-04-18 | ASCII-транслит id заголовков через `mozillazg/go-unidecode` | Решение пользователя (round-1) | +| 2026-04-18 | One-shot preview/download с UUIDv4 + TTL 1 ч | Решение пользователя (round-1) | +| 2026-04-18 | GitHub-style prefix-anchor (`` как первый child ``), не wrap-anchor | Закрытие F-01 round-3 — избегаем nested `` | +| 2026-04-18 | `extractHeadingText` walker вместо deprecated `BaseNode.Text(src)` | Закрытие F-02 round-3 | +| 2026-04-18 | `