In our workflow, we have multiple protected branches (dev branches for different teams for different modules) that requires reviews and checks to be green. The features then merged to master, that is of course protected (and reviewed again by someone responsible for integration). In this scheme you need to merge back from master from time to time, but as master contains reviewed and checked code, it is bothersome to review the code again.
So, I think a feature like defining exceptions based on source branches would be nice.
Thanks for this feedback! We're always working to improve GitHub and the GitHub Community Forum, and we consider every suggestion we receive. I've logged your feature request in our internal feature request list. Though I can't guarantee anything or share a timeline for this, I can tell you that it's been shared with the appropriate teams for consideration.