Refactor configuration handling and improve error management across services; normalize placeholder values for SMTP and Stripe configurations; enhance local storage fallback logic in StorageService; add tests for new behaviors and edge cases.

This commit is contained in:
Your Name
2026-03-26 14:15:10 +02:00
parent 688d411537
commit bc8a5dc290
19 changed files with 423 additions and 95 deletions

View File

@@ -9,7 +9,10 @@ from datetime import datetime, timezone
import requests
from flask import current_app
from app.services.openrouter_config_service import get_openrouter_settings
from app.services.openrouter_config_service import (
extract_openrouter_text,
get_openrouter_settings,
)
from app.services.ai_cost_service import AiBudgetExceededError, check_ai_budget, log_ai_usage
logger = logging.getLogger(__name__)
@@ -465,12 +468,7 @@ def _request_ai_reply(
response.raise_for_status()
data = response.json()
reply = (
data.get("choices", [{}])[0]
.get("message", {})
.get("content", "")
.strip()
)
reply = extract_openrouter_text(data)
if not reply:
raise RuntimeError("Assistant returned an empty reply.")
@@ -593,4 +591,4 @@ def _fallback_reply(message: str, tool_slug: str) -> str:
def _response_model_name() -> str:
settings = get_openrouter_settings()
return settings.model if settings.api_key else "fallback"
return settings.model if settings.api_key else "fallback"