Fix: Position Manager initialization race condition in API endpoints
- Changed /api/trading/positions to use getInitializedPositionManager() - Changed /api/trading/test to use getInitializedPositionManager() - Changed /api/trading/test-db to use getInitializedPositionManager() - These endpoints were accessing Position Manager before DB restore completed - Now properly wait for async initialization before accessing trade data - Fixes /status Telegram command showing empty despite active positions
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
*/
|
||||
|
||||
import { NextRequest, NextResponse } from 'next/server'
|
||||
import { getPositionManager } from '@/lib/trading/position-manager'
|
||||
import { getInitializedPositionManager } from '@/lib/trading/position-manager'
|
||||
|
||||
export interface PositionsResponse {
|
||||
success: boolean
|
||||
@@ -57,7 +57,7 @@ export async function GET(request: NextRequest): Promise<NextResponse<PositionsR
|
||||
)
|
||||
}
|
||||
|
||||
const positionManager = getPositionManager()
|
||||
const positionManager = await getInitializedPositionManager()
|
||||
const status = positionManager.getStatus()
|
||||
const trades = positionManager.getActiveTrades()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user