anchor.diff:      }
   
       _subscriptions.add(collection.onChangeSync.listen((event) {
  -      if (event["author"] == null) {
  +      if (event["author"] != 'clean_sync') {
           event["change"].addedItems.forEach((data) {
             Future result = _connection.send(() => new ClientRequest("sync", {
               "action" : "add",
  
positive.code:   target.length = source.length;
    for (num i=0; i<target.length; i++) {
      if (!applyChange(source[i], target[i], author)) {
        // TODO add set method to DataList and use it here
        target.setAll(i, [source[i]], author: author);
      }
    }
  }
  
negative.code:   var version = subscription._version;
  
    diff.forEach((Map change) {
      // it can happen, that we get too old changes
      if (!change.containsKey('version')){
        logger.warning('change does not contain "version" field. If not testing, '
                       'this is probably bug. (change: $change)');
  