# Backend — правила работы агента ## Стек - Go `1.26`; - gRPC + grpc-gateway; - PostgreSQL через `pgx`; - миграции Goose; - S3-совместимое хранилище для файлов; - MCP встроен в основной сервис. ## Стандарт Go-кода [`docs/GO_STANDARD.md`](docs/GO_STANDARD.md) — единственный источник правил написания Go-кода. Для задач, затрагивающих Go-бэкенд, соблюдай его требования. ## Проектные ограничения - Не добавляй `.env`, ключи, пароли или локальные артефакты в Git. - Коммиты и push выполняет только пользователь; агент никогда не коммитит и не отправляет изменения. ## Проверки ```sh gofmt -w <изменённые-go-файлы> go test ./... ``` После изменения protobuf: ```sh make generate ``` Для проверки с PostgreSQL используй отдельную тестовую базу через `TEST_DATABASE_URL`; интеграционные тесты не должны зависеть от production-базы. ## Локальный запуск ```sh docker compose -f docker-compose-db.yml up -d cp .env.example .env make run ``` gRPC слушает `:8080`, REST gateway — `:8090`.