issues with Normal vector values being "floored" incorrectly

i have a normal Vector, that when it reads “-0.0” and then gets Floored to an int, becomes “-1”
Is this correct? if so, why does it happen
if not, should I bug report?

Floor removes the fraction from any number keeping only the integer (e.g. where 0.9 becomes 0 or 1.9 becomes 1, etc.). based on 1.4 Floor, from Math Hall Content Examples | Unreal Engine Documentation tehn -.00001 becomes -1

You’d better try to use fceil (which will do like floored but with int +1 or round which will select the nearest one (depending your goal)