Any macro that uses conditions must be ...Stored in the Interface.
Be careful... This it not a true statement! We don't want to end up misleading others.I run 2 simultaneous CM15As; one is standalone (everything is stored in the interface) and the other is connected to a PC & AHP 24/7 and no macro or timer are stored in the interface (all run from PC). Neither of my units have ever had issues with macro conditions.
Now, having said that, I have no doubt about your issues and your fix. Unfortunately X10 has made many undocumented revision changes in their CM15A firmware (as well as so many other products), that what works for one person may not be the fix for an other. And because they choose to reinvent the windows software library for AHP, some issues are specific to the users PC & OS. I see differences using the same CM15A between my Win2K & XP machines.
When X10 makes changes, I don't think they put much concern in backwards compatibility, let alone tests. This of course makes being consistant with helping and documenting fixes near impossible to be applied to all. So your fix is a good suggestion to those experiencing the same problem, but we can't really generalize it as a fact that applies to all.