When listing an artist's albums under "Album Artists -> Artist" I see all albums the artist has appeared on, not just those where they are the "Album Artist". LMS has a setting "Filter Contributor Roles at the Album & Track Level" which I have set to "Only Show Tracks Or Albums Matching The Selected Role For An Artist" But this seems to have no effect, in Default UI or Material.

The following 2 commands return the same items:
Code:
curl 'http://localhost:9000/jsonrpc.js' --data-binary '{"id":0,"method":"slim.request","params":["", ["albums", 0, 10, "artist_id:12394", "role_id:ALBUMARTIST"]]}'
curl 'http://localhost:9000/jsonrpc.js' --data-binary '{"id":0,"method":"slim.request","params":["", ["albums", 0, 10, "artist_id:12394"]]}'
Is the above correct, or a bug? I can work around it, for album listings, using the following:
Code:
curl 'http://localhost:9000/jsonrpc.js' --data-binary '{"id":0,"method":"slim.request","params":["", ["albums", 0, 10, "artist_id:12394", "role_id:ALBUMARTIST", "compilation:0"]]}'
But "compilation:0" does not seem to work when using add/play-all - e.g. The following add's all albums as if "compilation:0" was not set:
Code:
curl 'http://localhost:9000/jsonrpc.js' --data-binary '{"id":0,"method":"slim.request","params":["01:02:03:04:05:06",["playlistcontrol", "cmd:add", "artist_id:12394", "role_id:ALBUMARTIST", "sort:yearalbum", "library_id:0", "compilation:0"]]}'
"compilation:[0|1]" is not listed in the documentation for "playlistcontrol", so the behaviour of the above command appears to be correct as per the documentation.

I only ask as, in Material at least, I would like to only list (and add/play-all) albums by an Artist - not all albums they appear on. Now I know this might not be what others want, so I'd make it configurable. As I see it there's 2 options:

1. The "Filter Contributor Roles at the Album & Track Level" setting is broken, and it should only list the albums by an artist
2. Extend "playlistcontrol cmd:add" to also honour the "compilations:0" parameter

I'm willing to look into this, and create a pull request. But I wanted to know which was the correct approach?