There is no change due to the change in physics FPS.
The overlap is still there whether I set the FPS to 120 or 20.
The yellow Godot icon is Static, but the overlap is still there.
Changing to Static Mode in RigidBody2D also causes the overlap.
I think this is how I see it in my experience.
Essentially, overlap should not be shown on the screen during a collision.
It should end the frame by drawing the pushed back state.
(Regardless of whether it pushes through or not.)
If you can see the overlap, I think the processing is probably crossing the frame.
This is a common mistake experienced when creating your own obstacle collision handling.
If you do the drawing first and the physics later, the pushed back picture will show up in the next frame,
and the current frame will show the overlap.
I've currently written all the input and move processes in _integrate_forces,
is there a way to get the input and physics done stably before the drawing?