I don't have a great understanding of to what extent callers of this function are expecting the results to be uniform and structured (the function did used to be called execute_run_with_structured_logs), but getting errors surfaced here would be extremely useful fro debugging, so putting this out to see if it's crazy.
The corresponding execute_step function does not seem to swallow exceptions, FWIW.