# ─────────────────────────────────────────────────────────────────────────────
# arms_movement_b4.txt — BATCH 4 of the movement campaign: the HEAT FIELD
# STRENGTH (how strongly the strafe picker treats danger).
#
# Prior data (docs/movement_campaign.md §3–§5, MEASURED): the strafe win is a
# SURVIVAL effect (incoming hit rate 12.1–12.5% vs 17.6–18.2%, ~50 less damage
# taken/run, no detectable damage cost). The open question is whether that
# survival comes from HOW the field ranks danger — strafe runs a RETUNE of the
# shipped field: bullet core/aura 20/10 (core ABOVE the 10px path threshold),
# corridor 10 (== threshold), wall 15/5 (outer ring only), pillar off. The
# shipped field was corridor 20 (twice threshold), wall 30/10.
#
# REFERENCE is `strafe` (current defaults) — every delta is (arm − strafe).
# `tfil` is kept as the shipped control.
#
# Every knob below is ALREADY env-overridable in strafe.nim (Task A made the
# OTHER mover's — the shipped tfil field's — consts env-overridable; strafe's
# were already knobs). One arm per knob family.
#
# Format: name | ENV=value ENV=value | label
# ─────────────────────────────────────────────────────────────────────────────

# 1. the reference: current strafe retune (bullet 20/10, corridor 10, wall 15/5)
strafe | TR_MOVEMENT=strafe | reference — current strafe heat retune

# 2. the shipped control (no env).
tfil | | shipped control (movement engine tfil, every knob at default)

# 3. BULLET STRONG: the bullet itself much more dangerous (core 30 > the 25
#    danger-replan threshold; aura 15). Isolates the bullet retune.
bullet_strong | TR_MOVEMENT=strafe TR_STRAFE_BULLET_CORE=30 TR_STRAFE_BULLET_AURA=15 | stronger bullet core/aura (30/15)

# 4. FIELD STRONG: the SHIPPED corridor/wall shape (corridor 20 = 2x the path
#    threshold, wall 30/10 = a 3-tile wall apron). Isolates the corridor+wall
#    retune that strafe deliberately weakened.
field_strong | TR_MOVEMENT=strafe TR_STRAFE_CORRIDOR_HEAT=20 TR_STRAFE_WALL_HOTNESS=30 TR_STRAFE_WALL_RADIANCE=10 | shipped TFIL corridor/wall shape (20, 30/10)

# 5. FIELD OFF: no corridor and no wall heat at all (wall hotness 0 — do NOT
#    set radiance 0, that paints a FLAT field). Does the wall logic help or
#    merely occupy decisions?
field_off | TR_MOVEMENT=strafe TR_STRAFE_CORRIDOR_HEAT=0 TR_STRAFE_WALL_HOTNESS=0 | no corridors, no wall heat

# 6. WALL TIGHT: the curved-wing geometry family — bend sooner (margin 108->54),
#    prefer the interior harder (bias 0.35->0.7), curve twice as hard
#    (kappa 0.0025->0.005) and allow a larger wing tilt (30->45 deg).
wall_tight | TR_MOVEMENT=strafe TR_STRAFE_WALL_MARGIN=54 TR_STRAFE_WALL_BIAS=0.7 TR_STRAFE_KAPPA=0.005 TR_STRAFE_WING_MAX=45 | tighter/faster wall wings + escape
