# BitBrain vs TMHorizon vs Pattern — live A/B, 4 arms x 15 runs x 7 rounds.
#
# Tests the user's claim "BitBrain gun is better than TMhorizon ... tfil move
# 6 to 4" on the SHIPPED TFIL movement (no TR_MOVEMENT override), real DrussGT.
#
#   pattern  = shipped default (onlyPattern rack), no env  (reference)
#   bb_id    = Pattern off, BitBrain on, gain pinned to 1.0 (single candidate =>
#              FIXED gain, no learning) -> `aim = LOS + 1.0*(patternAim-LOS)` is
#              the IDENTITY. Built-in PLUMBING VALIDITY CHECK: MUST match pattern.
#   bb_learn = Pattern off, BitBrain on, learner over {1.0,1.25,1.5,2.0} with
#              decay memory -> the configuration the user most likely ran.
#   tmh      = Pattern off, TMHorizon on (its own head), shipped gains.
pattern |
bb_id | TR_RACK_PATTERN=off TR_RACK_BITBRAIN=both TR_BITBRAIN_GAINS=1.0 | gain 1.0 identity (validity check)
bb_learn | TR_RACK_PATTERN=off TR_RACK_BITBRAIN=both TR_BITBRAIN_GAINS=1.0,1.25,1.5,2.0 TR_BITBRAIN_MEM=decay | learned gain
tmh | TR_RACK_PATTERN=off TR_RACK_TMHORIZON=both | TMHorizon-only rack
