Срез 0: скелет tabular-parser — без фронта и БД, воркер NATS без JetStream, парсер-заглушка, контракт v1.0 #3

Merged
aep merged 50 commits from feat/1-slice-0-skeleton into main 2026-10-04 18:41:02 +03:00
Showing only changes of commit 71e79670c0 - Show all commits

View File

@ -45,3 +45,13 @@ ack не блокирует результат») и закрывает зада
дедупликации должен стать `(job_id, attempt)`. Предложение: зафиксировать в контракте, что новая попытка — это новый
`attempt` и сервис обрабатывает её заново; тогда в воркере ключ LRU меняется на `(job_id, attempt)` (одна строка).
Пока ядро повторяет только тем же `attempt` (повтор без ack), текущее поведение корректно.
## P-4. `docs/dev/README.md`: порт tabular-parser и копирование `.env.example` (прогон DoD, задача 5.2)
- `../docs/dev/README.md` («Запуск сервисов из venv без Nexus») называет порт `tabular-parser` в профиле `services` 8001, а сервис
по умолчанию слушает 8000 (`SERVER__PORT`, шаблон команды); там же советует `cp ../docs/dev/.env.example api/.env` —
для этого сервиса избыточно (в нём нужны только `OPENBAO__MINIO__*`, `OPENBAO__NATS__NATS_URL`, `DEBUG`; свой
`api/.env.example` лежит в репозитории).
- **Предложение.** В docs либо задавать `SERVER__PORT=8001` в профиле `services` (переменная окружения контейнера), либо
привести текст README к 8000; ожидаемые поля `/healthcheck` для `tabular-parser` — `uptime`, `version`, `nats`.
Файлы в `../docs` этот change не меняет.