<Имя сервиса>
Этот README описывает <текущий сервис / целевую сервисную границу>. Читайте его, когда нужно понять ответственность сервиса, его контракты и соседние зависимости.
Назначение
<Одна фраза: что делает сервис.>
Статус документа
- Тип знания:
<current service | target service boundary> - Статус реализации:
<выделенный код есть | есть только scaffold | отдельный код пока отсутствует> - Текущее место кода:
<точные пути>илиотдельный путь пока не создан - Что читать дальше:
<добавьте 2-4 конкретные ссылки на схемы, ADR или соседние сервисы>
Область действия
Входит:
- <пункт>
- <пункт>
Не входит:
- <граница>
- <граница>
Публичный контракт
Вход
HTTP:
GET /v1/...— <описание>.POST /v1/...— <описание>.
Потребляемые Kafka-топики:
<topic.name>— <что делает в ответ>.
Выход
Публикуемые Kafka-топики:
<topic.name>— <описание>.
Исходящие HTTP/RPC-вызовы:
- Нет /
<service>— <зачем>.
Внутренняя архитектура
Clean architecture по стандарту (см. ../20-architecture/module-layout.md). Если документ описывает target boundary, явно помечайте, какие части уже есть в коде, а какие ещё нет.
Зависимости
- PostgreSQL — если есть state.
- Kafka — если есть событийное взаимодействие.
- <прочее>
Хранилище
Таблицы, индексы или хранилища, которые сервис читает / пишет:
<table or storage>— read/write.
Конфигурация
| Env var | Default | Описание |
|---|---|---|
<SERVICE>_... | — | <описание> |
Локальный запуск
- Если сервис уже выделен в отдельный runtime, приведите точные команды.
- Если сервис пока не выделен, напишите это явно и укажите, какой scaffold существует сейчас.
Тестирование
- Unit:
go test ./...сmockery-сгенерированными моками для внутренних портов. - Integration/service: сценарии на реальных адаптерах или testcontainers, если это отражает production-поведение.
- Provider contract tests: для внешних API — моковый сервер на fixture-ответах из
testdata/contracts/<provider>/. - Запрещено: hand-written mocks/stubs/fakes для нового production-кода без ADR.
Наблюдаемость
- Метрики: endpoint
/metrics, префикс<service>_. - Трейсинг: OTel, exporter — OTLP gRPC.
- Логи: структурированный JSON, stdout.
Ключевые метрики:
<service>_requests_total<service>_errors_total<service>_processing_duration_seconds
Открытые вопросы / TODO
- <пункт>
Связанные документы
- Бизнес-контекст:
<конкретная ссылка> - Схемы:
<конкретная ссылка> - Связанные сервисы:
<конкретные ссылки>