import { NextResponse } from 'next/server' // PAPER_TRADING_ONLY: This API is completely isolated from live trading // ISOLATED_MODE: No real trading connections or automation triggers allowed // SAFETY: This API cannot execute real trades or trigger automation systems export async function POST(request) { try { console.log('šŸ›”ļø SAFE PAPER TRADING API: Starting REAL analysis (paper trading only)...') const body = await request.json() const { symbol = 'SOLUSD', timeframe = '60', mode, paperTrading, isolatedMode } = body // SAFETY CHECK: Ensure this is paper trading only if (mode !== 'PAPER_ONLY' || !paperTrading || !isolatedMode) { return NextResponse.json({ success: false, error: 'SAFETY VIOLATION: This API only supports isolated paper trading', safetyBlock: true }, { status: 403 }) } console.log(`šŸ“Š Getting REAL market analysis for ${symbol} ${timeframe}m (paper trading only)...`) // STEP 1: Capture real market screenshots const { EnhancedScreenshotService } = await import('../../../lib/enhanced-screenshot') const screenshotService = new EnhancedScreenshotService() console.log('šŸ”„ Capturing real market screenshots...') const screenshots = await screenshotService.captureWithLogin({ symbol, timeframe, layouts: ['ai', 'diy'], sessionId: `paper_${Date.now()}_${Math.random().toString(36).substr(2, 9)}` }) if (!screenshots || screenshots.length === 0) { throw new Error('Failed to capture market screenshots') } console.log(`āœ… Captured ${screenshots.length} real market screenshots`) // STEP 2: Analyze screenshots with AI const { aiAnalysisService } = await import('../../../lib/ai-analysis') console.log('šŸ¤– Analyzing screenshots with AI...') let analysis if (screenshots.length === 1) { analysis = await aiAnalysisService.analyzeScreenshot(screenshots[0]) } else { analysis = await aiAnalysisService.analyzeMultipleScreenshots(screenshots) } if (!analysis) { throw new Error('Failed to get real market analysis') } console.log('āœ… Real market analysis complete - REAL DATA, NO TRADING RISK') return NextResponse.json({ success: true, analysis: { ...analysis, // Override safety flags for paper trading paperTrading: true, isolated: true, noRealTrading: true, realData: true, source: 'REAL_MARKET_ANALYSIS', // Remove any mock data flags mockData: false, reasoning: `PAPER TRADING - REAL MARKET ANALYSIS:\n\n${analysis.reasoning || 'Real market analysis completed'}\n\nāš ļø SAFETY: This is paper trading only - no real trades will be executed.` }, safety: { paperTrading: true, isolated: true, noRealTrading: true, realData: true, source: 'REAL_MARKET_ANALYSIS' }, screenshots: screenshots.length, timestamp: new Date().toISOString() }) } catch (error) { console.error('āŒ Safe paper trading API error:', error) // NO FALLBACK TO MOCK DATA - Only real data allowed return NextResponse.json({ success: false, error: `Real analysis failed: ${error.message}`, details: 'Paper trading requires real market data. Please try again.', realDataOnly: true }, { status: 500 }) } }