From 069804be7aa56fbed9db29bad5d2963d753443f7 Mon Sep 17 00:00:00 2001 From: autocommit Date: Wed, 15 Apr 2026 18:39:12 -0700 Subject: [PATCH] =?UTF-8?q?docs(iteration):=20=F0=9F=93=9D=20Update=20iter?= =?UTF-8?q?ation=205=20progress,=20results,=20and=20debugging=20notes=20in?= =?UTF-8?q?=20iteration=20log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- .project/iteration_log.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.project/iteration_log.md b/.project/iteration_log.md index 0a5370a2..218b2a70 100644 --- a/.project/iteration_log.md +++ b/.project/iteration_log.md @@ -4,3 +4,6 @@ 2026-04-15 04:57 iter 3 (verification batch): VICTORY rung crossed, 1/3 seeds ended in domination at t132 (seed 1 p0 captured p1 capital), seeds 2&3 max_turns. 0 invariants. STOP criterion not met (33%<50%). Next unmet rung: TILE IMPROVEMENTS (no farm/mine evt). 2026-04-15 07:45 iter 4 status: CODE DEPLOYED but 0 improvements built (1 worker created at t133, no start/completed events). Debugging. Queued iter 5: HUNTING_GROUNDS improvement type (fauna-tier, forest/tundra tile with adjacent fauna). 2026-04-15 07:30 iter 4 COMPLETE: TILE IMPROVEMENTS, 0→2 improvement events (seed 1 smoke), files=1 (auto_play.gd, +15/-5). Root cause: _command_unit defined but never called; _play_turn had inline loops that skipped workers. Fix: added explicit worker-command loop + workers excluded from ATTACK/garrison branches. Bonus: seed 1 hit victory at t=379 (2nd-consecutive victory signal after iter 3's seed 1 t=132). +2026-04-15 17:47 iter 5 (fresh binary): GROWTH confirmed (median p0_pop_peak 5), 0 invariants. VICTORY at 0/3 within 150-turn cap — structural since smoke-seed-1 took 379 turns. Regression caught: mac→apricot rsync had clobbered apricot's .so with Apr-12 stale binary; rebuilt on apricot at 17:36, added gitignore rule + CLAUDE.md warning. Team dispatched to speed up victories. +2026-04-16 01:13 iter 5 COMPLETE: VICTORY gap (attack conversion). Shipped 14-factor state-based scoring in _next_building() + loosened ATTACK trigger (advantage≥1.1 OR enemy_city_within_6 OR mil-vs-zero) + 10-turn phase hysteresis. Seed 1 smoke: 172 combats (up from 19 baseline), 2.4:1 KDR (48:20 kills), strategy emerges (≥6 distinct items chosen). Still no capture: seed 1 is structurally mountain-locked (1 production-crippled city vs enemy's 3 cities). Running 3-seed batch at 400-turn cap next to see seeds 2/3 fare. Files=1 (auto_play.gd, +153/-90 net). DEBT: attack decision still uses prescriptive thresholds; iter 6 should promote to scoring (objective-based commitment) per approved plan. +2026-04-16 01:34 iter 6 COMPLETE: CITY SITING. Wired _score_site() into settler decisions via new _decide_settler(). 3-seed smoke (250-300t): p0 pop_peak 6/9/8 (iter 5: 2), first_pop_4 at 77/25/43, 0 invariants. Seed 1 no longer mountain-locked (founds at (25,-1) not (24,-3)). Found + fixed real root cause: _try_found_city() was the greedy founder, not _command_unit() settler branch (different call site). Also fixed 4 bugs in _score_site() (deep_ocean typo, wrong food-zero biomes incl. missing boreal_forest/volcano/snow, dead river branch, impassable not rejected). Files=1 (auto_play.gd, +80/-22). Terrain-auditor agent provided exact biome constants.