CI / ruff · mypy · pytest (pull_request) Failing after 3m40s
- app/pipeline: протокол CIProvider, клиент Gitea Actions (прогон по head_sha, упавший шаг, лог джоба, ретраи), PipelineWatcher — опрос только при незавершённых push, сообщение о push обновляется CI ⏳ → ✅/❌ → CD 🚀/⛔, автору — отдельные уведомления - деплой сервисов — только после зелёного CI; старый push не откатывает сервис, который развернёт более новый; после рестарта бот продолжает с того же места - CI_PROVIDER=none — прежнее поведение (деплой сразу после push) - шаблон tgit-uploads: .gitea/workflows/check.yml; .gitea/ защищён от правок из бота - миграция 0002: старые push помечены skipped, чтобы не слать им «таймаут CI» - ADR-016, ARCHITECTURE §2.5/§5.2, README, DEPLOY, .env.example Refs #11 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
infra/
| Каталог | Что будет | Задача |
|---|---|---|
deploy/ |
deploy.sh + remote.sh — деплой бота на сервер (CD и руками), см. docs/dev/DEPLOY.md |
#12 |
runner/ |
tgit-runner — песочница и запуск сервисов на хосте, установка |
#13 |
uploads-template/ |
шаблон tgit-uploads: CI/CD, служебные скрипты .tgit/, ruff.toml, демо-сервис hello — правки вносить здесь и переносить в репозиторий загрузок |
#7 |