3.3 KiB
3.3 KiB
Акылдаш — инструкции для агента
Проект: юридическая информационно-аналитическая платформа; 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по фактическим проверкам.