# Задачи - [x] web/app.py: идемпотентный ALTER TABLE posts ADD COLUMN translated_text (при старте) - [x] web/app.py: helper _translate_text (прямой запрос к Ollama — call_ollama жёстко парсит JSON, для перевода непригоден; лимит 6000) - [x] web/app.py: POST /posts/{post_id}/translate (повторный клик — без LLM, проверено) - [x] web/templates/candidates.html: закладки «Оригинал»/«Перевод» + кнопка «🌐 Перевести» - [x] web/templates/selected.html: то же в колонке оригинала - [x] vanilla JS переключения вкладок (scripts-блок, паттерн bulk-чекбоксов) - [x] openspec validate post-translate — чисто - [x] Рестарт vesti-web, ручная проверка: пост EN → «Перевести» → закладка «Перевод»; повторный клик — без модели - [ ] Обновить STATUS.md