/** * Diagnose research document migration issue */ const { MongoClient } = require('mongodb'); require('dotenv').config({ path: '/var/www/tractatus/.env' }); async function run() { console.log('═══════════════════════════════════════════════════════════'); console.log(' DIAGNOSING RESEARCH DOCUMENT MIGRATION'); console.log('═══════════════════════════════════════════════════════════\n'); // 1. Check dev database console.log('1️⃣ Checking DEV database...\n'); const devClient = new MongoClient('mongodb://localhost:27017'); await devClient.connect(); const devDoc = await devClient.db('tractatus_dev').collection('documents').findOne({ slug: 'tractatus-framework-research' }); if (devDoc) { console.log(` ✅ Found in dev: ${devDoc.title}`); console.log(` Category: ${devDoc.category}`); console.log(` Order: ${devDoc.order}`); console.log(` Sections: ${devDoc.sections?.length || 0}`); console.log(` Visibility: ${devDoc.visibility}`); } else { console.log(' ❌ NOT found in dev'); } await devClient.close(); // 2. Check production database console.log('\n2️⃣ Checking PRODUCTION database...\n'); const MONGODB_URI = process.env.MONGODB_URI; const DB_NAME = process.env.MONGODB_DB || 'tractatus_prod'; console.log(` URI: ${MONGODB_URI?.replace(/:[^:]*@/, ':***@')}`); console.log(` Database: ${DB_NAME}\n`); const prodClient = new MongoClient(MONGODB_URI); await prodClient.connect(); const prodDoc = await prodClient.db(DB_NAME).collection('documents').findOne({ slug: 'tractatus-framework-research' }); if (prodDoc) { console.log(` ✅ Found in production: ${prodDoc.title}`); console.log(` Category: ${prodDoc.category}`); console.log(` Order: ${prodDoc.order}`); console.log(` Sections: ${prodDoc.sections?.length || 0}`); console.log(` Visibility: ${prodDoc.visibility}`); } else { console.log(' ❌ NOT found in production'); } // 3. Check all research-theory documents in production console.log('\n3️⃣ All research-theory documents in production:\n'); const researchDocs = await prodClient.db(DB_NAME).collection('documents') .find({ category: 'research-theory' }) .project({ slug: 1, title: 1, order: 1 }) .sort({ order: 1 }) .toArray(); researchDocs.forEach(doc => { console.log(` [${doc.order}] ${doc.slug}`); console.log(` ${doc.title}`); }); console.log(`\n Total: ${researchDocs.length} documents in research-theory`); await prodClient.close(); console.log('\n═══════════════════════════════════════════════════════════'); console.log(' DIAGNOSIS COMPLETE'); console.log('═══════════════════════════════════════════════════════════\n'); } run().catch(console.error);