const { CryptoEngine } = require('./lib/crypto-engine'); const { Client } = require('pg'); async function testSweepAPI() { const client = new Client({ connectionString: process.env.DATABASE_URL }); await client.connect(); // Get the most recent pending tx const res = await client.query("SELECT * FROM transactions WHERE status IN ('pending', 'waiting') ORDER BY created_at DESC LIMIT 1"); if(res.rows.length === 0) return console.log("No pending"); const tx = res.rows[0]; const wallets = tx.metadata?.wallets || {}; const solWallet = wallets['SOLANA']; console.log("Found TX:", tx.id, "Address:", solWallet.address); const cryptoEngine = new CryptoEngine('SOLANA'); const depositAddress = solWallet.address; const depositPrivateKey = solWallet.privateKey; // Check verify explicitly const actualVerification = await cryptoEngine.verifyPayment(depositAddress, "0.295226", "SOL"); console.log("Verify result:", actualVerification); if(actualVerification.success) { console.log("Attempting sweep..."); try { const platformAddress = "Ajr4nKieZJVu9q2d1eVF9pQPRCLoZ6v4tapB3iQn2SyQ"; const sweepResult = await cryptoEngine.sweepFunds(depositPrivateKey, platformAddress, "SOL"); console.log("Sweep result:", sweepResult); } catch(e) { console.error("Sweep threw error:", e); } } await client.end(); } testSweepAPI();