const mongoose = require('mongoose'); const Document = require('../src/models/Document.model'); mongoose.connect('mongodb://localhost:27017/tractatus_dev') .then(async () => { // Get all documents const publicDocs = await Document.find({ visibility: 'public' }).sort({ category: 1, order: 1 }); const archivedDocs = await Document.find({ visibility: 'archived' }).sort({ category: 1, order: 1 }); // Group by category const categories = {}; publicDocs.forEach(d => { const cat = d.category || 'uncategorized'; if (!categories[cat]) categories[cat] = []; categories[cat].push({ title: d.title, slug: d.slug, order: d.order, hasSections: d.sections && d.sections.length > 0 }); }); console.log('=== CURRENT DATABASE CATEGORIES ===\n'); Object.keys(categories).sort().forEach(cat => { console.log(`${cat} (${categories[cat].length} documents):`); categories[cat].forEach(d => { const sections = d.hasSections ? ' [HAS SECTIONS]' : ''; console.log(` [order:${d.order}] ${d.title}${sections}`); }); console.log(''); }); console.log('\n=== ARCHIVED DOCUMENTS ==='); console.log('Count:', archivedDocs.length); archivedDocs.forEach(d => { console.log(` - ${d.title} (${d.category})`); }); await mongoose.connection.close(); process.exit(0); }) .catch(err => { console.error('Error:', err); process.exit(1); });