diff --git a/app/models/CocoModel.coffee b/app/models/CocoModel.coffee
index 4345ae728..8091035d8 100644
--- a/app/models/CocoModel.coffee
+++ b/app/models/CocoModel.coffee
@@ -61,11 +61,11 @@ class CocoModel extends Backbone.Model
     else
       super(attribute)
 
-  set: ->
+  set: (attributes, options) ->
     delete @attributesWithDefaults
     inFlux = @loading or not @loaded
-    @markToRevert() unless inFlux or @_revertAttributes
-    res = super(arguments...)
+    @markToRevert() unless inFlux or @_revertAttributes or @project or options?.silent
+    res = super attributes, options
     @saveBackup() if @saveBackups and (not inFlux) and @hasLocalChanges()
     res
 
diff --git a/app/models/SuperModel.coffee b/app/models/SuperModel.coffee
index 07cafff46..930612edb 100644
--- a/app/models/SuperModel.coffee
+++ b/app/models/SuperModel.coffee
@@ -120,7 +120,7 @@ module.exports = class SuperModel extends Backbone.Model
       cachedModel = @getModelByURL(model.getURL())
       if cachedModel
         clone = $.extend true, {}, model.attributes
-        cachedModel.set(clone, {silent: true})
+        cachedModel.set(clone, {silent: true, fromMerge: true})
         console.debug "Updated cached model <#{cachedModel.get('name') or cachedModel.getURL()}> with new data"
       else
         @registerModel(model)