Today their workflow starts with engineers picking a task in Linear. They create a PR branch or branch off of it and they work depending on requirements in the linear task. They pull up a PR, and if they are doing it before it's ready to review it goes to the draft, and when it's ready for review they put it into the ''ready for review'' state (AKA draft). They assigned their GitHub team to it and GitHub choose the right participant to review it. Internal tools notify engineers to do the review, once it's green, when they get the review, mergify takes control to automatically merge and deploy the PR.
They have this rule if something it's trivial with not many lines of code, they can put a label on this kind of PRs as “self-review”, and if all status checks pass in GitHub, Mergify merges in automatically & deploys. With this process, they encourage people to make smaller PRs.
If a merge conflict happens, Mergify automatically attaches a GitHub comment on the PR which the dev team sees in real-time.
After that, PRs go to the queue, pass status checks, get merged in and ArgoCD takes over to ship it to production, and production hot-fixes skip to the top of the queue to ship faster.