`split` is always interpreted literally (see [parse_dist_values()]), so the only remaining traps are a non-string, a vector, `NA`, or the empty string – `strsplit(x, "", fixed = TRUE)` splits between every character, which would silently turn "123" into c(1, 2, 3). Rejecting these loudly is preferable for a tool whose job is to *measure* risk.