Second - how did you figure this out?
I needed the Qt source code and a debug build. Now when looking at the address of the pointer of the focus widget I could see that it was a dangling pointer.
But from the dangling pointer it wasn't possible to see what the actual class name is. Thus, in a second step I set a break point at the constructor and destructor of QLineEdit. So, I could confirm that the focus widget was a QLineEdit by comparing the pointer addresses.
Now when looking at the call stack I saw the emitted signal editingFinished() and a couple of Python function calls. This looked suspicious to me so I went straight to the file PathToolBitEdit.py and checked what's connected to the signal.