Unify logging when adjusting access level through BSO
This is part of https://gitlab.com/gitlab-org/gitlab/-/issues/572852+.
What does this MR do and why?
Refactors duplicate BSO (Block Seat Overages) logging code across self-managed SAML, LDAP, and SCIM implementations into the unified foundation module.
Each protocol had its own logging method with inconsistent formats. This creates a unified calculate_adjusted_access_level method in SeatAwareProvisioning that handles both seat availability logic and consistent logging across all protocols.
This prepares the foundation for implementing GitLab.com BSO support for SCIM and SAML to be started at https://gitlab.com/gitlab-org/gitlab/-/issues/572852.
References
- https://gitlab.com/gitlab-org/gitlab/-/issues/572852+
- https://gitlab.com/groups/gitlab-org/-/epics/19428+
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.