I'm been playing with ember.js off and on the last few months and always end up asking "what role does the controller play" because it usually looks something like this when I'm done
App.Controller = Ember.Controller.extend({
content: null
});
If I have any basic validation requirements I tend to do these in the view itself.
If I need to populate a controllers content I do this in the router (though I'd prefer to reduce the # of responsibilities this object seems to have in the current version of ember).
My models are persisted using a separate adapter via ember-data with some domain logic like behavior when needed.
What I'm left with in every app I've built is a thin (very very logic less) controller as shown above. I do find this is a good place to do sorting / pagination / search / filter / etc on the items but what else should this controller object be responsible for in a well design ember.js app?