fix(admin): secure routes, add real IP detection, SMTP header validation, and fix Next.js layout hydration mismatch
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 2m5s

This commit is contained in:
2026-06-01 23:16:03 +02:00
parent 6d27dc4cda
commit 6da8a85b1d
10 changed files with 1165 additions and 96 deletions

View File

@@ -42,6 +42,7 @@ from pydantic import BaseModel, Field, field_validator
from typing_extensions import Annotated
from config import config
from translators import ExcelTranslator, WordTranslator, PowerPointTranslator
from models.subscription import PlanType
from middleware.tier_quota import tier_quota_service
from services.auth_service import record_usage
@@ -978,7 +979,6 @@ async def _run_translation_job(
)
output_path = config.OUTPUT_DIR / output_filename
from translators import ExcelTranslator, WordTranslator, PowerPointTranslator
from services.translation_service import (
OpenRouterTranslationProvider,
OllamaTranslationProvider,
@@ -1192,6 +1192,7 @@ async def _run_translation_job(
# One translator instance per job so concurrent jobs never share mutable
# provider state (singleton set_provider was racy under parallel translations).
if file_extension == ".xlsx":
logger.info(f"DEBUG: ExcelTranslator class is {ExcelTranslator} and translate_file is {ExcelTranslator.translate_file}")
job_translator = ExcelTranslator(provider=translation_provider)
await asyncio.to_thread(
job_translator.translate_file,