Patent attributes
A device may participate in a shared data state in which editing operations performed locally are distributed and synchronized with other devices participating in the shared data state. Data may be maintained in log-structured storage files on each device. Changes made locally may be conditionally appended to log-structured storage and committed or rolled back during synchronization. Devices may exchange sets of related change descriptors preceded by associated contextual information. Conflicts may be resolved through application of conflict resolution rules or through a user-involved process. User notification of conflict resolution may be based on user intent inferred from contextual information and associated change descriptors.