With the python files it is easy to do.
The way I do it when experimenting (some stages you may feel are are un-necessary)
Make an image backup and save away from receiver. This is so that you can can reflash if your box does not boot.
Find the target location. It is usually
/usr/lib/enigma2/python or a sub directory
Mame a backup of the orginal .pyo file (add .bak) at end of name. RecordTimer.pyo will become RecordTimer.pyo.bak
Transfer new .py
GUI restart. You can do this at commnd line "init 4 && sleep 10 && init 3". I add the 10 second wait to enable it to write files kept in RAM properly
After restart, the .py file will compile to .pyo
Delete the .py file so that it does not keep compiling after each restart.
If you leave the .py file in there, and there is an update, your version will replace the official file. This can cause crashes that nobody can replicate becuese they are not using the same files as you.
Submit a pull request on Github for the fix to be considered/applied.
If you get an Enigma bootloop with new file.
Stop Enigma2 from running with "init 4" command.
Check crashlog for issue (default location is home/root/logs)
Edit .py file with any fixes and restart. Not forgetting to let transfer complete before restart.
Should you wish to do more detailed analysis and in real time, you can start enigma2 in console mode
To end console mode
ctrl & c
init 6
I will add the details of the multiple bouquets settings to the bug report. Being able to reproduce an issue makes testing fixes/avoidance easier.