Cheers @jrcwest.
So we have a definite correlation on the “no COM ports” thing. I’m going to do some more digging this morning to try and establish a causal relationship between that and the issue at hand, and to then come up with a workaround. If I can just get the Arduino IDE to emit some debug logs so I can see the command line it’s constructing to fork avrdude …
More later; unless @jbobrow beats me to it, which I bet he will!