I can change the test to use e.set({id:'blah'}) instead of assigning directly to e.id. But that doesn't solve the issue for me when a model is added to a collection the id is set on the collection's _byId property and the current version of the collection get method uses this._byId[obj.id || obj.cid || obj[this._idAttr] || obj] so if the model id has change after the model was added to the collection, then the collection cannot get it.