Loading
Credit caps bulk update - BE integration
What does this MR do and why?
Wires the bulk update cap overrides modal to the upsertUserBudgetCapOverrides GraphQL mutation so that parsed CSV overrides are persisted via the API rather than only displayed as JSON.
Implementation status
Part of https://gitlab.com/gitlab-org/gitlab/-/work_items/630981
| Piece | Work item | MR | Status |
|---|---|---|---|
Feature flag credit_caps_bulk_update + scaffold button |
https://gitlab.com/gitlab-org/gitlab/-/work_items/630982 | !257651 (merged) | |
BE: username on BudgetCapUserOverrideInput |
https://gitlab.com/gitlab-org/gitlab/-/work_items/630983 | !258407 (merged) | |
| FE: bulk update overrides modal | https://gitlab.com/gitlab-org/gitlab/-/work_items/630982 | !257948 (merged) | |
| FE: CSV parser | https://gitlab.com/gitlab-org/gitlab/-/work_items/630984 | !258244 (merged) | |
| FE: integrate modal with BE | https://gitlab.com/gitlab-org/gitlab/-/work_items/630985 | !258465 (merged) | |
| FE: CSV parser improvements (follow-up) | https://gitlab.com/gitlab-org/gitlab/-/work_items/631895 | !259381 (merged) | |
| Documentation update | https://gitlab.com/gitlab-org/gitlab/-/work_items/632125 | !259654 (merged) | |
| Feature flag rollout | https://gitlab.com/gitlab-org/gitlab/-/work_items/631018 |
References
- https://gitlab.com/gitlab-org/gitlab/-/work_items/630985+
- PoC: !257323 (closed)
- Parsing MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/TBD
Screenshots or screen recordings
| Before | After |
|---|---|
| N/A | |
| N/A |
How to set up and validate locally
- Enable the feature flag:
Feature.enable(:credit_caps_bulk_update) - Navigate to the GitLab Credits Dashboard admin page.
- Click Bulk update — the modal opens.
- Paste a valid CSV (one entry per line:
username,cap,enabled):alice,100,true bob,50,false - Click Save overrides — a success toast appears and the list refreshes.
- Try pasting non-existent names or blocking network to see errors handling
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.
Edited by Kos Palchyk