I inadvertently set scope=user-read-private for my application and found out that it is still possible to create playlists and add tracks to them. I would have expected a 'not authorised' response.
There are 2 scopes which I would have expected to control this access playlist-modify-public playlist-modify-private
They do not appear to be redundant.
Has anyone else able to confirm this behaviour?
Edit: It appears that the scope that you request for the application is only checked to be a part of the existing total scope already requested for the application. If you reduce the requested scope it does not reduce the total scope and thus pre-exiting parts are still present.