20 lines
1.3 KiB
Markdown
20 lines
1.3 KiB
Markdown
## Code review
|
||
|
||
Объект: uncommitted changes (AI tests and Striker fix)
|
||
Найдено: 3 (после фильтра).
|
||
|
||
1. **bug** — Striker AI logic is inverted (Regression).
|
||
`internal/game/world.go:134-136`
|
||
Доказательство: `if isOwnZone { return puckPos }`
|
||
Почему: Нападающий начинает преследовать шайбу только в своей половине поля, а в чужой остается статичным. Это противоположно логике футбола.
|
||
|
||
2. **test** — Tests verify incorrect behavior.
|
||
`internal/game/world_test.go:88-112`
|
||
Доказательство: `TestWorld_StrikerAI` проверяет преследование шайбы в своей зоне.
|
||
Почему: Тест является «зеркалом» бага: он проходит, потому что подтверждает неправильное поведение.
|
||
|
||
3. **convention** — Use of magic numbers for field dimensions.
|
||
`internal/game/world.go:133, 138, 141`
|
||
Доказательство: `puckPos.X < 640`
|
||
Почему: Значения 640 и 360 (центр поля) повторяются многократно. Следует вынести их в именованные константы (например, `WorldCenterX`).
|