Porque la rotación está siendo gestionada por el motor de etiquetado.
Cuando defines la ubicación por datos (moviendo la etiqueta), no hay datos para la rotación, por lo que es cero.
Pero puedes definir una expresión para la rotación (opción Editar... del submenu Definido por datos, Rotación):
line_interpolate_angle(
$geometry,
line_locate_point(
$geometry,
make_point(
"auxiliary_storage_labeling_positionx",
"auxiliary_storage_labeling_positiony"
)
)
) + 90
¿Qué estamos haciendo? Obteniendo el ángulo de la geometría en el punto más cercano a la ubicación de la etiqueta. El ángulo obtenido es desde el Norte, por lo que estamos sumando 90 grados para la rotación de la etiqueta.
Para las etiquetas que no se mueven, la rotación será gestionada por el motor como antes.