feat: implement AI product analysis endpoint using OpenRouter with optimized timeout handling and N+1 query prevention.

This commit is contained in:
Michael committed 2026-02-27 10:36:34 +01:00
1 parent 51a30b26e4
commit 02fdd18a52
3 files changed
+10 -21

No files matched your search

@@ -12,10 +12,10 @@ export class OpenRouterClient {
constructor(private config: OpenRouterConfig) { }
async analyzeProduct(p: ProductAnalysisInput): Promise<AnalysisResult> {
// Timeout de 25 secondes : évite le blocage indéfini si OpenRouter est lent.
// On préfère un échec propre avec message d'erreur plutôt qu'un timeout navigateur.
// Timeout de 50 secondes : évite le blocage indéfini si OpenRouter est lent,
// tout en laissant assez de temps aux modèles complexes pour répondre (maxDuration serveur = 55s).
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), 25_000);
const timeoutId = setTimeout(() => controller.abort(), 50_000);
let response: Response;
try {