Andrey Epifancev cd5409be6e Тесты NATS-настроек: все ключи и пары subject, утечка секретов, strip seed, JWT в /healthcheck, лог старта (#32)
Фикс-волна minor-находок ревью (T6.1, T6.3, T2.2-аналог); tasks.md отмечен, кроме make check-full.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 12:56:27 +04:00

1.2 KiB
Raw Blame History

1. Тесты

  • 1.1 Unit: умолчания subject'ов, чтение OPENBAO__NATS__NATS_*_SUBJECT, отказ на */>/пробеле/пустом токене и совпадающих именах; SecretStr для NATS_JWT/NATS_SEED, отсутствие значений в ошибке валидации и repr
  • 1.2 Unit: /healthcheck.subjects (image_request, result) при nats = ok | down | off; лог старта с subject'ами
  • 1.3 Тесты интеграционные (tests/integration/) — уникальные subject'ы через настройки

2. Реализация

  • 2.1 core/config.py: поля и валидация NATSSettings, SecretStr, hide_input_in_errors=True
  • 2.2 Колбэки nkeys — get_secret_value()
  • 2.3 Подписка и публикация по настройкам; константы contract/subjects.py — умолчания
  • 2.4 /healthcheck.subjects, лог при старте

3. Документы

  • 3.1 api/.env.example, README (переменные NATS, /healthcheck)
  • 3.2 make check-full зелёный