Убрал бейдж «идёт» из блока незавершённых партий (InProgressMatches) — и на главной, и на странице группы. Метка дублировала заголовок блока «Незавершённые партии» и кнопку «Завершить» в каждой карточке, а в группе, где название группы не показывается с #2, висела в строке одна. На главной у карточки осталось название группы.
Заодно снял мёртвое ветвление в MatchListView: «смешанный» режим со статусом партии. Незавершённые партии в этот список не попадают ни из одной точки вызова — GroupPage передаёт только finishedMatches, а история профиля приходит из stats_service.user_match_list, где жёсткий фильтр Match.status == "finished" (и best_only через SCORED_CTE, где тоже только завершённые). Карточка теперь всегда показывает «длительность · причина победы»; у компонента появился док-комментарий про это.
Бейдж «идёт» на странице самой партии (MatchDetailPage) оставлен — там он единственный указатель статуса; класс .badge-live в CSS сохранён ради него. Бэкенд и schema.d.ts не тронуты: API не менялся.
Коммиты
d0f01a4 Убрать метку «идёт» из блока незавершённых партий
Проверки
npm run build (tsc --noEmit + vite build) — успешно, 1640 модулей
pytest — 74 passed (бэкенд не затронут, прогон для страховки)
grep badge-live frontend/src — остался только в MatchDetailPage.tsx и global.css, как и задумано
## Что сделано
Убрал бейдж «идёт» из блока незавершённых партий (`InProgressMatches`) — и на главной, и на странице группы. Метка дублировала заголовок блока «Незавершённые партии» и кнопку «Завершить» в каждой карточке, а в группе, где название группы не показывается с #2, висела в строке одна. На главной у карточки осталось название группы.
Заодно снял мёртвое ветвление в `MatchListView`: «смешанный» режим со статусом партии. Незавершённые партии в этот список не попадают ни из одной точки вызова — `GroupPage` передаёт только `finishedMatches`, а история профиля приходит из `stats_service.user_match_list`, где жёсткий фильтр `Match.status == "finished"` (и `best_only` через `SCORED_CTE`, где тоже только завершённые). Карточка теперь всегда показывает «длительность · причина победы»; у компонента появился док-комментарий про это.
Бейдж «идёт» на странице самой партии (`MatchDetailPage`) оставлен — там он единственный указатель статуса; класс `.badge-live` в CSS сохранён ради него. Бэкенд и `schema.d.ts` не тронуты: API не менялся.
## Коммиты
- `d0f01a4` Убрать метку «идёт» из блока незавершённых партий
## Проверки
- `npm run build` (tsc --noEmit + vite build) — успешно, 1640 модулей
- `pytest` — 74 passed (бэкенд не затронут, прогон для страховки)
- `grep badge-live frontend/src` — остался только в `MatchDetailPage.tsx` и `global.css`, как и задумано
## Отклонения от плана
Нет.
Closes #26
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_0186Fk74jkkszahEHSjBzTjD
Блок озаглавлен «Незавершённые партии», а каждая карточка заканчивается
кнопкой «Завершить» — бейдж дублировал и то и другое; на странице группы,
где название группы не показывается, он вдобавок висел в строке один.
Заодно снято мёртвое ветвление в MatchListView: незавершённые партии туда
не попадают ни из группы (там отдельный блок), ни из истории профиля
(бэкенд фильтрует по status="finished"). На странице самой партии бейдж
остаётся — там он единственный указатель статуса.
#26
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0186Fk74jkkszahEHSjBzTjD
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.
Что сделано
Убрал бейдж «идёт» из блока незавершённых партий (
InProgressMatches) — и на главной, и на странице группы. Метка дублировала заголовок блока «Незавершённые партии» и кнопку «Завершить» в каждой карточке, а в группе, где название группы не показывается с #2, висела в строке одна. На главной у карточки осталось название группы.Заодно снял мёртвое ветвление в
MatchListView: «смешанный» режим со статусом партии. Незавершённые партии в этот список не попадают ни из одной точки вызова —GroupPageпередаёт толькоfinishedMatches, а история профиля приходит изstats_service.user_match_list, где жёсткий фильтрMatch.status == "finished"(иbest_onlyчерезSCORED_CTE, где тоже только завершённые). Карточка теперь всегда показывает «длительность · причина победы»; у компонента появился док-комментарий про это.Бейдж «идёт» на странице самой партии (
MatchDetailPage) оставлен — там он единственный указатель статуса; класс.badge-liveв CSS сохранён ради него. Бэкенд иschema.d.tsне тронуты: API не менялся.Коммиты
d0f01a4Убрать метку «идёт» из блока незавершённых партийПроверки
npm run build(tsc --noEmit + vite build) — успешно, 1640 модулейpytest— 74 passed (бэкенд не затронут, прогон для страховки)grep badge-live frontend/src— остался только вMatchDetailPage.tsxиglobal.css, как и задуманоОтклонения от плана
Нет.
Closes #26
🤖 Generated with Claude Code
https://claude.ai/code/session_0186Fk74jkkszahEHSjBzTjD