These are large existing code-bases that where developed without federation in mind. Gitlab also started working on AP federation, but like with Forgejo it looks like a multi-year project that it involves a lot of refactoring of the code.
Well, I mean, it's been like that from the beginning. You don't open a pull request to the Linux kernel through a web UI, you tell git to send Linus an email with your changes.