Hit.ImpactNormal returning odd values

2.08616257e-06 is “scientific notation” for 0.00000208616257

which is pretty close to zero. Likely the cube got rotated away from aligned, then back to aligned, and there’s a tiny, tiny offset from zero in the rotation. In a float, it’s easier to represent very small offsets from zero than it is to represent very small offsets from 1.0: so you are seeing the X’s significant digits as a tiny number, but the Y’s significant digits are essentially 1.0.

You can calculate what the number would be: this is a unit vector, so: xx + yy + zz = 1. so y = sqrt( 1 - xx ) = 0.99999999999782396287

Likely the other face listed as wrong is something like x = -1, y=?e-06

The point being, those values are actually relatively correct. You should almost never compare calculated floats with exact numbers, for this reason. What you expect to be zero or one, may actually have some accumulated error, and be just really, really, really close to the number you expect.