You should use either full copy/partial copy sandboxes for User Training.
Full Copy - Costly in terms of licenses but no need to worry of Data, as all your data will be in sync with production with frequent refresh.
Partial Copy - Cheaper than full copy but you need to define certain steps to feed important data only which is used frequently by the users ...
So far, I couldn't find an explanation regarding why the Messaging method is not working as expected when scheduled with an autoflow.
However, I found a workaround.
I've changed the schedule and made it through APEX and the Schedule APEX Class UI in Salesforce and now it is working as expected.
In case someone arrives to this question looking for an answer, ...
You should go for DevOps process to keep two or more sandboxes in sync.
Use sfdx to retrieve complete metadata.
Have a version control tool like BitBucket/Source tree to compare and merge the differences.
With Integration tool like Jenkins, run build which will take care of test class coverage also.
Deploy the changes via ANT.
There are many other tools ...
You could use a vendor product like Gearset which can run Continuous Integration between a source sandbox and a target sandbox (in addition to also working with source control if you desire)
Details on the Gearset CI feature are here. You can choose which metadata types you want to keep in sync as the source sandbox changes.
N.B. I am not an employee of ...
Presumably, it would be a 503 Service Not Available error, not a 500 Internal Server Error code. Regardless, I think it would be safe to say that one should be parsing the resulting JSON/XML response for an errorCode of INSERT_UPDATE_DELETE_NOT_ALLOWED_DURING_MAINTENANCE rather than relying on a status code. I would expect to see a code in the 5xx range, ...