1.8 KiB
1.8 KiB
Разработка
Внутренний проект. Ниже — короткие правила, чтобы изменения проходили ревью быстро.
Окружение
export GOPRIVATE=git.totmin.ru
make build # собрать бинарник
make ci # build + test(race) + lint + tidy-check (то же, что CI)
Требуется Go 1.27+ и доступ к приватному модулю forge-toolkit на
git.totmin.ru (для него задаётся GOPRIVATE).
Локальный стенд
make demo # поднять config_server v1.1.0 и прогнать сквозной сценарий
make demo-down # остановить и очистить
Принципы кода
- Домен (
internal/configserver) не зависит от MCP; MCP-слой (internal/tools) — только трансляция запрос/ответ. - Простота и читаемость важнее «умности»; код документируется по существу.
- Новый инструмент: схема с описанием, обработчик, тест, запись в
docs/tools.md. - Секреты только из переменных окружения или
config.local.json(в.gitignore), никогда — вconfig.jsonи коде.
Перед коммитом
make ci
Проверки: gofmt, go vet, go test -race, golangci-lint, go mod tidy.
CI (.gitea/workflows/ci.yml) запускается на PR и push в main.
Коммиты и PR
- Осмысленные сообщения; в PR — что, зачем, как проверяли, влияние на безопасность.
- Пользовательские изменения отмечайте в
CHANGELOG.md.