Thread:Talk:ResourceLoader/Version 2 Design Specification/Task management/Revision vs. Logging

The proposal so far plans to have a  table in which the current state of things is stored. There is no history and it's not on a wiki page, but in the database. This gives many advantages (hence we choose it). However, all actions are logged.

The down side to this:
 * 1) Either we get very long log messages or some info will simply not be retrievable from the past
 * 2) Hard to revert/undo
 * 3) Impossible to add to watchlist or show a diff

On the other hand, it's not a whole lot different from any of these:
 * Block
 * Delete
 * Protect
 * Patrol
 * Rollback
 * Move

All of these only leave a log-entry with details but not descriptive revision that is revertable or diff-able (they do leave null-revisions in some cases). Although these may not justify a lack, it may be worth considering to just keep the plan the way it was (eg. not creating  + all the complications.

What do you think: Current-state table with logging ? Or revisioned ? Something else ?