There is a bug (missing brackets) in the line where it checks if two circles are too far to even intersect.
The line is:
if (sign(d - C.r + D.r) > 0) return {}; // too far
It should be:
if (sign(d - (C.r + D.r)) > 0) return {}; // too far
Two circles are too far to intersect if the distance between their centers (in our case $d$) is bigger than the sum of the radii $r_0$ and $r_1$.