By: Lucien Huber <im@lcnbr.ch>
compare complex phases on the circle in approx_eq ApproxEq for Complex<F<T>> reduced both phases to [0, 2π) and compared them as numbers, so a value whose imaginary roundoff is just below zero (phase just below 2π) was unequal to the real target it approximates (phase 0), in approx_eq and approx_eq_res. phases_on_circle shifts the left phase by 2π when that brings it within π of the right one; phase pairs already within π compare as before. Regression test utils::tests::complex_phases_compare_across_zero, which also checks that a difference in phase alone is still rejected. nix-ci.nix: top-level enable = false during review. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>