This jsfiddle, reproduces the issue I'm seeing in my website that uses the relational data layer of EnyoJS 2.5:
I have two collections (in the example "books" and "authors") that have a relation ("books.author" -> "authors"). I then attach an on-any-event-handler on the books collection: this.$.books.on("*", ...)
While this handler triggers on normal attribute's changes (e.g. the "title"), it does not trigger on a change of the relation's key (the "author").
Thanks for reporting this. Looking at your fiddle, I noticed and made 2 minor changes and got it working (according to what I think you wanted it to do). Check out http://jsfiddle.net/0yzn1t0L/3/. I changed the kind of model of Auther to enyo.RelationalModel, and set the isOwner flag of the relation to true. This causes the relation to receive changes generated from the relationship. Hope that helps!
Thanks, Cole, for pointing me to my error - I didn't realize that both ends of the relation have to be RelationalModels, and wasn't aware of isOwner and its relevance here. Sorry for the noise!