SourceCraft берёт триггеры CI из основной ветки — её переключил на dev (в SourceCraft, не в Gitea). Автозапуск заработает после мержа этого PR в dev — проверю сразу после мержа.
Как проверить
Ручной прогон 1000000 — ✅ (SourceCraft → CI/CD).
Проба с ошибкой ruff 1000001 — ❌ на lint.
После мержа: любой push в Gitea → прогон с event_type: push в SourceCraft.
## Что меняется
CI бота в SourceCraft: на каждый push — `lint` (ruff, format, mypy strict) и `test` (pytest + порог покрытия). Порог — храповик в `pyproject.toml`.
Closes #6
## Важно
SourceCraft берёт триггеры CI из основной ветки — её переключил на `dev` (в SourceCraft, не в Gitea). **Автозапуск заработает после мержа этого PR в `dev`** — проверю сразу после мержа.
## Как проверить
- Ручной прогон `1000000` — ✅ (SourceCraft → CI/CD).
- Проба с ошибкой ruff `1000001` — ❌ на `lint`.
- После мержа: любой push в Gitea → прогон с `event_type: push` в SourceCraft.
## Чек-лист
- [x] ветка от origin/dev
- [x] lint + тесты зелёные
- [x] секретов в диффе нет
- [x] лог в issue дописан
🤖 Generated with [Claude Code](https://claude.com/claude-code)
push в любую ветку (зеркало из Gitea, ADR-010) → кубы lint и test параллельно.
Порог покрытия — храповик в pyproject (fail_under), одинаков локально и в CI.
Refs #6
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Что меняется
CI бота в SourceCraft: на каждый push —
lint(ruff, format, mypy strict) иtest(pytest + порог покрытия). Порог — храповик вpyproject.toml.Closes #6
Важно
SourceCraft берёт триггеры CI из основной ветки — её переключил на
dev(в SourceCraft, не в Gitea). Автозапуск заработает после мержа этого PR вdev— проверю сразу после мержа.Как проверить
1000000— ✅ (SourceCraft → CI/CD).1000001— ❌ наlint.event_type: pushв SourceCraft.Чек-лист
🤖 Generated with Claude Code