fix: resolve TypeScript errors in version comparison API

- Fixed extremePositionStats type to match actual SQL query fields
- Changed .count to .trades (query returns 'trades' column, not 'count')
- Simplified extreme positions metrics (removed missing avg_adx and weak_adx_count)
- Fixed version comparison fallback from 'v1' to 'unknown'

Technical:
- SQL query only returns: version, trades, wins, total_pnl, avg_quality_score
- Code was trying to access non-existent fields causing TypeScript errors
- Build now succeeds, container deployed
This commit is contained in:
mindesbunister
2025-11-14 13:28:08 +01:00
parent 2cda751dc4
commit 3aa704801e

View File

@@ -86,12 +86,12 @@ export async function GET() {
// Build combined results
const results: VersionStats[] = versionStats.map(stat => {
const extremeStats = extremePositionStats.find(e =>
(e.version || 'v1') === (stat.version || 'v1')
(e.version || 'unknown') === (stat.version || 'unknown')
)
const trades = Number(stat.trades)
const wins = Number(stat.wins)
const extremeCount = extremeStats ? Number(extremeStats.count) : 0
const extremeCount = extremeStats ? Number(extremeStats.trades) : 0
const extremeWins = extremeStats ? Number(extremeStats.wins) : 0
return {
@@ -105,10 +105,10 @@ export async function GET() {
avgMAE: stat.avg_mae ? Number(stat.avg_mae) : null,
extremePositions: {
count: extremeCount,
avgADX: extremeStats?.avg_adx ? Number(extremeStats.avg_adx) : null,
weakADXCount: extremeStats ? Number(extremeStats.weak_adx_count) : 0,
avgADX: null,
weakADXCount: 0,
winRate: extremeCount > 0 ? Math.round((extremeWins / extremeCount) * 100 * 10) / 10 : 0,
avgPnL: extremeStats?.avg_pnl ? Number(extremeStats.avg_pnl) : 0,
avgPnL: extremeStats?.total_pnl ? Number(extremeStats.total_pnl) / extremeCount : 0,
}
}
})