#!/usr/bin/env node /** * Remove Duplicate/Old Documents * * Removes 5 duplicate documents that were replaced by newer versions */ require('dotenv').config(); const { connect, close } = require('../src/utils/db.util'); const Document = require('../src/models/Document.model'); const DOCUMENTS_TO_REMOVE = [ { slug: 'case-studies', reason: 'Duplicate - replaced by case-studies-real-world-llm-failure-modes-appendix' }, { slug: 'concurrent-session-architecture-limitations', reason: 'Duplicate - replaced by research-topic-concurrent-session-architecture' }, { slug: 'rule-proliferation-and-transactional-overhead', reason: 'Duplicate - replaced by research-topic-rule-proliferation-transactional-overhead' }, { slug: 'implementation-guide-python-code-examples', reason: 'Old version without sections - replaced by implementation-guide-python-examples' }, { slug: 'framework-governance-in-action-pre-publication-security-audit', reason: 'Incomplete document without sections' } ]; async function removeDocument(slug, reason) { try { const doc = await Document.findBySlug(slug); if (!doc) { console.log(` ⏭️ Not found: ${slug}`); return { success: false, reason: 'not_found' }; } console.log(`\n❌ Removing: ${doc.title}`); console.log(` Slug: ${slug}`); console.log(` Reason: ${reason}`); const deleted = await Document.delete(doc._id.toString()); if (!deleted) { console.log(` ❌ Failed to delete`); return { success: false, reason: 'delete_failed' }; } console.log(` ✅ Deleted successfully`); return { success: true }; } catch (error) { console.error(` ❌ Error: ${error.message}`); return { success: false, error: error.message }; } } async function main() { try { console.log('🗑️ Removing Duplicate/Old Documents\n'); console.log('═══════════════════════════════════════════════════\n'); await connect(); let removed = 0; let notFound = 0; let failed = 0; for (const { slug, reason } of DOCUMENTS_TO_REMOVE) { const result = await removeDocument(slug, reason); if (result.success) { removed++; } else if (result.reason === 'not_found') { notFound++; } else { failed++; } } console.log('\n═══════════════════════════════════════════════════'); console.log('\n📊 Summary:'); console.log(` ✅ Removed: ${removed}`); console.log(` ⏭️ Not found: ${notFound}`); console.log(` ❌ Failed: ${failed}`); console.log(` 📦 Total: ${DOCUMENTS_TO_REMOVE.length}`); await close(); } catch (error) { console.error('\n❌ Fatal error:', error); process.exit(1); } } main();