You don't have to wait for CI, just create a new branch and continue your work as though CI passed, and your PR was accepted. If that comes true you don't need to worry much, just rebase and continue.
On the other hand if you find out you needed to make changes - do those on the branch you made those changes, and finish your PR/CI cycle. Then go to the new branch you continued work on and rebase, and continue.
Is there something I am missing?
People get so caught up in their daily coding they forget about all the other fun coding they could be doing outside of work.
It's a shame.
Obviously it's a moot point for you now, but getting comfortable with how git remotes works is something that could pay dividends for you in the future.
Also, the additional effort to manage multiple remotes is entirely nontrivial.
Here is one of the top hits searching "git email patch"
https://thoughtbot.com/blog/send-a-patch-to-someone-using-gi...
As another alternative, git-format-patch/git-apply or git-bundle may be a quicker way of shipping changes around.
2. Send a branch in whatever file exchange service you use. (Also formatted as patch series)
3. Setup ad-hoc vpn (zerotier?) and setup remote via SSH.
4. Push the branch into a private repository on a different service (private gitlab?)
5. Spin up a free t2.micro on AWS and push the branch there.
There are lots of options.
If you need access control without VPNs or whatnot (or if you simply want something closer to the github workflow), there are other services similar to github that can almost certainly provide what you need, such as gitlab.
> "Also, the additional effort to manage multiple remotes is entirely nontrivial."
With practice, I'd say it asymptotically approaches trivial.