v124: FIRST ADDITIVE PAIR - allocator +0.0083662574 retention and ws-collapse +0.0038355487 component compose EXACTLY (diffs 0.0). Reason is structural: all 1042 extra substitutions land on CLAMPED challenges and 0 on unclamped, so the two are paid on DISJOINT populations (74 clamped retention / 76 unclamped ratio). New variant structural_wscollapse_compressor.py, default OFF; 838 tests