You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: configs/ladder/README.md
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -58,3 +58,18 @@ Both keys are **required** — there are no defaults; a config that omits either
58
58
59
59
- `min_round_wins`must be an integer with `1 <= min_round_wins <= tournament.rounds`.
60
60
- `win_last_k`must be an integer with `0 <= win_last_k <= min_round_wins`. `0` **disables** the trailing-rounds requirement; `1` means "just win the final round".
61
+
62
+
### Fast-forward (optional)
63
+
64
+
Since the north-star metric is *the highest rung a bot can reach*, you can skip the (usually redundant) grind of playing edit rounds against opponents your carried-over bot already crushes:
65
+
66
+
```yaml
67
+
ladder_rules:
68
+
min_round_wins: 2
69
+
win_last_k: 0
70
+
fast_forward:
71
+
enabled: true
72
+
min_sim_win_rate: 0.9 # skip a rung if the bot wins >= 90% of that rung's round-0 sims
73
+
```
74
+
75
+
At each rung, a **round-0-only probe** runs the carried-over bot against the opponent. If the climber wins at least `min_sim_win_rate` of the simulations (ties count as non-wins), the rung is **cleared without playing edit rounds** and recorded with `ladder_advancement.fast_forwarded: true`. Any rung *not* cleanly won still plays in full under the normal `ladder_rules`, so this is safe under non-transitive matchups and never skips a rung it would actually lose. Rung 1 is identical-code (~coin flip at round 0), so it never fast-forwards — the climber always has to earn the first rung. Omit the block (or `enabled: false`) for today's full-play behavior. Validation: `enabled` is a bool (required if the block is present); `min_sim_win_rate` is a number in `(0.5, 1.0]` (required when enabled).
0 commit comments