I guess just so anyone else with a similar knows there is a solution (or at least the glimmerings of one), I'll do a formal answer here. Seeing how php doesn't speak json natively, it can produce questionably-formed json that angular can't parse. To make sure the issue isn't (or is) the json, bypass the php and spoof the json.
To spoof an api, create a new controller and insert the expected json into the scope.
app.controller('NoteCtrl', function($scope) {
$scope.allNotes = [{
"Note": {
"id": "1",
"clas": "test",
"obj_id": null,
"note": "test"
}
}];
});
Replace any reference to the api/json with this new scope, ie change
var notes = $resource('/index.php/notes/:id.json');
to:
var notes = $scope.allNotes;
...and then test. If things go right, then it's not your angular nor your json, it's probably your php. That'll at least narrow things down on the list o' troubleshooting ideas.