quaternion camera - almost working - rotation control glitch

So my quaternion based camera is almost working perfectly.

I’ve just noticed one odd glitch.

If i roll 180 degrees and then yaw say 45 degrees… the movement is off. (i yaw more than i should and move forward less than i should )
If i roll back to up is back to opposite direction everything works great.

I believe this might be a bug in my getForward logic that doesnt account for the up vector.

anyone encounter this before? or have tips?

j.