Problem: Severe code duplication across the 9 AI provider plugins (estimated 15k+ lines of near-identical code differing only in class names and provider adapters).
Impact: Maintenance nightmare, high risk of inconsistent fixes, harder onboarding.
Recommendation: Extract shared base classes into ai/core or ai/common:
- BaseAIClient
- BaseCompletionProvider
- BaseChatTopComponent
- BaseOptionsPanelController
Priority: High
Problem: Severe code duplication across the 9 AI provider plugins (estimated 15k+ lines of near-identical code differing only in class names and provider adapters).
Impact: Maintenance nightmare, high risk of inconsistent fixes, harder onboarding.
Recommendation: Extract shared base classes into ai/core or ai/common:
Priority: High