Initially I was thinking of this for layout changes; you delete a widget accidentally or save over a bookmark by mistake (all pilot errors), or you are simply experimenting with a specific layout. In traditional html tools you might save a version or the tool will generally have undo history. Making small layout changes are a one way process in Lablz unless you keep a copy set of bookmarks; there's no going back.
You might think of other uses for undo or rollback.
This is possible, but pretty hard. We had such co>>
This is possible, but pretty hard. We had such code in the past when we used MySQL's non-transactional engine. This code was producing the compensating SQL statements which would effectively roll back the transaction after it was committed by the database. But since then lablz became a lot more sophisticated. One change can ripple through many parent resources to update sums and counts and execute any custom formulas. So, compensating transactions will need to be equally more sophisticated. No go at this point until some customer makes it a hard requirement.