diff --git a/src/app/api/ai/analyze/route.ts b/src/app/api/ai/analyze/route.ts index ba79bd3..fa752aa 100644 --- a/src/app/api/ai/analyze/route.ts +++ b/src/app/api/ai/analyze/route.ts @@ -19,14 +19,18 @@ Ta réponse doit être en 1-2 phrases maximum, en français, directe et actionna Format: "[Recommandation]: [Justification courte basée sur les données]"`; export async function POST(req: NextRequest) { + console.log("[AI] Analysis request received."); const config = await getSavedDatabaseConfig(); const apiKey = process.env.OPENROUTER_API_KEY || config?.openRouterKey; const model = config?.openRouterModel || "google/gemini-flash-1.5"; if (!apiKey) { + console.error("[AI] OPENROUTER_API_KEY is missing (neither in env nor in config file)."); return NextResponse.json({ error: "OPENROUTER_API_KEY not configured. Please set it in Settings." }, { status: 503 }); } + console.log(`[AI] Using model: ${model} with API key starting with ${apiKey.substring(0, 10)}...`); + const body = await req.json(); const parsed = AnalyzeSchema.safeParse(body); if (!parsed.success) { diff --git a/src/features/settings/actions.ts b/src/features/settings/actions.ts index e2de9e3..012d829 100644 --- a/src/features/settings/actions.ts +++ b/src/features/settings/actions.ts @@ -41,8 +41,9 @@ export async function saveDatabaseSettings(url: string, openRouterKey?: string, // S'assurer que le dossier data existe await fs.mkdir(DATA_DIR, { recursive: true }); + console.log(`[Settings] Saving config to ${CONFIG_FILE}`); await fs.writeFile(CONFIG_FILE, JSON.stringify(config, null, 2)); - console.log("Database configuration saved to:", CONFIG_FILE); + console.log("[Settings] Database configuration saved successfully."); // Refresh the shared DB instance immediately const { refreshDb } = await import("@/db"); @@ -58,9 +59,14 @@ export async function saveDatabaseSettings(url: string, openRouterKey?: string, export async function getSavedDatabaseConfig(): Promise { try { + if (!(await fs.stat(CONFIG_FILE).catch(() => null))) { + console.log(`[Settings] Config file not found at ${CONFIG_FILE}`); + return null; + } const data = await fs.readFile(CONFIG_FILE, "utf-8"); return JSON.parse(data); - } catch { + } catch (error) { + console.error(`[Settings] Error reading config from ${CONFIG_FILE}:`, error); return null; } }