[Taiga #48] Добавить endpoint /api/v1/build-info для возврата версии и git commit #3

Open
opened 2026-05-18 21:46:46 +00:00 by Grigo · 0 comments
Owner

Linked Taiga story: #48

Suggested branch:
feature/taiga-48-dobavit-endpoint-api-v1-build-info-dlya-vozvrata-versii-i-gi

Project type: work
AI tags: work, ais, backend, rest-api, devops

Description

Реализовать новый REST endpoint, который возвращает информацию о версии приложения и текущем git commit. Этот endpoint будет использован для отслеживания версии развёрнутого сервиса в production.

Существует модуль ./src/ais_hub/version.py для управления версией. Endpoint должен быть добавлен в ./src/ais_hub/publish/rest.py вместе с другими API endpoints.

Taiga: https://tasks.grigowashere.ru/project//us/48

Acceptance criteria

  • Endpoint GET /api/v1/build-info доступен и возвращает HTTP 200
  • Ответ содержит поле 'version' с текущей версией из pyproject.toml (0.1.0)
  • Ответ содержит поле 'git_commit' с текущим commit hash
  • Endpoint задокументирован в docs/API.md
  • Endpoint покрыт smoke-тестом в tests/test_rest_smoke.py

Code notes

  • Модуль ./src/ais_hub/version.py уже существует и, вероятно, содержит текущую версию; проверить его содержимое и расширить при необходимости
  • REST endpoints находятся в ./src/ais_hub/publish/rest.py; посмотреть существующие handlers (например, /api/v1/health) как шаблон
  • Smoke-тесты на REST endpoints находятся в ./tests/test_rest_smoke.py; там уже есть примеры тестирования других endpoints
  • API документация в ./docs/API.md должна быть обновлена согласно существующему формату таблицы

Questions

  • Должен ли endpoint возвращать git commit в формате полного SHA1 (40 символов) или короткого хеша (7-8 символов)?
  • Нужна ли информация о git branch или tag в ответе, или только commit hash?
Linked Taiga story: #48 Suggested branch: `feature/taiga-48-dobavit-endpoint-api-v1-build-info-dlya-vozvrata-versii-i-gi` Project type: `work` AI tags: work, ais, backend, rest-api, devops ## Description Реализовать новый REST endpoint, который возвращает информацию о версии приложения и текущем git commit. Этот endpoint будет использован для отслеживания версии развёрнутого сервиса в production. Существует модуль ./src/ais_hub/version.py для управления версией. Endpoint должен быть добавлен в ./src/ais_hub/publish/rest.py вместе с другими API endpoints. Taiga: https://tasks.grigowashere.ru/project//us/48 ## Acceptance criteria - Endpoint GET /api/v1/build-info доступен и возвращает HTTP 200 - Ответ содержит поле 'version' с текущей версией из pyproject.toml (0.1.0) - Ответ содержит поле 'git_commit' с текущим commit hash - Endpoint задокументирован в docs/API.md - Endpoint покрыт smoke-тестом в tests/test_rest_smoke.py ## Code notes - Модуль ./src/ais_hub/version.py уже существует и, вероятно, содержит текущую версию; проверить его содержимое и расширить при необходимости - REST endpoints находятся в ./src/ais_hub/publish/rest.py; посмотреть существующие handlers (например, /api/v1/health) как шаблон - Smoke-тесты на REST endpoints находятся в ./tests/test_rest_smoke.py; там уже есть примеры тестирования других endpoints - API документация в ./docs/API.md должна быть обновлена согласно существующему формату таблицы ## Questions - Должен ли endpoint возвращать git commit в формате полного SHA1 (40 символов) или короткого хеша (7-8 символов)? - Нужна ли информация о git branch или tag в ответе, или только commit hash?
Sign in to join this conversation.