STM32G431: Application doesn't start after system bootloader finished
This is one of those issues where I can hardly figure out what to seach for...
I have a board (with an STM32G431) where I can activate the BOOT pin with a switch, to start the system bootloader. This allows the customer to upload a new application version using STM32CubeProgrammer and the microcontroller's USB port.
However, on this board, the application doesn't run when the bootloader is done. On other boards with other micrcontroller types, the "Run after programming" feature works nicely, but not on the one with an STM32G431.
Even with an ST-LINK V3 connected to the board, I cannot see with certainty in what state the microcontroller ends up, or what the program counter says, as the ST-LINK loses its connection with the microcontroller. When I reconnect, STM32CubeProgrammer claims that the CPU is halted.

Why the CPU is halted, I have no idea. But it is quite annoying, as the board is a tiny thing in a very large industrial machine, where they should be able to upload new firmware without needing to cut the power.
If I try reading the PC, and compare with the .list file, the application is halted in Reset_Handler. But I'm not certain that I get the correct PC address, and in any case, I don't understand why it gets halted there. Or at all. If I press the Run button in ST-LINK connected CubeProgrammer (sometimes It need to use Hardware Reset first), the application starts as it is supposed to.
Another symptom: After programming is complete, the ST-LINK programmer loses its connection (as it should), and then a Windows notfication briefly appears with a message that Windows has found an unknown or incompatible device. Or at least it did, until I tried to capture it. Then it disappeared. And now I'm too tired to remember the text verbatim.
At least I can hear the "USB device disconnected" followed by the "USB device connected" chimes when firmware upload is complete. But the usual virtual serial port doesn't show up as usual, and CubeProgrammer (USB) cannot find it.
I hope that this made some kind of sense.
Do any of you have experience with an STM32G4 device being halted after uploading firmware through the USB port, and not starting its application afterwards? And might there be a solution?
P.S. My searches have just somewhat paid off. Apparently, this is a known issue:
https://gist.github.com/gonzabrusco/fd47e89e4c6fb302fc54b83637a3a101
However, I'll need a good night's sleep before I can begin to understand how this works. Also, a less cumbersome work-around would be preferred.