diff --git a/backend/routers/insights.py b/backend/routers/insights.py index b325bf0..f624f35 100644 --- a/backend/routers/insights.py +++ b/backend/routers/insights.py @@ -294,10 +294,9 @@ async def analyze_with_prompt(slug: str, x_profile_id: Optional[str]=Header(defa else: raise HTTPException(500, "Keine KI-API konfiguriert") - # Save insight + # Save insight (with history - no DELETE) with get_db() as conn: cur = get_cursor(conn) - cur.execute("DELETE FROM ai_insights WHERE profile_id=%s AND scope=%s", (pid, slug)) cur.execute("INSERT INTO ai_insights (id, profile_id, scope, content, created) VALUES (%s,%s,%s,%s,CURRENT_TIMESTAMP)", (str(uuid.uuid4()), pid, slug, content)) @@ -431,15 +430,14 @@ async def analyze_pipeline(x_profile_id: Optional[str]=Header(default=None), ses if goals_text: final_content += "\n\n" + goals_text - # Save as 'gesamt' scope + # Save as 'pipeline' scope (with history - no DELETE) with get_db() as conn: cur = get_cursor(conn) - cur.execute("DELETE FROM ai_insights WHERE profile_id=%s AND scope='gesamt'", (pid,)) - cur.execute("INSERT INTO ai_insights (id, profile_id, scope, content, created) VALUES (%s,%s,'gesamt',%s,CURRENT_TIMESTAMP)", + cur.execute("INSERT INTO ai_insights (id, profile_id, scope, content, created) VALUES (%s,%s,'pipeline',%s,CURRENT_TIMESTAMP)", (str(uuid.uuid4()), pid, final_content)) inc_ai_usage(pid) - return {"scope": "gesamt", "content": final_content, "stage1": stage1_results} + return {"scope": "pipeline", "content": final_content, "stage1": stage1_results} @router.get("/ai/usage") diff --git a/frontend/src/pages/Analysis.jsx b/frontend/src/pages/Analysis.jsx index 630bc1b..128b34f 100644 --- a/frontend/src/pages/Analysis.jsx +++ b/frontend/src/pages/Analysis.jsx @@ -177,7 +177,7 @@ export default function Analysis() { grouped[key].push(ins) }) - const activePrompts = prompts.filter(p=>p.active && !p.slug.startsWith('pipeline_')) + const activePrompts = prompts.filter(p=>p.active && !p.slug.startsWith('pipeline_') && p.slug !== 'pipeline') // Pipeline is available if the "pipeline" prompt is active const pipelinePrompt = prompts.find(p=>p.slug==='pipeline')