The broadcast command is unlike other commands in that it is performed entirely at command queue time (broadcasts aren't queued to be processed later). It's also implemented outside of cylc.flow.commands for historical reasons.
Suggest moving the broadcast code into cylc.flow.commands (so it runs like a normal command) as this will give it the same error handling as other commands. But keep it all queue-time. Doing this should also forward the error to the client.
If you try to broadcast an invalid configuration on the CLI, you get a helpful error:
However, if you try to broadcast an invalid configuration from the GUI, you get no error, and a cryptic message in the log:
The broadcast command is unlike other commands in that it is performed entirely at command queue time (broadcasts aren't queued to be processed later). It's also implemented outside of
cylc.flow.commands
for historical reasons.Suggest moving the broadcast code into
cylc.flow.commands
(so it runs like a normal command) as this will give it the same error handling as other commands. But keep it all queue-time. Doing this should also forward the error to the client.