Migrate Duo Code Review prompt to AI Gateway (ReviewMergeRequest)
As discussed in https://gitlab.com/groups/gitlab-org/-/epics/14259#note_2081292282, we'd like to migrate the prompt to AIGW. See https://docs.gitlab.com/development/ai_features/actions/#how-to-migrate-an-existing-action-to-the-ai-gateway for more information on how to migrate a prompt to AIGW. Proposal: https://gitlab.com/gitlab-org/gitlab/-/issues/501321#note_2193541092 ## Implementation details Sketching a plan according to steps described in https://docs.gitlab.com/development/ai_features/actions/ - [x] Add your action to the Cloud Connector feature list: [Already exists](https://gitlab.com/gitlab-org/cloud-connector/gitlab-cloud-connector/-/blob/aacd4be0735dd8fea7b1a2443291e65b552ad92d/config/unit_primitives/review_merge_request.yml) - [x] Create a prompt definition in the AI gateway ([here](https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/tree/main/ai_gateway/prompts/definitions?ref_type=heads)) MR: https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/merge_requests/2465 - [x] Potentially combine Single file and Multi file prompts. - [x] Create Completions class under `ee/lib/gitlab/llm/ai_gateway/completions/`: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191007 - [x] Create service class: [Already exists](https://gitlab.com/gitlab-org/gitlab/-/blob/3b2fd089e98a76fc9051a7e6c804823b42d0ac1e/ee/app/services/llm/review_merge_request_service.rb) - [x] Modify AI feature in the catalogue. [Feature exists](https://gitlab.com/gitlab-org/gitlab/-/blob/3b2fd089e98a76fc9051a7e6c804823b42d0ac1e/ee/lib/gitlab/llm/utils/ai_features_catalogue.rb#L125) - [x] Add AIGW service class: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191007 - [x] Create `prompt_migration_review_merge_request` feature flag: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191007 - [x] Add a default prompt version query to `ee/lib/gitlab/llm/prompt_versions.rb`: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191007 ### Port missing gaps Port missing gaps between `Anthropic` and `AiGateway` classes. Known MRs: - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192342+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193145 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191057+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193131 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191895+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193002 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191437+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193005 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191453+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/193003 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191452+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192999 - [x] https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190978+ via https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192999 - [ ] ~~https://gitlab.com/gitlab-org/gitlab/-/merge_requests/190872+~~ no logs on Rails side
issue