Refactor ai_request in slash command tools
What does this MR do and why?
In the first iteration, slash command tools were parts of chat, with the same add-on tier applied.
New additions to chat, such as "explain vulnerability" or "troubleshoot_job" are on different add-on tier, which requires to explicitly define service name for AI gateway request class. It's easy to forget about this explicit part (as it happened once), so now in classes inheriting from SlashCommandTool
it is required to define ai_request
method to avoid the same mistake.
This MR should not change behaviour of any of the current features.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Before | After |
---|---|
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.