How to know which batchPlay actions require executeAsModal? Is there any downside to executing ALL as modal?

If an operation flat-out required executeAsModal, I assume Photoshop would throw an error of some kind that would say: “Needs to be run via executeAsModal”? Is that correct?

Yes, for situations where executeIsModal is required the code will not work and you will get a warning in the console.

I would like to mention that it is useful to wrap code with executeAsModal if it is work intensive. This can ensure that the steps are executed faster and no other plugin or Photoshop can “interfere”. Here an example where executeAsModal helped me to run the operation faster even if it wasn’t required.