const { MongoClient } = require('mongodb'); async function debug() { const uri = 'mongodb://7qV5rRanD6UwANNO:NK1EFfaKpJZcTQlmm7pDUUI7Yk7yqxN6@51.254.197.189:27017/librechat?authSource=admin'; const client = new MongoClient(uri); await client.connect(); const db = client.db('librechat'); const usersToCheck = ['Kleyntssens', 'Lilou Guillaume', 'Isabelle De Witte', 'Flavie Pochet']; console.log('=== VERIFICATION TOKENS DEPUIS TRANSACTIONS ===\n'); for (const searchName of usersToCheck) { const user = await db.collection('users').findOne({ name: { $regex: searchName, $options: 'i' } }); if (!user) { console.log('NOT FOUND:', searchName); continue; } const convCount = await db.collection('conversations').countDocuments({ user: user._id.toString() }); const txs = await db.collection('transactions').find({ user: user._id }).toArray(); const tokensFromTx = txs.reduce((sum, t) => sum + Math.abs(t.rawAmount || 0), 0); const balance = await db.collection('balances').findOne({ user: user._id }); const credits = balance?.tokenCredits || 0; console.log('---'); console.log('User:', user.name); console.log('Conversations:', convCount); console.log('Tokens (VRAI depuis transactions):', tokensFromTx.toLocaleString()); console.log('Credits:', credits.toLocaleString()); console.log('Nb transactions:', txs.length); } await client.close(); } debug().catch(console.error);