Ember children defined by a hasMany relationship suddenly change from array of IDs to an embedded model

I’ve cross-posted this question on StackOverflow with a 50 point bounty for anyone that can answer it! I’m about to give up on Ember because of this… :frowning:

I have the following model defined:

App.Post = DS.Model.extend({
  title: DS.attr('string'),
  comments: DS.hasMany('comment')
});

App.Comment = DS.Model.extend({
  message: DS.attr('string')
});

If I create a Post entry with a Comment, the JSON stored in my browsers local storage references the Comments as an array of IDs which works great:

...
"o3duh":{
    "id":"o3duh",
    "title":"How to write Ember",
    "comments":[
        "jf0a2"
    ]
}
...

However, the moment I add another Post, the JSON suddenly changes such that Comments are embedded:

...
"o3duh":{
    "id":"o3duh",
    "title":"How to write Ember",
    "comments":[
        {
            "message":"First!"
        }
    ]
},
"6kudl":{
    "id":"6kudl",
    "title":"Learning Ember is painful",
    "comments":[
    ]
}
...

Why is this happening? Can I prevent it? This is causing me problems because once it changes into this embedded format, the data cannot be read by the LSAdapter when reloading the page.

Here is a JSBin so you can see it happen for yourself and see the full JSON etc. To reproduce the problem, just create a post and add a comment then you can refresh the page without problem. Then add another post and try to refresh the page.

I’m not sure if the problem is with ember-data or the localstorage adapter.

Oh pretty please will someone help me? It doesn’t have to be the answer, just any suggestion will do! Is the problem with me or ember? Am I doing something in a non-standard way? Any advice on how I could figure out the solution for myself would suffice…