From 34a4228e78034676a16b5a0b3ebc6e375e2cc9cf Mon Sep 17 00:00:00 2001 From: OpenSquared Date: Sat, 18 Jul 2026 23:46:02 +0200 Subject: [PATCH] feat: strategy builder --- backend/routers/strategy_builder.py | 5 ++--- frontend/src/pages/StrategyBuilder.tsx | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/backend/routers/strategy_builder.py b/backend/routers/strategy_builder.py index 4549229..cb6c3c8 100644 --- a/backend/routers/strategy_builder.py +++ b/backend/routers/strategy_builder.py @@ -147,8 +147,6 @@ def optimize(req: OptimizeRequest): objective=req.constraints.objective, top_n=req.constraints.top_n, ) - except ValueError as e: - raise HTTPException(status_code=404, detail=str(e)) except Exception as e: import traceback from services.database import log_system_event @@ -158,7 +156,8 @@ def optimize(req: OptimizeRequest): message=f"Optimize failed for {req.scenario.symbol}: {e}", ticker=req.scenario.symbol, details={"error": str(e), "traceback": tb}, ) - raise HTTPException(status_code=500, detail=f"Erreur optimiseur: {e} (détail complet dans System Logs)") + status = 404 if isinstance(e, ValueError) else 500 + raise HTTPException(status_code=status, detail=f"{e}") return results diff --git a/frontend/src/pages/StrategyBuilder.tsx b/frontend/src/pages/StrategyBuilder.tsx index 57d3ac0..681a288 100644 --- a/frontend/src/pages/StrategyBuilder.tsx +++ b/frontend/src/pages/StrategyBuilder.tsx @@ -733,7 +733,7 @@ export default function StrategyBuilder() { {optimizeMutation.isError && (
- Erreur lors de l'optimisation. + {(optimizeMutation.error as any)?.response?.data?.detail ?? "Erreur lors de l'optimisation."}
)} {optimizeMutation.data && (