Add safeguards for aiModelSelectionNamespaceUpdate mutation

What does this MR do and why?

This MR updates aiModelSelectionNamespaceUpdate mutation to:

  • Reject duplicate features entries.
  • Skip persistence and audit events when a selection is unchanged.
  • Fetch the model catalog once per request and reuse it for the update and response.
  • Apply a per-user limit of 30 requests per minute behind the ai_model_selection_namespace_update_rate_limit feature flag, disabled by default.

Out of scope for this MR: The self-managed, admin AiFeatureSettingUpdate mutation is not changed here. It will be handled separately in a follow-up MR.

References

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.


🤖 Co-Authored-By: Claude Fable 5.1 on behalf of @julie_huang

Edited by Julie Huang

Merge request reports

Loading
Loading