I see this as a 2-step check.
Step 1 checks that a correctly formatted copyright notice is applied to ALL source files. It does not check the particular end year.
Step 2 checks that all files changed in a particular PR or branch are updated to the current end year.
This is separated into 2 steps so that it does not cause overwhelming PRs that must touch every file every year, and because the copyright dates should cover when the files were written, so do not need to be updated if the file has not been modified.
I see this as a 2-step check.
Step 1 checks that a correctly formatted copyright notice is applied to ALL source files. It does not check the particular end year.
Step 2 checks that all files changed in a particular PR or branch are updated to the current end year.
This is separated into 2 steps so that it does not cause overwhelming PRs that must touch every file every year, and because the copyright dates should cover when the files were written, so do not need to be updated if the file has not been modified.