The ?/! success-is-str decision was name-keyed off the FIRST variant and only handled call operands — an ident operand with junk registers unwrapped garbage, and error-first unions picked the wrong variant. Key on the stamped success variant (successvariant + typeisstr, mirror cgen.c:10459-10466/10595-10602). Review item #16.