Refactor summarize diff feature to use abstraction layer
What does this MR do and why?
This copies the logic in MergeRequests::Llm::SumamrizeMergeRequestWorker
and Llm::MergeRequests::SummarizeDiffService
to several classes
following the AI feature abstraction layer.
Old classes are marked as deprecated and will be removed later on.
This is behind summarize_diff_abstraction_layer
feature flag.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #417113 (closed)