If mega evolved outside of battle and you entered a battle? let's say you encountered a wild pokemon, I think it wouldn't hurt or do much damage to the system if your mega (you interacted with the stone outside battle) does not have to turn back to normal. But in player versus player battles your mega shall be back to normal again for the sake of having more options as some players have two pokemons with megastones. It definitely can be hard but I think before this should be implemented we should fix the original sizes of pokemons, example is that a gyarados following you is big compared to dragonite which is small, that would be the first step first.