const { createClient } = require('@supabase/supabase-js'); // Supabase configuration from environment const SUPABASE_URL = 'https://gzoclmbqmgmpuhufbnhy.supabase.co'; const SUPABASE_SERVICE_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Imd6b2NsbWJxbWdtcHVodWZibmh5Iiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc1MzgxNjY3OCwiZXhwIjoyMDY5MzkyNjc4fQ.f9PUzL1F8JqIkqD_DwrGBIyHPcehMo-97jXD8hee5ss'; const serviceClient = createClient(SUPABASE_URL, SUPABASE_SERVICE_KEY); async function testDatabaseWorking() { console.log('šŸ” Testing essential database functionality...\n'); try { // Test 1: Users table console.log('1ļøāƒ£ Testing users table...'); const { data: usersData, error: usersError } = await serviceClient .from('users') .select('*') .limit(1); if (usersError) { console.log(`āŒ Users table error: ${usersError.message}`); } else { console.log(`āœ… Users table working! Found ${usersData?.length || 0} users`); } // Test 2: Documents table console.log('\n2ļøāƒ£ Testing documents table...'); const { data: docsData, error: docsError } = await serviceClient .from('documents') .select('*') .limit(1); if (docsError) { console.log(`āŒ Documents table error: ${docsError.message}`); } else { console.log(`āœ… Documents table working! Found ${docsData?.length || 0} documents`); } // Test 3: Document versions table console.log('\n3ļøāƒ£ Testing document_versions table...'); const { data: versionsData, error: versionsError } = await serviceClient .from('document_versions') .select('*') .limit(1); if (versionsError) { console.log(`āŒ Document versions table error: ${versionsError.message}`); } else { console.log(`āœ… Document versions table working! Found ${versionsData?.length || 0} versions`); } // Test 4: Document feedback table console.log('\n4ļøāƒ£ Testing document_feedback table...'); const { data: feedbackData, error: feedbackError } = await serviceClient .from('document_feedback') .select('*') .limit(1); if (feedbackError) { console.log(`āŒ Document feedback table error: ${feedbackError.message}`); } else { console.log(`āœ… Document feedback table working! Found ${feedbackData?.length || 0} feedback entries`); } // Test 5: Processing jobs table console.log('\n5ļøāƒ£ Testing processing_jobs table...'); const { data: jobsData, error: jobsError } = await serviceClient .from('processing_jobs') .select('*') .limit(1); if (jobsError) { console.log(`āŒ Processing jobs table error: ${jobsError.message}`); } else { console.log(`āœ… Processing jobs table working! Found ${jobsData?.length || 0} jobs`); } console.log('\nšŸŽ‰ Database functionality test completed!'); console.log('šŸ“‹ All essential tables are working correctly.'); console.log('šŸš€ The application should now function without 500 errors.'); } catch (error) { console.error('āŒ Database test failed:', error.message); console.error('Error details:', error); } } testDatabaseWorking();