I am still conflicted.

1. If the purpose of the PR is to fix a floating-point issue, then what you are doing is a lot more than just that -- you are changing behavior. Instead you should move the `max` next to the `pow` a few lines down and be done with it.

2. On the other hand, the change you made may be considered OK. Please have a look at #3291 for some history... This is a subjective call.... Also, be aware that even if `angle` is `Math.PI / 2`, a valid value, then the dot-product can still be `- 0.0000001`.

What do you think?