009 add docker compose
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
---
|
||||
id: 010
|
||||
title: Migrate to YAML-only configuration loading
|
||||
status: TODO
|
||||
created: 2026-03-08
|
||||
---
|
||||
|
||||
## Context
|
||||
В проекте используется смешанный подход конфигурации с переменными окружения. Требуется унифицировать источник конфигурации и оставить только `config.yaml`.
|
||||
|
||||
## Goal
|
||||
Убрать использование переменных окружения из runtime-конфигурации приложения и перевести загрузку всех параметров на чтение из `config.yaml`.
|
||||
|
||||
## Constraints
|
||||
- Соблюдать layered architecture из `AGENTS.md`.
|
||||
- Scope задачи: только механизм загрузки конфигурации и места её потребления.
|
||||
- Запрещено менять бизнес-правила и поведение use-case, не связанное с конфигурацией.
|
||||
- Не изменять файлы в `spec/`.
|
||||
|
||||
## Acceptance criteria
|
||||
- Runtime-конфигурация приложения загружается только из `config.yaml`.
|
||||
- Переменные окружения не используются для чтения параметров Controller, Service, Business Logic, Repository, Adapter, Observability и Alerts.
|
||||
- При отсутствии обязательных полей в `config.yaml` приложение завершает запуск с детерминированной ошибкой валидации конфигурации.
|
||||
- Тесты конфигурации больше не опираются на `monkeypatch` переменных окружения и проверяют чтение из YAML.
|
||||
|
||||
## Definition of Done
|
||||
- [ ] Удалено чтение переменных окружения из конфигурационного слоя.
|
||||
- [ ] Все компонентные секции конфигурации продолжают читаться из `config.yaml`.
|
||||
- [ ] Обновлены тесты конфигурации под YAML-only поведение.
|
||||
- [ ] Smoke test старта приложения проходит с валидным `config.yaml`.
|
||||
|
||||
## Tests
|
||||
- Обновить `tests/config/test_config_sections.py` под проверку YAML-only загрузки.
|
||||
- Добавить/обновить негативные тесты отсутствующих обязательных YAML-полей.
|
||||
- Проверить app startup smoke test с валидным `config.yaml`.
|
||||
|
||||
## Commands
|
||||
- `poetry run pytest tests/config/test_config_sections.py -q`
|
||||
- `poetry run pytest tests/smoke/test_app_import.py -q`
|
||||
Reference in New Issue
Block a user