If I create a special non-spoken command with the two "enqueue command" entries, will it still run the "body scanned" as part of the queue even if its not valid?
Unless your commands have conditions in them that would prevent them from executing, yes.
In this type of race condition (where two events "race" against each other, and either may come in first), you may be best off using a delay, to make sure that if both events are to occur, they have occurred by the time the second command executes.
This could combined with the "{CMDACTIVE:}" token you were already using to form a waiting loop.
E.G.
Pause 0,1 seconds
Start Loop While : [{CMDACTIVE:Body scanned}] Equals '1'
End Loop
Say, 'System scan complete'
The pause would need to be long enough to allow both events to occur, but only the second command (I.E. "System scan complete") would need to wait like this.
Command queues execute commands in the order they were added (first in, first out), but that does rely on you being able to add them in that order.
You could replace the waiting loop with an enqueuing action, however that would require additional commands.
The queuing system would be most useful if you anticipate additional text-to-speech commands that may be triggered while these two are speaking in turn, so that you can queue the additional ones as well.
Otherwise using a waiting loop may be the simplest option.