One minor change: in step two, if you give up on the patch as being too poorly written or not useful enough to be worth the effort, please tell the author about it, either via the pmdev wiki or by /msging the author (depending on if you feel like public humilition of the author and getting more people potentialy working on changes).
I quite agree, BTW, about the problems of untestable code. The way I code requires lots of testing, both to verify exactly how things currently work, and to make sure the code I'm writing does what I think it does, so I end up trying to make very minimal changes to PM, or changes that are very localized. One thing that might be nice to get more pmdevils able to reasonably test is to set up a way to get the code of existing nodes en masse, or at least a little more easily -- AFAIK the best way to do it now is to view source and copy-and-paste out of the patching textbox. (I may hack up a little script to do this, or find a better way; I'm going to start on it now, and report back here when I'm done).
Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).