Охват — изменения вехиmain...dev (68 файлов; документы — только на расхождение с кодом), уровень — /code-review max, как выбрал владелец.
Базовая проверка на чистой ветке: pytest + npm run build, фиксирую число тестов.
/code-review max по диффу вехи тремя прогонами: бэкенд (scoring/stats/match/group-сервисы, роутеры, схемы, модели, миграция 0014), фронтенд (формы завершения и правки партии, предупреждения, история/топ/справка), тесты + инфраструктура (лаунчеры, fs-backup, compose, Caddyfile, export).
Отсев: каждая находка проверяется по коду, где возможно — падающим тестом; уже заведённые #68–#74 не дублирую.
Находки группирую в задачи в веху v1.5 («Обнаружено при работе над #82»). Задачи, требующие решения владельца (формулы/пороги рейтинга, продуктовое поведение, ломка API), только завожу.
Остальные исправляю в ветке issue-82-code-review, по коммиту на задачу (#N в теле); сначала корректность, потом упрощения. Инварианты CLAUDE.md не трогаю.
/simplify по диффу вехи вместе с правками, находки — по той же схеме.
Один PR в dev с Closes #82 и Closes по каждой исправленной задаче.
Критерии готовности
Оба скила прогнаны по заявленному охвату.
Каждая находка: исправлена (задача + коммит), заведена на решение владельца или отклонена с обоснованием в отчёте.
pytest зелёный (тестов не меньше базового, на каждую исправленную ошибку корректности — тест, краснеющий без правки); npm run build зелёный.
PR в dev открыт; мёрж и релиз dev→main — за владельцем.
Ветка:issue-82-code-review от dev
## План выполнения
Охват — **изменения вехи** `main...dev` (68 файлов; документы — только на расхождение с кодом), уровень — `/code-review max`, как выбрал владелец.
1. Базовая проверка на чистой ветке: `pytest` + `npm run build`, фиксирую число тестов.
2. `/code-review max` по диффу вехи тремя прогонами: бэкенд (scoring/stats/match/group-сервисы, роутеры, схемы, модели, миграция `0014`), фронтенд (формы завершения и правки партии, предупреждения, история/топ/справка), тесты + инфраструктура (лаунчеры, `fs-backup`, compose, Caddyfile, export).
3. Отсев: каждая находка проверяется по коду, где возможно — падающим тестом; уже заведённые #68–#74 не дублирую.
4. Находки группирую в задачи **в веху v1.5** («Обнаружено при работе над #82»). Задачи, требующие решения владельца (формулы/пороги рейтинга, продуктовое поведение, ломка API), только завожу.
5. Остальные исправляю в ветке `issue-82-code-review`, по коммиту на задачу (`#N` в теле); сначала корректность, потом упрощения. Инварианты `CLAUDE.md` не трогаю.
6. `/simplify` по диффу вехи вместе с правками, находки — по той же схеме.
7. Один PR в `dev` с `Closes #82` и `Closes` по каждой исправленной задаче.
**Критерии готовности**
- Оба скила прогнаны по заявленному охвату.
- Каждая находка: исправлена (задача + коммит), заведена на решение владельца или отклонена с обоснованием в отчёте.
- `pytest` зелёный (тестов не меньше базового, на каждую исправленную ошибку корректности — тест, краснеющий без правки); `npm run build` зелёный.
- PR в `dev` открыт; мёрж и релиз `dev→main` — за владельцем.
**Ветка:** `issue-82-code-review` от `dev`
Итог: ревью изменений вехи v1.5 по слоям: бэкенд, миграции, фронтенд, инфраструктура. Серьёзных ошибок корректности нет. Найдено и исправлено три проблемы, по каждой — задача в вехе:
#87 — справка обещала монотонность рейтинга, которой нет при ничьих. Исправлен текст, формулы не тронуты.
#88 — после перехода на общий рейтинг (#80) живое обновление не доходило до игроков вне группы партии.
Миграция 0014 отдельно проверена на прод-пути 0015 (main) → 0016: данные целы, CHECK заменён, бэкфилл сработал.
Проверки:pytest — 208 passed; npm run build — успешно; миграция и числа справки проверены вручную (подробности в PR).
Отклонение от плана:/code-review max трижды оборвался на лимите сессии. Ревью и проход /simplify проведены вручную, без веера агентов.
Ждёт вашего решения: вопрос в #87 — нормально ли, что слабый выбывший получает рейтинг, если выбыл вместе с сильными. Если нет, нужна отдельная задача на формулу.
Статус:Status/In Review Осталось за вами: ревью и мёрж PR — #82, #87, #88, #89 закроются автоматически. Затем релизный мёрж dev→main с версией на merge-коммите.
Работа выполнена, открыт PR: https://gitea.arseniev.info/NotBigGhost/ForbiddenStarsApp/pulls/90
**Итог:** ревью изменений вехи v1.5 по слоям: бэкенд, миграции, фронтенд, инфраструктура. Серьёзных ошибок корректности нет. Найдено и исправлено три проблемы, по каждой — задача в вехе:
- **#87** — справка обещала монотонность рейтинга, которой нет при ничьих. Исправлен текст, формулы не тронуты.
- **#88** — после перехода на общий рейтинг (#80) живое обновление не доходило до игроков вне группы партии.
- **#89** — дубли в формах итогов партии.
Миграция `0014` отдельно проверена на прод-пути `0015` (main) → `0016`: данные целы, CHECK заменён, бэкфилл сработал.
**Проверки:** `pytest` — 208 passed; `npm run build` — успешно; миграция и числа справки проверены вручную (подробности в PR).
**Отклонение от плана:** `/code-review max` трижды оборвался на лимите сессии. Ревью и проход `/simplify` проведены вручную, без веера агентов.
**Ждёт вашего решения:** вопрос в #87 — нормально ли, что слабый выбывший получает рейтинг, если выбыл вместе с сильными. Если нет, нужна отдельная задача на формулу.
**Статус:** `Status/In Review`
**Осталось за вами:** ревью и мёрж PR — #82, #87, #88, #89 закроются автоматически. Затем релизный мёрж `dev→main` с версией на merge-коммите.
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.
Проход по коду скилами /code-review и /simplify. Заводишь задачи в эту веху, после их выполняешь.
План выполнения
Охват — изменения вехи
main...dev(68 файлов; документы — только на расхождение с кодом), уровень —/code-review max, как выбрал владелец.pytest+npm run build, фиксирую число тестов./code-review maxпо диффу вехи тремя прогонами: бэкенд (scoring/stats/match/group-сервисы, роутеры, схемы, модели, миграция0014), фронтенд (формы завершения и правки партии, предупреждения, история/топ/справка), тесты + инфраструктура (лаунчеры,fs-backup, compose, Caddyfile, export).issue-82-code-review, по коммиту на задачу (#Nв теле); сначала корректность, потом упрощения. ИнвариантыCLAUDE.mdне трогаю./simplifyпо диффу вехи вместе с правками, находки — по той же схеме.devсCloses #82иClosesпо каждой исправленной задаче.Критерии готовности
pytestзелёный (тестов не меньше базового, на каждую исправленную ошибку корректности — тест, краснеющий без правки);npm run buildзелёный.devоткрыт; мёрж и релизdev→main— за владельцем.Ветка:
issue-82-code-reviewотdevРабота выполнена, открыт PR: #90
Итог: ревью изменений вехи v1.5 по слоям: бэкенд, миграции, фронтенд, инфраструктура. Серьёзных ошибок корректности нет. Найдено и исправлено три проблемы, по каждой — задача в вехе:
Миграция
0014отдельно проверена на прод-пути0015(main) →0016: данные целы, CHECK заменён, бэкфилл сработал.Проверки:
pytest— 208 passed;npm run build— успешно; миграция и числа справки проверены вручную (подробности в PR).Отклонение от плана:
/code-review maxтрижды оборвался на лимите сессии. Ревью и проход/simplifyпроведены вручную, без веера агентов.Ждёт вашего решения: вопрос в #87 — нормально ли, что слабый выбывший получает рейтинг, если выбыл вместе с сильными. Если нет, нужна отдельная задача на формулу.
Статус:
Status/In ReviewОсталось за вами: ревью и мёрж PR — #82, #87, #88, #89 закроются автоматически. Затем релизный мёрж
dev→mainс версией на merge-коммите.