feat: initial commit with M1-M4 implementation
This commit is contained in:
19
docs/reviews/2026-05-09-ai-tests.md
Normal file
19
docs/reviews/2026-05-09-ai-tests.md
Normal file
@@ -0,0 +1,19 @@
|
||||
## 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`).
|
||||
Reference in New Issue
Block a user