Quick answer: Godot 4 process_priority set on a node not affecting order until next frame? Tree caches process order; recompute via _exit_tree / _enter_tree.
Add a node with high priority; expect it to tick first; ticks last.
Set before add
node.process_priority = 100; parent.add_child(node). Order computed at add.
Or call_deferred re-add
Re-add forces order recompute.
Audit priority changes
Each runtime priority change has timing.
“Process order is cached. Mutations need explicit invalidation.”
If priority changes don't apply immediately, the re-add or set-before-add pattern is the fix.