File size: 24,711 Bytes
17f024b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
# OpenRA-Bench โ€” Scenario Backlog (toward 200 packs)

This file is the canonical brainstorm catalog for the path from
**29 packs today** (22 active + 17 designed in the plan + 2 harvest
rebuilds) โ†’ **~200 packs total**. It complements
`SCENARIO_REVIEW_CHECKLIST.md` (methodology) and `SCENARIO_QUALITY.md`
(whole-suite recap) by giving the next-buildable seed any coding agent
can pull off.

## How to use this file

1. Pick a seed whose **engineering tag** matches what's available
   today (`YAML` = build now; `BOT:x` / `PRED:x` / `ENG:x` = blocked
   on that engine PR landing).
2. Author the pack to the **no defect, no cheat** bar (see
   `SCENARIO_REVIEW_CHECKLIST.md` and `CLAUDE.md`).
3. Populate the new schema field `meta.benchmark_anchor: list[str]`
   with the seed's anchor (real-world capability and/or named
   benchmark).
4. Scripted-policy validate (stall / brute / wrong-path / intended)
   across seeds 1โ€“4 โ€” every lazy policy must LOSS, intended must WIN,
   never a DRAW.
5. Move the seed from this file to a section of
   `SCENARIO_QUALITY.md` (the whole-suite catalog) once committed.

## Engineering tags

- `YAML` โ€” buildable today, pure YAML.
- `MAP:x` โ€” needs a new map generator or static `.oramap`.
- `BOT:x` โ€” needs new scripted-bot variant in
  `openra-sim/src/scripted_bot.rs`. Currently supported: `hunt`,
  `rusher`, `patrol`, `turtle`, `guard`. Proposed: `raider`, `pincer`,
  `feinter`, `prober`, `tower-rusher`, `boomer`, `tech-switcher`.
- `PRED:x` โ€” needs new predicate in
  `openra_bench/scenarios/win_conditions.py` (+ `_PHRASES` entry in
  `game_knowledge.py`).
- `ENG:x` โ€” needs deeper engine work (new order, signal, mid-episode
  hook). Examples: `deploy`, `capture_actor`, `apc-transport-complete`,
  `air-units`, `power-signals` (today inert), `scheduled-event`,
  `dynamic-deadline`, `RL-adversary` (P3-1).

## Engineering shopping list (PRs that unblock the most seeds)

Order from cheapest to most expensive; numbers in parentheses are how
many seeds each PR unblocks.

1. **`forbidden_tools` + `tool_violation` signal** (P2-1) โ€” unblocks
   ~6 seeds (Group I + B3).
2. **`raider` bot** โ€” unblocks ~4 (B1 + Group F defenses + C2).
3. **`then:[A,B]` happened-before composite** (P2-3) โ€” unblocks ~5
   (B2 + Group G/I/N).
4. **`own_building_lost_gte` + `building_destroyed_gte`** (P2-2) โ€”
   unblocks ~3 (C3 + C2 + C5).
5. **`region_held_for_ticks`** โ€” strengthens B4 + several defense
   seeds.
6. **`pincer` / `feinter` bots** โ€” unblocks C3, C4, several adv-*.
7. **Mid-episode scripted-event hook** โ€” unblocks C5 + 4 robustness
   seeds + surprise-flank.
8. **Power-signals fix** โ€” unblocks 7+ seeds in Groups A/M.
9. **MCV `deploy` order** โ€” unblocks ALL Group A `mcv-*` (7+ seeds).
10. **`capture_actor` order** โ€” unblocks Group K spec-engineer-*.
11. **Engineer-rebuild order** โ€” unblocks several robustness seeds.
12. **`apc` transport completeness** โ€” unblocks Group L.
13. **Water mapgen + `lst`** โ€” unblocks Group L amphibious + island.
14. **Air units (`yak`/`mig`/`heli`)** โ€” unblocks anti-air,
    paradrop, air-ground coord.
15. **Stealth/`spy`/`thief` mechanics** โ€” unblocks spec-spy / spec-thief.
16. **Superweapons** (nuke / iron-curtain / chronosphere) โ€” Group K.
17. **Live RL adversary slot (P3-1)** โ€” unblocks C1, C4, all
    adv-*-race seeds.

---

# Backlog seeds organized by family

Each seed has: `id` โ€” cell โ€” real-world anchor // benchmark anchor โ€”
one-line predicate sketch โ€” engineering tag(s).

## Group A โ€” Base building & MCV (25)

Largely engine-gated on `deploy`; pre-`deploy` proxies via pre-placed
`fact` markers + build-radius creep.

- `mcv-deploy-and-build` โ€” Opening MCVโ†’fact site choice // critical-infra siting; SC2LE BO โ€” `has_building:fact` AND deploy-tick โ‰ค T AND `building_total_gte:3` โ€” ENG:deploy + YAML
- `mcv-deploy-defensible-site` โ€” Opening site under threat // resilience-first siting; MicroRTS terrain-aware โ€” `building_in_region:{good_terrain,fact,1}` AND survival โ€” ENG:deploy + YAML
- `mcv-deploy-near-resource` โ€” Opening site near ore // econ-first siting; SC2LE econ โ€” `building_in_region:{near_ore,fact,1}` AND `economy_value_gte:N` โ€” ENG:deploy + YAML
- `mcv-deploy-relocate-under-pressure` โ€” Mid conyard pack + relocate // BCP relocation; PlanBench replanning โ€” `building_in_region:{new_site,fact,1}` after `after_ticks:T_loss` โ€” ENG:deploy+undeploy + YAML
- `mcv-deploy-second-base` โ€” Mid 2nd MCV โ†’ 2nd base // multi-site ramp; MicroRTS expansion โ€” 2 facts in 2 regions โ€” ENG:deploy + YAML
- `mcv-deploy-third-base` โ€” Mid-Late 3rd MCV โ†’ 3rd base // tri-base macro; SC2 3-base โ€” 3 facts in 3 regions โ€” ENG:deploy + YAML
- `mcv-deploy-evac-and-resite` โ€” Mid evacuate failing base // disaster recovery; ScienceWorld โ€” fact razed THEN new fact built โ€” ENG:deploy + YAML
- `build-radius-creep-to-objective` โ€” Mid walk base toward enemy // FOB; SC2 forward pylon โ€” `building_in_region:{near_enemy,pbox,1}` โ€” YAML
- `build-radius-creep-bridge-island` โ€” Mid-Late creep over bridge // staging expansion; MicroRTS terrain โ€” `building_in_region:{island,fact,1}` โ€” ENG:bridge-aware-mapgen + YAML
- `build-power-online-first` โ€” Opening `has_building:powr` before all else // grid bring-up sequencing; PlanBench ordering โ€” `then:[powr, _]` โ€” PRED:then + YAML
- `build-defensive-tower-line` โ€” Mid 4 pbox in line covering choke // perimeter design; ERQA spatial โ€” `building_count_gte:{type:pbox,n:4}` + `building_in_region:{choke,pbox,4}` โ€” YAML
- `build-defensive-tower-cluster` โ€” Mid pbox cluster at bottleneck // concentrated defense; ERQA โ€” `building_in_region:{bottleneck,pbox,4}` โ€” YAML
- `build-defensive-skirt-corners` โ€” Mid corner-mounted defenses // distributed defense; MicroRTS โ€” `building_in_region` 4x corner regions โ€” YAML
- `build-spacing-anti-splash` โ€” Mid space buildings to survive splash // resilience design; robustness โ€” `min_separation_gte:N` โ€” PRED:min_separation + YAML
- `build-anti-air-positioning` โ€” Mid SAM coverage // anti-air planning; SC2 antiair โ€” `building_in_region` of `sam` โ€” ENG:air-units + YAML
- `build-engineer-rebuild-after-loss` โ€” Mid engineer rebuilds razed building // resilience drill; PlanBench replanning โ€” building re-presence after loss โ€” ENG:engineer-rebuild-order + YAML
- `build-sequence-tech-fastest` โ€” Opening BO hits `weap` in min turns // BOM-optimal; PlanBench cost-optimal โ€” `then:[tent, weap]` AND `within_ticks:T_tight` โ€” PRED:then + YAML
- `build-sequence-tech-cheapest` โ€” Opening BO hits `weap` cheapest // BOM-cost; PlanBench cost-optimal โ€” cash-bound โ€” YAML
- `build-sequence-tech-most-resilient` โ€” Mid tech via redundant prereqs // resilience; PlanBench robust โ€” 2x prereq buildings โ€” PRED:then + YAML
- `build-power-budget-online` โ€” Opening keep `power_surplus_gte:0` // grid bring-up; SC2 power โ€” ENG:power-signals + YAML
- `build-power-down-defensive` โ€” Mid `power_down` non-essentials under attack // load-shedding; ops runbook โ€” YAML
- `build-repair-priority-under-fire` โ€” Mid repair structures in correct order // repair triage; DR โ€” YAML
- `build-sell-and-rebuild-elsewhere` โ€” Mid `sell` weakened, rebuild defended // capital reallocation; finance โ€” YAML
- `build-rally-point-management` โ€” Opening set rally forward // production logistics; warehouse SLA โ€” YAML
- `build-production-throughput-multibuilding` โ€” Mid 2x `weap` parallel queue // throughput; queueing theory โ€” YAML

## Group B โ€” Multi-front base building (12)

- `mfb-two-base-simultaneous` โ€” Mid build base-2 while base-1 builds // multi-site ramp; SC2 sim-base โ€” 2 facts within tight window โ€” YAML
- `mfb-base-1-defend-base-2-build` โ€” Mid defend live + build forward // ops continuity during expansion; DR siting โ€” YAML
- `mfb-third-base-against-clock` โ€” Mid-Late 3rd base before deadline // greedy expansion; SC2 3-base timing โ€” YAML
- `mfb-relocate-conyard-under-pressure` โ€” Mid pack + move conyard // BCP; PlanBench replanning โ€” ENG:deploy/undeploy + YAML
- `mfb-evacuate-base-deploy-elsewhere` โ€” Mid abandon base, redeploy MCV // disaster recovery; ScienceWorld โ€” ENG:deploy + YAML
- `mfb-tech-base-vs-economy-base` โ€” Mid-Late role-specialized bases // specialization; industrial โ€” YAML
- `mfb-island-base-amphibious` โ€” Late build base across water // amphibious staging; RoboMaster ship-to-shore โ€” ENG:transport+amphib-mapgen + YAML
- `mfb-forward-base-near-enemy-corner` โ€” Mid-Late FOB // SC2 forward production โ€” YAML
- `mfb-redundant-tech-buildings` โ€” Mid 2x `weap` for resilience // redundancy; robust planning โ€” YAML
- `mfb-mirror-base-east-west` โ€” Mid symmetric multi-base // distributed-systems mirror; raft replicas โ€” YAML
- `mfb-rotating-production-pressure` โ€” Mid-Late alternate production under raid // load balancing; queueing โ€” PRED:then + YAML
- `mfb-supply-line-link-between-bases` โ€” Mid-Late connect 2 bases via patrol // logistics route; supply-chain โ€” YAML

## Group C โ€” Defense positioning & surprise reaction (16)

- `def-position-expected-direction` โ€” Mid fortify N (intel says N) // pre-positioned defense; ERQA spatial commit โ€” YAML
- `def-position-revealed-direction` โ€” Mid fortify after scout reveals // adaptive defense; PlanBench replanning โ€” YAML
- `def-surprise-flank-react` โ€” Mid intel said N, enemy comes S // surprise reaction; adversarial robustness โ€” ENG:enemy-spawn-misdirection + YAML
- `def-pre-position-mobile-reserve` โ€” Mid mobile reserve in center // reserve doctrine; military โ€” YAML
- `def-tower-line-vs-cluster` โ€” Mid choose spread vs concentration // defense topology; graph min-cut โ€” YAML
- `def-walls-vs-towers` โ€” Mid passive vs active mitigation // security architecture โ€” ENG:walls + YAML
- `def-engineer-repair-under-fire` โ€” Mid which tower to repair under fire // triage; DR โ€” YAML
- `def-stance-mgmt-hold-then-attack` โ€” Mid hold-fireโ†’return-fire timing // ROE drill โ€” YAML
- `def-while-building` โ€” Mid defend with workforce while building defenses // ops continuity โ€” YAML
- `def-multi-direction` โ€” Mid defend 3 lanes // distributed defense; graph min-cut โ€” YAML
- `def-in-depth` โ€” Mid-Late front + 2nd line vs single thick // defense-in-depth; security doctrine โ€” YAML
- `def-with-ambush` โ€” Mid fog ambush vs static // active deception; SC2 hidden โ€” YAML
- `def-evacuation` โ€” Mid-Late evacuate overwhelmed position // BCP; emergency mgmt โ€” YAML
- `def-retreat-and-rebuild` โ€” Mid-Late concede + rebuild deeper // strategic withdrawal; CICERO retreat โ€” YAML
- `def-anti-air-positioning` โ€” Late SAM placement // anti-air; SC2 โ€” ENG:air-units + YAML
- `def-tower-rush-counter` โ€” Opening enemy tower-rushes you // tower-rush defense; SC2 cannon-rush counter โ€” BOT:tower-rusher + YAML

## Group D โ€” Combat micro & tactics (20)

- `combat-focus-fire-priority` โ€” Mid which enemy to kill first // target prioritization; SC2 focus-fire โ€” YAML
- `combat-kite-jeep-vs-tank` โ€” Mid kite ranged // micro; SC2 kiting โ€” YAML
- `combat-stance-mgmt-attack` โ€” Mid switch to attack-anything // ROE; SC2 stance โ€” YAML
- `combat-formation-tank-wedge` โ€” Mid tank wedge // formation; military โ€” YAML
- `combat-formation-infantry-screen-tanks` โ€” Mid infantry screens armor // combined-arms; military โ€” YAML
- `combat-retreat-after-engagement` โ€” Mid disengage timing // tactical withdrawal; SC2 โ€” YAML
- `combat-flanking-attack` โ€” Mid flank vs head-on // flank maneuver; military โ€” YAML
- `combat-pincer-coordination` โ€” Mid two-prong // pincer; SC2 multi-prong โ€” YAML
- `combat-bait-counter-attack` โ€” Mid lure + flank-counter // bait; SC2 bait โ€” BOT:guard + YAML (idiom proven)
- `combat-divide-and-conquer` โ€” Mid split enemy via feint // CICERO โ€” YAML
- `combat-protect-vip-escort` โ€” Mid escort VIP // diplomatic escort โ€” PRED:`unit_type_count_gte:{vip,1}`-survival + YAML
- `combat-suicide-charge-mission` โ€” Mid sacrifice everything for X // forlorn hope; military โ€” YAML
- `combat-prevent-retreat` โ€” Mid cut off enemy retreat // encirclement; military โ€” YAML
- `combat-defensive-perimeter-around-vip` โ€” Mid perimeter // VIP cordon โ€” YAML
- `combat-skirmish-then-disengage` โ€” Mid bleed and pull back // skirmisher; SC2 โ€” YAML
- `combat-vehicle-vs-infantry-counter` โ€” Mid tank vs inf // RPS counter; SC2 hard counter โ€” YAML
- `combat-rocket-soldier-anti-vehicle` โ€” Mid e3 vs tank // RPS; SC2 โ€” YAML
- `combat-tank-vs-tank-engagement` โ€” Mid mirror combat // SC2 mirror micro โ€” YAML
- `combat-amphibious-landing` โ€” Mid-Late APC across water // amphibious assault; D-Day โ€” ENG:transport+water-mapgen + YAML
- `combat-attack-from-behind-fog` โ€” Mid emerge from fog // surprise attack; SC2 hidden โ€” YAML

## Group E โ€” Scouting / Perception (15)

- `scout-far-frontier` โ€” Early long-distance scout // recon; ERQA โ€” YAML
- `scout-and-survive` โ€” Early scout returns alive // scout-preserve; SC2 worker scout โ€” YAML
- `scout-multiple-fog-areas` โ€” Early parallel scout // Watch-And-Help โ€” YAML
- `scout-detect-enemy-tech` โ€” Early-Mid identify enemy via buildings // tech-read; PlanBench obs โ€” YAML
- `scout-detect-base-direction` โ€” Early which corner has enemy // direction-read; ERQA โ€” YAML
- `scout-count-defenders` โ€” Early-Mid exact defender count // census; POMDP โ€” YAML
- `scout-discover-hidden-base` โ€” Mid off-axis hidden base // deep recon; CICERO โ€” YAML
- `scout-detect-incoming-army` โ€” Mid early-warn // intrusion detection โ€” YAML
- `scout-detect-air-threat` โ€” Late air detection // anti-air recon โ€” ENG:air-units + YAML
- `scout-detect-stealth-units` โ€” Late stealth detection // SC2 detector โ€” ENG:stealth-units + YAML
- `scout-map-reveal-percent-target` โ€” Early reveal N% // coverage; ERQA โ€” YAML
- `scout-and-report` โ€” Early-Mid reveal then return // recon-report cycle; mil intel โ€” YAML
- `scout-jeep-vs-infantry-cost-effective` โ€” Early cheap fast scout // econ scout; SC2 worker-vs-Reaper โ€” YAML
- `scout-cycle-keep-info-fresh` โ€” Mid continuous cadence // info staleness; intel ops โ€” PRED:then-repeated + YAML
- `scout-info-blackout-react` โ€” Mid fog blanket then enemy revealed // dynamic perception; adversarial โ€” ENG:fog-shift-hook + YAML

## Group F โ€” Economy / Resources (16)

Mostly unblocked by S0/S1 (task #14).

- `econ-startup-from-scratch` โ€” Opening first proc + harv // greenfield econ; SC2 first base โ€” YAML
- `econ-harvester-pathing-optimization` โ€” Opening harv route choice // logistics; queueing โ€” PRED:`econ_rate_gte` + YAML
- `econ-multi-patch-allocation` โ€” Mid which ore patches // resource allocation; OR โ€” YAML
- `econ-far-patch-vs-near-patch` โ€” Mid travel vs throughput // econ tradeoff; OR โ€” YAML
- `econ-silo-vs-spend` โ€” Mid store or spend // capital allocation; PlanBench โ€” YAML
- `econ-replace-dead-harvester` โ€” Mid rebuild dead harv // resilience; PlanBench replanning โ€” YAML
- `econ-protect-harvester-route` โ€” Mid defend harv path // econ defense; SC2 harass defense โ€” YAML
- `econ-cash-reserve-management` โ€” Mid never zero cash // financial reserve โ€” PRED:`cash_gte` + YAML
- `econ-target-cash-amount-by-deadline` โ€” Mid cash bar by deadline // budget by date; finance โ€” YAML
- `econ-contention-with-enemy` โ€” Mid shared ore patch // contested resource; game theory โ€” YAML
- `econ-recover-from-zero-cash` โ€” Mid start from 0 cash // bankruptcy comeback โ€” YAML
- `econ-quantitative-vs-qualitative-spend` โ€” Mid many cheap vs few expensive // unit composition; OR โ€” YAML
- `econ-burn-rate-management` โ€” Mid spend at target rate // runway mgmt; startup finance โ€” PRED:`spend_rate_lte` + YAML
- `econ-buy-vs-build-decision` โ€” Mid cash now or save for tech // PlanBench โ€” YAML
- `econ-resource-trade-with-self` โ€” Mid-Late balance ore vs cash // commodity hedging; finance โ€” YAML
- `econ-overflow-to-silos` โ€” Mid silo-required throughput // capacity planning; backpressure โ€” YAML

## Group G โ€” Long-horizon / Multi-phase (12)

- `lh-opening-to-tech-to-army` โ€” Late 4-phase chain // long-horizon; SC2 macro โ€” YAML
- `lh-opening-to-defense-to-counter` โ€” Late defense โ†’ counter // counter-attack timing; SC2 timing โ€” YAML
- `lh-tech-pivot-attack` โ€” Late tech โ†’ pivot โ†’ attack // adaptive macro; PlanBench โ€” YAML
- `lh-econ-army-victory` โ€” Late econ โ†’ army โ†’ victory // SC2 macro โ€” YAML
- `lh-defense-tech-second-base` โ€” Late defend โ†’ tech โ†’ expand // SC2 secure-expand โ€” YAML
- `lh-scout-react-counter` โ€” Late scout โ†’ react โ†’ counter // CICERO โ€” YAML
- `lh-100-turn-marathon-survival` โ€” Very-Late survive 100 turns // lmgame-Bench multi-hour โ€” YAML (max_turns:100+)
- `lh-build-army-coordinate-multifront-attack` โ€” Late assemble + coordinate // operational planning; military โ€” YAML
- `lh-progression-stage-locked` โ€” Late each stage gates next // PERT; PlanBench โ€” PRED:then + YAML
- `lh-credit-only-final-phase` โ€” Late sparse reward // long-horizon RL โ€” YAML
- `lh-multi-checkpoint-5-plus` โ€” Late 5+ checkpoints // sequenced ops; PlanBench โ€” PRED:waypoint_sequence-extended + YAML
- `lh-recovery-after-mid-game-loss` โ€” Late comeback // SC2 comeback โ€” ENG:scheduled-event + YAML

## Group H โ€” Adversarial / Game-theoretic (12)

- `adv-counter-strategy-read` (= C1 from plan)
- `adv-feint-handling` (= C4 from plan)
- `adv-bluff-detection` โ€” Mid commit vs hesitate // poker-bench โ€” ENG:RL-adversary + YAML
- `adv-rps-counter-pick` โ€” Mid unit-counter selection // RPS; game theory โ€” YAML
- `adv-tempo-vs-adversary` โ€” Mid-Late out-tempo // TextStarCraft II โ€” ENG:RL-adversary + YAML
- `adv-economy-race` โ€” Late out-econ // SC2 econ race โ€” ENG:RL-adversary + YAML
- `adv-army-race` โ€” Late out-army // SC2 army race โ€” ENG:RL-adversary + YAML
- `adv-tech-race` โ€” Late out-tech // SC2 tech race โ€” ENG:RL-adversary + YAML
- `adv-base-trade-race` (= C3 from plan)
- `adv-asymmetric-weaker-must-win` โ€” Mid outnumbered must-win // underdog; RTS asymmetric โ€” YAML
- `adv-asymmetric-stronger-no-loss` โ€” Mid dominate without loss // overdog discipline; CICERO โ€” YAML
- `adv-mirror-match-best-strategy` โ€” Late mirror best-of // SC2 mirror โ€” ENG:RL-adversary + YAML

## Group I โ€” Procedural / Tool-use compliance (10)

- `proc-strict-toolban-fidelity` โ€” Cross BFCL relevance // BFCL V4 โ€” PRED:forbidden_tools + YAML
- `proc-strict-toolban-under-pressure` (= B3 from plan)
- `proc-checklist-no-deviation` โ€” Cross exact ordered checklist // SOP compliance; IFBench โ€” PRED:waypoint_sequence strict + YAML
- `proc-ordered-action-strict` โ€” Cross exact action sequence // PlanBench strict ordering โ€” PRED:then + YAML
- `proc-no-attack-passive-only` โ€” Cross only move+stop // ROE; mil โ€” PRED:forbidden_tools + YAML
- `proc-only-build-no-combat` โ€” Cross only build/place // role-based access โ€” PRED:forbidden_tools + YAML
- `proc-only-defend-no-attack` โ€” Cross only defensive moves // ROE; mil โ€” PRED:forbidden_tools + YAML
- `proc-tool-use-with-distractor` โ€” Cross ignore distracting tool // ฯ„ยฒ-bench โ€” YAML
- `proc-tool-use-multi-distractor` โ€” Cross ignore multiple distractors // ฯ„ยฒ-bench โ€” YAML
- `proc-instruction-following-edge-case` โ€” Cross instruction-edge // IFBench โ€” YAML

## Group J โ€” Robustness / Edge cases (8)

- `rob-unit-loss-recovery` โ€” Mid recover from N losses // resilience; PlanBench replanning โ€” YAML
- `rob-building-loss-rebuild` (= C5 from plan)
- `rob-cash-depletion-recovery` โ€” Mid recover from 0 cash // bankruptcy โ€” YAML
- `rob-power-failure-recovery` โ€” Mid recover from brownout // grid restoration; DR โ€” ENG:power-signals + YAML
- `rob-multiple-simultaneous-pressures` โ€” Mid econ + def + tech under pressure // overwhelmed ops; triage โ€” YAML
- `rob-unexpected-enemy-spawn` โ€” Mid spawn mid-episode // surprise; adversarial robustness โ€” ENG:scheduled-spawn + YAML
- `rob-objective-change-midway` โ€” Mid win-condition shifts at T // goal-conditional RL โ€” ENG:objective-swap-hook + YAML
- `rob-deadline-shortened-midway` โ€” Mid deadline brought forward // schedule compression; project mgmt โ€” ENG:dynamic-deadline-hook + YAML

## Group K โ€” Special abilities (engine-gated, 10)

- `spec-engineer-capture` โ€” Mid capture enemy `proc` // industrial espionage; SC2 spy steal โ€” ENG:capture_actor + YAML
- `spec-engineer-mass-capture` โ€” Mid capture all of enemy tech // takeover; CICERO โ€” ENG:capture_actor + YAML
- `spec-spy-infiltrate` โ€” Mid reveal enemy tech via spy // intel infiltration; SC2 scan โ€” ENG:spy + YAML
- `spec-thief-steal-resources` โ€” Mid steal enemy cash // econ sabotage; SC2 worker raid โ€” ENG:thief + YAML
- `spec-medic-heal-coordination` โ€” Mid medic heals infantry // SC2 medivac โ€” ENG:medic + YAML
- `spec-airborne-paradrop` โ€” Late drop reinforcements // SC2 paradrop โ€” ENG:airborne + YAML
- `spec-nuke-strike` โ€” Very-late superweapon // SC2 nuke โ€” ENG:superweapon + YAML
- `spec-iron-curtain-buff` โ€” Late invuln buff // SC2 cloak โ€” ENG:iron-curtain + YAML
- `spec-chronosphere-teleport` โ€” Late unit teleport // SC2 warpgate โ€” ENG:chronosphere + YAML
- `spec-spy-detect-tech` โ€” Mid spy + tech reveal // counterintel; CICERO โ€” ENG:spy + YAML

## Group L โ€” Transport / Amphibious (6)

- `transport-apc-deliver-infantry` โ€” Mid APC delivers infantry // last-mile delivery; logistics โ€” ENG:apc-transport + YAML
- `transport-amphibious-landing` โ€” Mid-Late LST water cross // amphibious; D-Day โ€” ENG:water-mapgen+lst + YAML
- `transport-evacuate-by-transport` โ€” Mid evac units // BCP evacuation; emergency โ€” ENG:apc-transport + YAML
- `transport-multiple-trips` โ€” Mid ferry multiple loads // queueing โ€” ENG:apc-transport + YAML
- `transport-protect-en-route` โ€” Mid escort transport // convoy escort; mil โ€” ENG:apc-transport + YAML
- `transport-amphibious-island-base` โ€” Mid-Late build on island // amphibious base; strategic geography โ€” ENG:water-mapgen+lst + YAML

## Group M โ€” Power / Maintenance (7)

Most are gated on the engine power-signals fix (`power_surplus_gte`
is currently inert โ€” see CLAUDE.md footguns).

- `power-budget-online` โ€” Opening keep `power_surplus_gte:0` // grid bring-up; SC2 power โ€” ENG:power-signals + YAML
- `power-down-non-essential-under-attack` โ€” Mid load-shed // ops runbook โ€” ENG:power-signals + YAML
- `power-restoration-order-after-loss` โ€” Mid restore in correct order // utility restoration; DR โ€” ENG:power-signals + YAML
- `power-tech-vs-defense-conflict` โ€” Mid limited power: tech vs def // capacity allocation; OR โ€” ENG:power-signals + YAML
- `maint-repair-priority-order` โ€” Mid repair triage // DR โ€” YAML
- `maint-sell-and-recoup-cash` โ€” Mid sell + recoup // capital reallocation; finance โ€” YAML
- `maint-rebuild-from-power-failure` โ€” Mid restore after brownout // DR; utility โ€” ENG:power-signals + YAML

## Group N โ€” Coordination & Multi-agent (8)

- `coord-squad-handoff` โ€” Mid squad A to squad B handoff // multi-agent handoff; Watch-And-Help โ€” YAML
- `coord-relay-attack` โ€” Mid A attacks, B follows up // relay; SMAC โ€” YAML
- `coord-mutual-support` โ€” Mid stay in mutual support range // mil doctrine โ€” PRED:max_inter_unit_distance_lte + YAML
- `coord-converge-on-target` โ€” Mid 3 squads converge // SMAC โ€” YAML
- `coord-cover-and-move` โ€” Mid A covers while B moves // fire-and-maneuver; mil โ€” YAML
- `coord-diversionary-attack` โ€” Mid A diverts, B attacks real target // CICERO โ€” YAML
- `coord-air-ground-combined` โ€” Late (air) combined-arms // mil โ€” ENG:air-units + YAML
- `coord-naval-ground-combined` โ€” Late (naval) combined naval-ground // D-Day โ€” ENG:naval + YAML

## Group O โ€” Time-pressure variants (8)

(Each is a "+ tight clock" variant of an existing scenario family.)

- `tp-rush-objective-very-fast` โ€” Mid speedrun objective // speedrun; human speedrun โ€” YAML
- `tp-rush-objective-tighter` โ€” Mid tighter speedrun โ€” YAML
- `tp-rush-multi-objective` โ€” Mid speedrun 2 objectives // speedrun parallel โ€” YAML
- `tp-survive-N-turns` โ€” Mid survive until clock // survival; SC2 survival โ€” YAML
- `tp-survive-and-grow` โ€” Mid survive + grow // ops continuity; SRE โ€” YAML
- `tp-survive-and-strike-at-window` โ€” Mid survive then strike // SC2 timing window โ€” PRED:then + YAML
- `tp-decision-under-clock` โ€” Mid quick correct choice // tense decision; poker โ€” YAML
- `tp-pressure-procedural` โ€” Cross procedural under tight clock // procedure under stress; IFBench โ€” PRED:forbidden_tools + YAML