Add fake llm provider

Change-Id: I7983796013f27e146506a42c8238b69a1838f1d9
diff --git a/server/llm/utils.go b/server/llm/utils.go
index 59064b3..7381364 100644
--- a/server/llm/utils.go
+++ b/server/llm/utils.go
@@ -19,7 +19,8 @@
 
 // ValidateConfig validates a configuration for an LLM provider
 func ValidateConfig(config Config) error {
-	if config.APIKey == "" {
+	// Fake provider doesn't need API key
+	if config.Provider != ProviderFake && config.APIKey == "" {
 		return ErrAPIKeyRequired
 	}
 
@@ -41,7 +42,7 @@
 // IsValidProvider checks if a provider is supported
 func IsValidProvider(provider Provider) bool {
 	switch provider {
-	case ProviderOpenAI, ProviderXAI, ProviderClaude, ProviderGemini, ProviderLocal:
+	case ProviderOpenAI, ProviderXAI, ProviderClaude, ProviderGemini, ProviderLocal, ProviderFake:
 		return true
 	default:
 		return false
@@ -197,6 +198,8 @@
 		return "Gemini (Google)"
 	case ProviderLocal:
 		return "Local"
+	case ProviderFake:
+		return "Fake (Testing)"
 	default:
 		return string(provider)
 	}