Suggestion
I think you could enable the exiting CI steps (build, test, coverage) for all branches since these informations could be interesting for all branches.
Also these steps could be combined in one workflow with multiple jobs.
Only deployment steps could be limited to main branches or finished PRs.
Greetings,
Flo 👋🏻