How can I get 6DoF with control rotation?

My character is tumbling over on his head when he approaches the axis poles. The code below is in my character class on the tick function. It is intended to keep his feet pointed at the world center (the world is round). It works right up until he approaches the axis poles of the world.

FTransform orgRot(FRotationMatrix::MakeFromZX(GetCapsuleComponent()->GetComponentLocation(), GetCapsuleComponent()->GetForwardVector()).ToQuat());
	FQuat addInRot = FRotator(0, mouseX, 0).Quaternion();
	orgRot.ConcatenateRotation(addInRot);
	Controller->SetControlRotation(orgRot.Rotator());

The character is standing on one of the poles of the world. The image is taken as I move the mouse to get yaw input. As I get input from the mouse x the character capsule starts to flip over on it’s head.

I tried approaching it like this…

const FVector yawAround = -GetCapsuleComponent()>GetComponentLocation().GetSafeNormal();
	const FVector newYawVec = GetCapsuleComponent()->GetForwardVector().RotateAngleAxis(mouseX, yawAround);
	FQuat orgRot(FRotationMatrix::MakeFromZX(GetCapsuleComponent()->GetComponentLocation(), newYawVec).Rotator());
	Controller->SetControlRotation(orgRot.Rotator());

and still exact same results…

I don’t understand how adding the quaternions together in any order will help this. Ultimately I have to setControlRotation with a rotator. The debug stats above the character show the control rotation and the problem is and has been that I lose a degree of freedom.

I had multiple posts (sorry). The answer is here.