Skip to content

Feedback Service Contract#23

Merged
Ruchuee merged 2 commits into
mainfrom
feature/contract
Jul 9, 2025
Merged

Feedback Service Contract#23
Ruchuee merged 2 commits into
mainfrom
feature/contract

Conversation

@Ruchuee

@Ruchuee Ruchuee commented Jul 7, 2025

Copy link
Copy Markdown
Contributor

Описание изменений

Добавлен контракт к сервису

Мотивация и контекст

Для согласования API

Тип изменений

  • Фича
  • Багфикc
  • Документация
  • Рефакторинг

Чек‑лист автора

  • Ветка feature/<key>
  • CI зелёный
  • Тесты добавлены / обновлены
  • README / docs актуальны

@Ruchuee Ruchuee self-assigned this Jul 7, 2025
@Ruchuee Ruchuee requested review from Egorniiillll and kituNew July 7, 2025 11:39

@AxoRm AxoRm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Необходимо добавить вершонинг через переменную servers
  2. Организовать единые ответы ошибок через components/responses
  3. Поставить стандартные HTTP коды при успешном выполнении:
    • Для создания ресурсов (POST) выдавать 201 Created и заголовок Location с URI нового объекта.
    • Для успешных изменений без тела (PUT/PATCH/DELETE) отдавать 204 No Content
  1. Использовать имена во множественном числе и существительные (/feedback/matches, /feedback/tournaments) вместо глаголов (add, user) в путях

  2. Определить схему безопасности в components/securitySchemes (bearerAuth) и подключить security: - bearerAuth: [] ко всем защищённым эндпоинтам.

  3. Реализовать полный CRUD для отзывов:

    • GET /feedback/matches/{id} и GET /feedback/tournaments/{id}
    • PUT /feedback/matches/{id} / PUT /feedback/tournaments/{id}
    • DELETE /feedback/matches/{id} / DELETE /feedback/tournaments/{id}
  4. Добавить пагинацию и фильтрацию к списковым GET (например, limit, offset или cursor afterId) и вернуть метаданные (total, next, prev).

  5. Перейти на единый стиль полей в теле запросов/ответов (camelCase вместо snake_case).

  6. Указать tags: [Feedback] (или разделить на под-теги MatchFeedback, TournamentFeedback) для структурирования документации.

  7. Добавить реальные примеры (example/examples) для основных запросов и ответов.

@Ruchuee Ruchuee merged commit 5ce8938 into main Jul 9, 2025
2 checks passed
@Ruchuee Ruchuee deleted the feature/contract branch July 9, 2025 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants