diff --git a/.project/objectives/p1-22a-huge-map-ai-quality.md b/.project/objectives/p1-22a-huge-map-ai-quality.md index 1e79b0a5..6b413eb4 100644 --- a/.project/objectives/p1-22a-huge-map-ai-quality.md +++ b/.project/objectives/p1-22a-huge-map-ai-quality.md @@ -132,6 +132,25 @@ improvement on top of that. `mc-ai/src/tactical/movement.rs:631-637` cascading into all-clan defensive turtling? Evidence at `.local/iter/20260516_191254/huge-map-5clan/`. + + **2026-05-16 cycle 2**: tested hypothesis (iii) — scoped `sole_city_threatened` + to the actual trailing AI via new `compute_is_trailing(state, me)` in + `mc-ai/src/tactical/movement.rs` (commit `15d89171b`). Definition: + "at least one rival multi-city AND no rival has strictly less total pop + than me". `cargo test -p mc-ai --lib` 261/261 green. Re-ran huge-map batch + `20260516_195309`: **still 0/10 victories, all 5 players still + tier_peak=1**, including the territorial leader P0 with 3+ cities. The + retreat-suppression scope was *not* the root cause — the leader never + sees `sole_city_threatened`, yet still fails to research past tier 1. The + failure is deeper than the trailing-AI turtling hypothesis. Next iterator + should bisect: (i) revert p1-29d entirely and re-run baseline huge-map to + confirm pre-p1-29d 4/10 still holds; (ii) check whether `services:up` + failure (mcts-server binary not built in release mode on apricot) is + dropping all 5 AIs to the CPU fallback path and that's what's stalling + research; (iii) inspect the `SituationalContext::tech_below_median` uplift + in `policy.rs` — when 4 of 5 players are below median, it may be + over-firing and skewing every clan toward defensive Defend/Settle + priorities at the expense of Research. - [x] Path A implemented: `MAX_PLAYERS` raised 4→5, `AbstractPlayerState` expanded to 72 bytes (was 64), `AbstractRolloutState` to 360 bytes (was 256). `force_rel[u16;5]`, `relations[i8;5]`, new padding fields `_pad_fr`/`_pad_rel`.