Do not mark MR as temporarily unapproved if approval is optional
Background
In !136454 (comment 1649258159), it was reported that if approval is optional on a MR, the approval merge check can fail for ~10s then pass after the MR is unmarked as temporarily unapproved. This feature is still behind a feature flag.
If the feature flag is disabled, the merge widget will be showing the "Checking if merge request can be merged…" state until the MR is unmarked as temporarily unapproved.
Proposal
See #431984 (comment 1650945382).
Add an additional check to https://gitlab.com/gitlab-org/gitlab/-/blob/92a1fea2c3e168a5b5b32ea8ef4dd52931cd62c6/ee/app/services/ee/merge_requests/refresh_service.rb#L82 to check if merge_request.approval_needed?
. If approval is needed and the rest of the conditions return true, we mark the MR as temporarily unapproved. If not, then we don't mark it.