From 6f85fee1da447bc3c140b61a47600409cf533c34 Mon Sep 17 00:00:00 2001 From: mindesbunister Date: Mon, 17 Nov 2025 16:47:07 +0100 Subject: [PATCH] critical: Fix test endpoint violating database-first pattern (Common Pitfall #29) - Moved positionManager.addTrade() to AFTER database save succeeds - Changed database error handling to return HTTP 500 (not silent fail) - Test endpoint now enforces same pattern as execute endpoint - Prevents untracked positions when database save fails - Root cause of trade manual-1763391075992 compounding to -19.43 Before: Test endpoint added to Position Manager first, saved to DB after After: Test endpoint saves to DB first, only adds to PM if DB succeeds Impact: No more untracked positions from test trades with failed DB saves --- app/api/trading/test/route.ts | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/app/api/trading/test/route.ts b/app/api/trading/test/route.ts index f230773..7ef0ba6 100644 --- a/app/api/trading/test/route.ts +++ b/app/api/trading/test/route.ts @@ -243,13 +243,7 @@ export async function POST(request: NextRequest): Promise