Hi Michal,
Well, you can work out what happened to the wall. You just need to provide a framework with which to make it work. And you have to be selective, and minimise what you do so you don't affect performance.
If you want to track geometry changes for a wall, set up an Element.GetChangeTypeGeometry updater. You could pre-add the existing geometry data (as ExtensibleStorage?) to the wall when it's created, and make a comparison of that data if the wall changes (and of course update the geometry ExtensibleStorage data on the wall when you're done, in preparation for the next change).
What are you actually trying to achieve?
-Matt