Prerequisite for T637.
Record changes on the server instead of each resource. This would mean some limitations (like single recorder-per-resource), no recorder for applications (we have no way to uniquely and persistently identify them, not even talking about multiple instances of the same application) - but nothing major that would require major effort from application/resource side.
Server understands the change better than client, so it can store better information about the change in a more effective way. The changes can be stored even when the resource is not running, the resource then only requests the changes on start.