I am working on a monolith codebase with multiple teams working on different folders/packages within the same codebase.
Now if you are working on a feature branch/fix branch you will first merge it into the test branch and then staging and then to live. This happens only when you are approved of course.
But the problem is if 2 teams are working on 2 different features and are deployed to staging already and one team is test ok on staging and the other is not ok, it's hard to deploy to live.
Right now the principle is staging is like live, you are always deployment ready in staging.
Is there any other good approach to this problem?