Core precedence is lexicographic by numeric field: major first, then minor, then patch. String sorting gives incorrect results such as 1.10.0 before 1.2.0.

BigInt preserves every core digit

SemVer does not define a maximum numeric value, so floating-point Number is not an exact parser for all valid versions.

Leading zeroes are rejected

Each core field is either 0 or a digit 1–9 followed by digits.