The fact that Alexa says it sent the commands indicates to me a network issue. Alexa may have sent the commands they just may not have reached yor devices due to any number of issues.
I have a light at my off grid place that sometimes failed to come on however if I issue 2 on commands in a routine it always works
You don't say what brand smart devices are that sometimes fail in routines.
All different brands fail often. I have an Nvidia Shield that actually works when I ask Alexa to turn it on, but five seconds later says "Sorry, Shield is not responding." This happens 100% of the time. Other devices are a Midea air conditioner, sometimes Alexa will say "I don't know how to do that", then giving same command one second later will perform the command. A number of appliances are connected via various outlet devices. My network is very solid. Cat6 cable throughout, have 1 Gbps Internet with 50 mbps upload.
It's been flaky for many years. Will also randomly turn on my TV even though there are no routines to do this. The reason I have begun to add redundant commands a minute or two apart is due to its inconsistency. When I had named my window AC unit "A.C." and my thermostat was "Thermostat", asking Alexa to turn on the "A.C." resulted in it trying to turn on the thermostat.