|
1 | | -# Opening Book v0 — mined opening meta |
| 1 | +# Opening Book v0 (EE-10) — mined opening meta |
2 | 2 |
|
3 | | -> **CAVEAT — shallow book, by design; regenerate post-migration.** Current constants make |
4 | | -> doom sub-month-lethal (~4-10 day-ticks to 100), so runs die inside month 0 and the |
5 | | -> 'opening prefix' is effectively the FIRST PLAN-MONTH's action mix today, not a 6-month |
6 | | -> line. The miner is the durable deliverable: post-migration, raise `OPENING_MONTHS` and |
7 | | -> re-run for a true multi-month opening book. One command — see footer. |
| 3 | +> **Base:** dials-1-4 calibration (`L1_CALIBRATION_2026-07-14.md`) — runs last months, so the |
| 4 | +> 6-month random prefix is a real opening line, not a single doomed month. **CAVEAT:** constants |
| 5 | +> still predate the nine-stream doom migration (DQ-21) and the dial-5 Attention pass; the MINER |
| 6 | +> is the durable deliverable — re-mine post-migration (one command, footer). |
8 | 7 |
|
9 | | -Auto-generated by `godot/tests/manual/test_opening_book_miner.gd`. 160 random openings x 4 engine seeds = 640 runs; opening = up to 6 random legal actions/month for the first 6 month(s), then fixed continuation `fundraise_first`. Ranked by mean day-ticks survived. |
| 8 | +Auto-generated by `godot/tests/manual/test_opening_book_miner.gd`. 96 random openings x 3 engine seeds = 288 runs; opening = 6 random legal action picks/month for the first 6 months (AP-trimmed to ~3), then fixed continuation `fundraise_first`; censor cap 30 months. Ranked by mean months survived. |
10 | 9 |
|
11 | 10 | ## What do good openings share? |
12 | 11 |
|
13 | | -Per-opening average count of each action in the TOP decile vs BOTTOM decile (by mean survival), most over-represented in winners first: |
| 12 | +Mean per-opening count of each action in the TOP decile vs BOTTOM decile (by mean months), most over-represented in winners first: |
14 | 13 |
|
15 | | -| Action | avg in top decile | avg in bottom decile | Δ (top − bottom) | |
| 14 | +| Action | avg in top decile | avg in bottom decile | delta (top - bottom) | |
16 | 15 | |---|---|---|---| |
17 | | -| hire_safety_researcher | 1.31 | 0.25 | +1.06 | |
18 | | -| fundraise_big | 0.44 | 0.13 | +0.31 | |
19 | | -| fundraise_small | 0.38 | 0.19 | +0.19 | |
20 | | -| funding_strings | 0.50 | 0.38 | +0.13 | |
21 | | -| audit_safety | 0.25 | 0.13 | +0.13 | |
22 | | -| publish_paper | 0.38 | 0.31 | +0.06 | |
23 | | -| buy_compute | 0.44 | 0.38 | +0.06 | |
24 | | -| apply_grant | 0.38 | 0.31 | +0.06 | |
25 | | -| hire_capability_researcher | 0.38 | 0.44 | -0.06 | |
26 | | -| order_supplies | 0.31 | 0.38 | -0.06 | |
27 | | -| take_loan | 0.19 | 0.25 | -0.06 | |
28 | | -| safety_research | 0.13 | 0.19 | -0.06 | |
29 | | -| team_building | 0.13 | 0.25 | -0.13 | |
30 | | -| network | 0.06 | 0.31 | -0.25 | |
31 | | -| media_campaign | 0.06 | 0.38 | -0.31 | |
32 | | -| capability_research | 0.38 | 0.81 | -0.44 | |
33 | | -| desperation_lever | 0.31 | 0.94 | -0.63 | |
| 16 | +| fundraise_small | 3.44 | 1.89 | +1.56 | |
| 17 | +| apply_grant | 3.11 | 2.00 | +1.11 | |
| 18 | +| capability_research | 3.11 | 2.11 | +1.00 | |
| 19 | +| order_supplies | 2.67 | 1.67 | +1.00 | |
| 20 | +| funding_strings | 2.11 | 1.33 | +0.78 | |
| 21 | +| audit_safety | 2.56 | 1.89 | +0.67 | |
| 22 | +| media_campaign | 2.67 | 2.00 | +0.67 | |
| 23 | +| publish_paper | 2.67 | 2.22 | +0.44 | |
| 24 | +| fundraise_big | 1.67 | 1.33 | +0.33 | |
| 25 | +| team_building | 2.00 | 1.67 | +0.33 | |
| 26 | +| hire_safety_researcher | 1.78 | 2.22 | -0.44 | |
| 27 | +| desperation_lever | 2.00 | 2.56 | -0.56 | |
| 28 | +| buy_compute | 1.00 | 1.89 | -0.89 | |
| 29 | +| network | 1.44 | 2.44 | -1.00 | |
| 30 | +| take_loan | 1.33 | 2.78 | -1.44 | |
| 31 | +| safety_research | 1.67 | 3.11 | -1.44 | |
| 32 | +| hire_capability_researcher | 0.78 | 2.89 | -2.11 | |
34 | 33 |
|
35 | 34 | ## Top-decile openings |
36 | 35 |
|
37 | | -| opening | mean turns | mean final doom | mean cash | dominant actions | |
| 36 | +| opening | mean months | mean final doom | mean cash@m6 | dominant actions | |
38 | 37 | |---|---|---|---|---| |
39 | | -| #66 | 11.0 | 97.9 | $132k | hire_safety_researcher×1, network×1, desperation_lever×1 | |
40 | | -| #113 | 10.8 | 100.0 | $177k | apply_grant×1, hire_safety_researcher×1, funding_strings×1 | |
41 | | -| #47 | 10.8 | 100.0 | $177k | hire_safety_researcher×2, fundraise_big×2, funding_strings×1 | |
42 | | -| #149 | 10.8 | 100.0 | $175k | hire_safety_researcher×3, funding_strings×1, order_supplies×1 | |
43 | | -| #146 | 10.8 | 100.0 | $173k | capability_research×1, hire_safety_researcher×1, fundraise_big×1 | |
44 | | -| #104 | 10.8 | 100.0 | $173k | fundraise_small×1, apply_grant×1, hire_safety_researcher×1 | |
45 | | -| #129 | 10.8 | 100.0 | $171k | fundraise_small×3, order_supplies×1, hire_safety_researcher×1 | |
46 | | -| #85 | 10.8 | 100.0 | $177k | funding_strings×1, capability_research×1, hire_safety_researcher×1 | |
47 | | -| #51 | 10.3 | 100.0 | $97k | audit_safety×2, hire_safety_researcher×2, buy_compute×1 | |
48 | | -| #4 | 10.3 | 100.0 | $97k | audit_safety×1, hire_safety_researcher×1, fundraise_big×1 | |
49 | | -| #21 | 10.3 | 100.0 | $137k | hire_safety_researcher×1, apply_grant×1, publish_paper×1 | |
50 | | -| #45 | 10.3 | 100.0 | $137k | funding_strings×2, hire_safety_researcher×1, apply_grant×1 | |
51 | | -| #39 | 10.3 | 100.0 | $137k | publish_paper×3, hire_safety_researcher×1, audit_safety×1 | |
52 | | -| #114 | 10.0 | 100.0 | $49k | hire_safety_researcher×2, hire_capability_researcher×2, desperation_lever×1 | |
53 | | -| #9 | 10.0 | 100.0 | $38k | buy_compute×2, hire_safety_researcher×2, order_supplies×1 | |
54 | | -| #62 | 8.3 | 100.0 | $359k | fundraise_big×2, fundraise_small×1, apply_grant×1 | |
| 38 | +| #70 | 28.3 | 72.9 | $10k | capability_researchx6, apply_grantx4, team_buildingx4 | |
| 39 | +| #48 | 23.7 | 100.0 | $382k | fundraise_smallx5, funding_stringsx4, audit_safetyx3 | |
| 40 | +| #23 | 22.7 | 100.0 | $55k | funding_stringsx5, fundraise_smallx4, audit_safetyx4 | |
| 41 | +| #88 | 21.7 | 100.0 | $376k | apply_grantx7, fundraise_smallx4, publish_paperx4 | |
| 42 | +| #81 | 20.3 | 100.0 | $65k | capability_researchx5, funding_stringsx4, order_suppliesx4 | |
| 43 | +| #41 | 20.0 | 100.0 | $9k | media_campaignx6, publish_paperx4, audit_safetyx3 | |
| 44 | +| #31 | 19.7 | 100.0 | $88k | order_suppliesx5, fundraise_smallx4, networkx3 | |
| 45 | +| #27 | 19.3 | 100.0 | $153k | fundraise_smallx5, publish_paperx4, team_buildingx4 | |
| 46 | +| #49 | 19.3 | 100.0 | $49k | apply_grantx5, audit_safetyx5, fundraise_smallx4 | |
55 | 47 |
|
56 | 48 | ## Bottom-decile openings |
57 | 49 |
|
58 | | -| opening | mean turns | mean final doom | mean cash | dominant actions | |
| 50 | +| opening | mean months | mean final doom | mean cash@m6 | dominant actions | |
59 | 51 | |---|---|---|---|---| |
60 | | -| #80 | 4.3 | 100.0 | $121k | funding_strings×2, fundraise_small×1, buy_compute×1 | |
61 | | -| #153 | 4.0 | 82.6 | $220k | desperation_lever×1, team_building×1, funding_strings×1 | |
62 | | -| #67 | 4.0 | 82.6 | $188k | order_supplies×2, desperation_lever×1, capability_research×1 | |
63 | | -| #93 | 4.0 | 82.6 | $190k | network×2, desperation_lever×1, publish_paper×1 | |
64 | | -| #95 | 4.0 | 82.6 | $190k | capability_research×2, desperation_lever×1, take_loan×1 | |
65 | | -| #6 | 4.0 | 82.6 | $160k | desperation_lever×1, media_campaign×1, fundraise_big×1 | |
66 | | -| #143 | 4.0 | 82.6 | $270k | funding_strings×2, desperation_lever×2, network×1 | |
67 | | -| #70 | 4.0 | 82.6 | $190k | capability_research×3, desperation_lever×1, media_campaign×1 | |
68 | | -| #71 | 4.0 | 82.6 | $180k | team_building×2, desperation_lever×1, apply_grant×1 | |
69 | | -| #105 | 4.0 | 82.6 | $160k | publish_paper×2, desperation_lever×1, media_campaign×1 | |
70 | | -| #137 | 4.0 | 82.6 | $190k | apply_grant×2, capability_research×2, desperation_lever×1 | |
71 | | -| #107 | 4.0 | 82.6 | $188k | capability_research×2, order_supplies×2, desperation_lever×1 | |
72 | | -| #34 | 4.0 | 82.6 | $140k | buy_compute×2, publish_paper×1, desperation_lever×1 | |
73 | | -| #126 | 4.0 | 100.0 | $149k | hire_capability_researcher×3, take_loan×1, audit_safety×1 | |
74 | | -| #61 | 4.0 | 82.6 | $190k | safety_research×2, desperation_lever×1, capability_research×1 | |
75 | | -| #16 | 4.0 | 82.6 | $160k | order_supplies×2, media_campaign×1, fundraise_big×1 | |
| 52 | +| #34 | 7.7 | 100.0 | $41k | buy_computex4, safety_researchx4, publish_paperx3 | |
| 53 | +| #68 | 7.7 | 100.0 | $228k | safety_researchx6, take_loanx5, buy_computex4 | |
| 54 | +| #44 | 7.0 | 100.0 | $157k | hire_safety_researcherx6, hire_capability_researcherx4, safety_researchx3 | |
| 55 | +| #63 | 7.0 | 100.0 | $-4k | audit_safetyx4, networkx4, desperation_leverx4 | |
| 56 | +| #22 | 6.3 | 100.0 | $180k | team_buildingx5, networkx4, hire_safety_researcherx4 | |
| 57 | +| #32 | 6.3 | 100.0 | $20k | safety_researchx6, audit_safetyx5, take_loanx4 | |
| 58 | +| #37 | 6.0 | 100.0 | $24k | capability_researchx5, networkx4, hire_capability_researcherx4 | |
| 59 | +| #42 | 5.7 | 100.0 | $64k | safety_researchx4, fundraise_smallx4, team_buildingx3 | |
| 60 | +| #13 | 5.3 | 83.2 | $18k | hire_capability_researcherx5, publish_paperx4, hire_safety_researcherx4 | |
76 | 61 |
|
77 | | -## Reading (pre-migration) |
| 62 | +## Reading |
78 | 63 |
|
79 | | -- **Winning openings over-index on:** `hire_safety_researcher`, `fundraise_big`, `fundraise_small`. **Losing openings over-index on:** `desperation_lever`, `capability_research`, `media_campaign`. |
80 | | -- **Cross-validated with the desperation-lever solver:** `desperation_lever` is the single strongest LOSER signal here, and the solver independently shows pulling it early converts a ~turn-7 doom death into a ~turn-4 ledger death. Two instruments, same verdict: early desperation levers are a trap under current constants. Openings that instead spend the opening on doom-down / safety-capacity work (hire_safety_researcher, audit_safety, publish_paper) survive longest; capability/compute openings die soonest. |
81 | | -- **Beam/hill-climb refinement:** deferred as next step — pre-migration the fitness surface is a cliff (everything dies month 0), so a climb has nothing to climb. Documented for the post-migration re-run, where a beam over the surviving top-decile prefixes becomes worthwhile. |
| 64 | +- **Winning openings over-index on:** `fundraise_small`, `apply_grant`, `capability_research`. **Losing openings over-index on:** `hire_capability_researcher`, `safety_research`, `take_loan`. |
| 65 | +- **Cross-check the desperation solver** (`DESPERATION_SOLVER.md`): if `desperation_lever` ranks as a loser signal here AND the solver shows negative deltas, two independent instruments agree the early lever is a trap; if they diverge, the opening context (what else the prefix bought) is doing the work — a real DQ-25 input either way. |
| 66 | +- **Beam/hill-climb refinement (next step):** the fitness surface now has a gradient (mean months vary across openings), so a beam over the top-decile prefixes — mutate one month's picks, keep improvements — is worthwhile. Deferred from v0 to keep this run cheap; the adapter's plan_override seam is the entry point. |
82 | 67 |
|
83 | | -_Regenerate: `"$GODOT" --headless -s res://addons/gut/gut_cmdln.gd -gdir=res://tests/manual -gselect=test_opening_book_miner.gd -gexit` (from `godot/`). Raw rows: `docs/balance/opening_book_v0.csv`._ |
| 68 | +_Mined 288 runs in 480s. Regenerate: `"$GODOT" --headless -s res://addons/gut/gut_cmdln.gd -gdir=res://tests/manual -gselect=test_opening_book_miner.gd -gexit` (from `godot/`). Raw rows: `docs/balance/opening_book_v0.csv`._ |
0 commit comments