So after some looking into the code it seems like the problem is with
this chunk of code, lines 239-247 of can/model/model.js:
- var id = attributes[this.id],
- // 0 is a valid ID.
- model = (id || id === 0) && this.store[id] ?
- // If this model is in the store already, just update it.
- this.store[id].attr(attributes, this.removeAttr || false) :
- // Otherwise, we need a new model.
- new this(attributes);
-
- return model;
The problem is that because the attendees attribute has been
shortened by one, line 5 will not change this attribute, it only gets
updated when its increased in length, this is confirmed by adding
attendees directly into the databse then making the findone call, the
atendees is then correct. This seems like a bug