Files
akyldash/AGENTS.md
agent e034fdb816
CI / tests-and-images (pull_request) Has been cancelled
Runner smoke test / runner-smoke (pull_request) Has been cancelled
feat(infra): prepare isolated repository CI runner
2026-10-12 00:35:42 +03:00

3.3 KiB
Raw Permalink Blame History

Акылдаш — инструкции для агента

Проект: юридическая информационно-аналитическая платформа; Search API на Python, SQLite и OpenSearch. Production пока не развернут.

  • Начинай с инфраструктурного состояния и правил доступа. Не запрашивай доступы повторно.
  • Архитектура и процедуры: инфраструктура, деплой, backup, rollback, восстановление.
  • Работай в feature/fix/refactor-ветке. main защищена; изменения вноси через PR, не сливай его автоматически. Сохраняй незакоммиченные изменения.
  • SSH alias — akyldash_vps; используй только read-only диагностику. Не давай codex общий sudo или доступ к Docker socket. Root-действия требует владелец. Для Gitea используй gitea-api, не читай файлы с учётными данными.
  • Репозиторный Gitea Actions runner описан в CI_RUNNER.md. Регистрация выполняется владельцем через Settings → Actions → Runners для admin/akyldash; токен вводится интерактивно и не попадает в Git. Runner использует отдельный rootless Docker daemon; job-контейнеры не получают Docker socket или production secrets. Не включай production deployment из CI без отдельного проверенного deploy-helper.
  • Локальные проверки: PYTHONPATH=backend python3 -m unittest discover -s backend -p 'test_*.py' -v и python3 -m unittest discover -s tools/telegram-bot -p 'test_*.py' -v, python3 -m unittest discover -s infra/backup -p 'test_*.py' -v и python3 -m unittest discover -s infra/deploy -p 'test_*.py' -v, bash infra/bootstrap/test-host-guard.sh. Production images собираются командами из .gitea/workflows/ci.yaml.
  • Перед изменениями production необходим проверенный backup. Формального механизма миграций нет; проверяй совместимость SQLite/OpenSearch. Не меняй SSH, firewall или production вручную без владельца и последующего PR.
  • Холодный backup требует согласованного окна простоя; восстановление допускается только в новый staging-каталог, пока владелец отдельно не проверил процедуру для нового хоста.
  • После каждого изменения инфраструктуры обновляй docs/operations/CURRENT_STATE.md по фактическим проверкам.