Otherwise anybody (with Developer status) can resolve discussion if he or she thinks the discussion has been resolved.
Who should trigger the final merge
Generally, the fastest and easiest way is for reviewer to trigger the merge after the review for simple merge requests, and the original submitter to trigger the merge for more complex merge requests (usually the ones reviewed by more people).
Is git push -f considered harmful?
We will use protected branches feature to prevent force pushing to branches that are public facing (like a version branches).
Other branches might be force pushed at convenience of the people that work on the feature branch. We are small team and we generally know who is cooperating on the branch, so we could just let each other know that you are planning rebasing (squashing, reordering commits, etc.) the branch and force pushing.
Do we delete branches after the final merge?
Yes, we do. With non-squashed merges, it doesn't add any (historical) value to keep the branches around, and gitlab can automatically delete the branch after the merge.