ai-code-battle/cmd/acb-worker
jedarden af46a1da97 feat(engine): add combat-density metric and fix computeCombatTurns
- Fix computeCombatTurns to count EventCombatDeath events instead of
  EventBotDied with reason="combat" (which was never emitted, causing
  CombatTurns to always be 0)
- Add CombatDeaths field to MapEngagementScore to track focus-fire kills
- Update engagement formula to weight combat deaths at 3.0 (same as
  win_prob_crossings) to bias map evolution toward combat-dense maps
- Add countCombatDeaths helper function to count EventCombatDeath events
- Update log output to include combat_deaths metric

This implements bf-4nxs: the combat-density metric is now measured and
weighted in map engagement, which gates map curation/selection. Maps
with zero combat will have low engagement scores and be filtered out.

Closes: bf-4nxs
2026-05-24 10:16:54 -04:00
..
api.go feat(combat): rank matches by enemy-kill combat turns 2026-05-03 18:32:08 -04:00
b2.go fix(worker): disable SDK checksum trailer for R2 uploads 2026-04-30 10:35:00 -04:00
crash_test.go test: integration tests for multi-match crash cooldown (3 strikes / 30 min) per §4.5 + §6.1 2026-04-22 15:14:03 -04:00
crypto.go fix: accept base64-encoded AES keys (OpenBao stores keys as base64, not hex) 2026-04-30 23:04:29 -04:00
db.go feat(worker): fix rating recovery default sigma value 2026-05-04 00:49:47 -04:00
Dockerfile fix(docker): add COPY metrics/ to all service Dockerfiles 2026-04-23 18:00:16 -04:00
glicko2.go feat(worker): fix rating recovery default sigma value 2026-05-04 00:49:47 -04:00
main.go feat(engine): add combat-density metric and fix computeCombatTurns 2026-05-24 10:16:54 -04:00
metrics.go Add Prometheus metrics endpoint to match worker 2026-03-26 00:50:10 -04:00
metrics_test.go Add Prometheus metrics endpoint to match worker 2026-03-26 00:50:10 -04:00