Having spent some more time at this, I'm pretty sure I can implement a queue-like mechanism using a global variable array. I've knocked together a quick POT and its encouraging.
The downside is that it will require the user to install a macro instead of using a "native" command. The upside is (1) that its independent of the Duet3d dev cycle which has more than enough to be going on with 🙂 , (2) I'm not trying to shoehorn a mechanism into doing something that was not intended. (3) it can be kept independent of other programs / plugins.
I'll report back / share the macro when I have a reasonable V0.