The 'undo' buffer can get quite large, as it's just saving the raw image data prior to overpainting it. And it'll keep going for as long as you have the disk space to spare.
It would be far better if we kept a 'script' of every tool you used, and every mouse event while you were using it. The file would then be very small, and you would be able to 'play back' exactly the painting.
Scripting support is something that's on our whiteboard to look at, but it might have to wait for a 'professional' version of ArtRage.
AndyRage's mantra for graphics engine code:
"Sure - how hard can it be?"