verify(bf-413): confirm all mechanics iteration work completed

Verified all 5 backlog items:
- Combat kill scoring (engine/turn.go:272-275)
- Fitness formula blending win rate + kill rate (run.go:608)
- CombatDeaths tracking through arena (arena.go:204-221)
- Behavior vector derived from actual kill rate (run.go:614-625)
- Flee thresholds with outnumber logic (farmer/gatherer/siege bots)

All mechanics now make combat economically necessary for the evolver.
This commit is contained in:
jedarden 2026-06-17 03:58:27 -04:00
parent bf80d84a6f
commit f0d4e661d7

View file

@ -0,0 +1,46 @@
# Bead bf-413 Verification
## Date: 2025-06-17
Verified that all backlog items from the Genesis AI Code Battle Mechanics Iteration bead are complete:
### Code Verification Results
**Combat Kill Scoring** (engine/turn.go:272-275)
```go
if e.Owner < len(gs.Players) {
gs.Players[e.Owner].Score += gs.Config.KillScore
}
```
**Fitness Formula** (cmd/acb-evolver/run.go:608)
```go
fitness := 0.7*winRate + 0.3*killRate
```
**CombatDeaths Tracking** (cmd/acb-evolver/internal/arena/arena.go:204-221)
- TotalKills and KillRate computed from arena outcomes
- CombatDeaths array tracks kills per player
**Behavior Vector from Kill Rate** (cmd/acb-evolver/run.go:614-625)
```go
aggression := killRate
if aggression > 1.0 {
aggression = 1.0
}
behaviorVec = []float64{aggression, program.BehaviorVector[1]}
```
**Flee Thresholds with Outnumber Logic**
- bots/farmer/strategy.go:262-296
- bots/gatherer/strategy.go:112-142
- bots/siege/strategy.go:282-312
All mechanics now make combat economically necessary:
- Bots only flee when locally outnumbered AND enemies are in attack range
- Kill rate contributes 30% to evolver fitness
- Aggression is derived from actual combat performance, not LLM self-report
## Status
All 5 backlog items completed and verified. The evolutionary loop now has proper incentives for combat aggression.