There are various places where we use InputShape.Any (or inputToJS without any desired traits, after #150) for inputs that would ostensibly take or expect strings. Sometimes this might be alright - but shouldn't these all be string inputs? Wouldn't some of them error if a number-like literal gets converted to a JS number primitive? Demands investigation.