> Does the "required status check" thing apply to `git push`, or just to the merge button on the website?
It applies to all ways of updating git: push, the web UI, merging, and the API.
> how do you trigger a status check to run on your actual merge/rebase as made in your local client, which will almost certainly differ in SHA1 and may differ in content from the merge made in the PR?
If they differ in SHA1 but not content, things will work fine. A protected branch cannot be updated to a git tree that has not been tested.
If your PR differs in content, clicking the 'update branch' button on a PR will make the merge commit and your PR's content the same, so a new CI run will apply to the correct content.