Ng-repeat deep matching failure

Does anyone know why matching values in a child element will be failing?

I have an array that looks something like the following:
id:‘0’, name:‘Anne’, children:[{name:‘John’},{name:‘Paul’}]
id:‘1’, name:‘John’, children:[{name:‘Lisa’},{name:‘Peter’}]

With filtering bound to an input box, I expect a search for “John” to return both enteries, however in my current case, i am only getting back 1, which is where John is the parent name, ignoring matching the children.

I have tried to replicate this issue in codepen, but cannot seem to as I get the expected output. I am now wondering if there is anything is the form of a setting that may be wrongly configured on my end.

Any insight and guidance on this will be greatly appreciated.