Description
I have a model with a cloudDrive status fragment that in turn has two more fragments. called context and failure.
Over a webstomp connection I receive updates to my models via store.pushPayload(payload)
. The model correctly updates except if it does not exists in the store. When it does exist in the store all properties are correctly updated except for the nested fragments... (note the state property is correctly updated.
"status" : {
"state": "checked-out",
"context": {
"adapter": "dropbox",
"identity_id": "xxx-xxx-xxx-xxx-xxx",
"order_number": "2.4",
"order_status": "cad",
"checkout_time": "2020-08-19T11:51:26.000Z"
},
"failure": {
"message_code": null,
"message": null,
"details": []
}
}
So. a button instructs the backend to perform a 'check-in'... This might fail due to some reason and the whole model is transmitted via webstomp as a json API payload. Pushing that payload does not update the failure fragment.
Any ideas where to look/debug. I have confirmed the received payload is correct.
"data": {
"type": "dossier/order",
"id": "xxx-xxx-xxx-xxx-xxx",
"attributes": {
// redacted
"cloud-drive": {
"state": "checked-out",
"context": {
"checkout_time": "2020-08-19T11:51:26+00:00",
"identity_id": "xxx-xxx-xxx-xxx-xxx",
"adapter": "dropbox",
"order_status": "cad",
"order_number": "2.4"
},
"failure": {
"message_code": "dossier.checkInFailure.noMutationsDetected",
"message": "No changes where detected. Has the cloud drive been fully synchronized?",
"details": []
}
}
},
}
}