Project type: work
AI tags: work, ais, backend, rest-api, configuration, monitoring
Description
Реализовать новый REST endpoint, который возвращает текущую конфигурацию сервиса в безопасном виде (без чувствительных данных). Endpoint должен быть расположен в src/ais_hub/publish/rest.py и возвращать JSON с параметрами, необходимыми для мониторинга и отладки (слушатели, хранилище, логирование, но без паролей и секретных ключей).
Endpoint GET /api/v1/config-info доступен и возвращает HTTP 200
Ответ содержит безопасную информацию о текущей конфигурации (порты слушателей, пути хранилища, уровень логирования)
Чувствительные данные (пароли, токены, пути к серийным портам с полными путями) не включены или замаскированы
Endpoint задокументирован в docs/API.md с примером ответа
Написаны тесты в tests/test_rest_smoke.py, проверяющие наличие endpoint и формат ответа
Code notes
Config модель находится в src/ais_hub/config.py и загружается при старте приложения. Проверить структуру и поля, какие из них безопасны.
REST endpoints реализованы в src/ais_hub/publish/rest.py с использованием aiohttp. Там же расположены примеры структуры роутов и ответов.
Существующие endpoints возвращают JSON, используя встроенные методы сериализации. Проверить паттерны в health, stats endpoint для согласованности.
Тесты REST находятся в tests/test_rest_smoke.py и используют asyncio + aiohttp TestClient. Там есть примеры как поднять приложение и сделать запросы.
Questions
Какие поля конфигурации считаются безопасными для раскрытия? (например: имена портов слушателей, пути БД, уровень логирования, размеры очередей)
Нужно ли включать информацию о включённых/отключённых модулях (ingest, storage, publish)?
Требуется ли версионирование этого endpoint (например /api/v1/config-info или /api/v2/config-info)?
Linked Taiga story: #73
Suggested branch:
`feature/taiga-73-dobavit-endpoint-api-v1-config-info-dlya-prosmotra-bezopasno`
Project type: `work`
AI tags: work, ais, backend, rest-api, configuration, monitoring
## Description
Реализовать новый REST endpoint, который возвращает текущую конфигурацию сервиса в безопасном виде (без чувствительных данных). Endpoint должен быть расположен в src/ais_hub/publish/rest.py и возвращать JSON с параметрами, необходимыми для мониторинга и отладки (слушатели, хранилище, логирование, но без паролей и секретных ключей).
Taiga: https://tasks.grigowashere.ru/project//us/73
## Acceptance criteria
- Endpoint GET /api/v1/config-info доступен и возвращает HTTP 200
- Ответ содержит безопасную информацию о текущей конфигурации (порты слушателей, пути хранилища, уровень логирования)
- Чувствительные данные (пароли, токены, пути к серийным портам с полными путями) не включены или замаскированы
- Endpoint задокументирован в docs/API.md с примером ответа
- Написаны тесты в tests/test_rest_smoke.py, проверяющие наличие endpoint и формат ответа
## Code notes
- Config модель находится в src/ais_hub/config.py и загружается при старте приложения. Проверить структуру и поля, какие из них безопасны.
- REST endpoints реализованы в src/ais_hub/publish/rest.py с использованием aiohttp. Там же расположены примеры структуры роутов и ответов.
- Существующие endpoints возвращают JSON, используя встроенные методы сериализации. Проверить паттерны в health, stats endpoint для согласованности.
- Тесты REST находятся в tests/test_rest_smoke.py и используют asyncio + aiohttp TestClient. Там есть примеры как поднять приложение и сделать запросы.
## Questions
- Какие поля конфигурации считаются безопасными для раскрытия? (например: имена портов слушателей, пути БД, уровень логирования, размеры очередей)
- Нужно ли включать информацию о включённых/отключённых модулях (ingest, storage, publish)?
- Требуется ли версионирование этого endpoint (например /api/v1/config-info или /api/v2/config-info)?
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Linked Taiga story: #73
Suggested branch:
feature/taiga-73-dobavit-endpoint-api-v1-config-info-dlya-prosmotra-bezopasnoProject type:
workAI tags: work, ais, backend, rest-api, configuration, monitoring
Description
Реализовать новый REST endpoint, который возвращает текущую конфигурацию сервиса в безопасном виде (без чувствительных данных). Endpoint должен быть расположен в src/ais_hub/publish/rest.py и возвращать JSON с параметрами, необходимыми для мониторинга и отладки (слушатели, хранилище, логирование, но без паролей и секретных ключей).
Taiga: https://tasks.grigowashere.ru/project//us/73
Acceptance criteria
Code notes
Questions