An observation: the nodeMCU 'flash' button does NOT function the same as a button connected between its gpio00 pin and ground.
Another observation: the 'flash' button triggers a pin 0 interrupt, the gpio00 button does not!
Conclusion: draw your own.
I don't know what the interrupt problem is for me, but there is some problem preventing pin 0 interrupt from being used on my ser dev kit module AND nodeMCU module - which is just my own tough luck... but may also affect everyone else who isn't using whatever hardware you are using. At least I know the nodeMCU flash button does trigger a branch jump even though it's gpio00 pin does not.
Considering that my ser dev kit gpio00 button is definitely working for re-flashing and preventing auto-run, it could be something as simple as re-enabling pullup for interrupts, but something is wrong that's preventing the crucial interrupt function from working for me, and without that I can't read any pins or consider doing PIR sensors or other alarm triggers etc.
I'll obtain new hardware that is interrupt-compliant if that's necessary, but at the moment I've already tried everything I can think of and am now dead in the water.