Spaces:
Sleeping
Sleeping
| import sys | |
| import os | |
| from loguru import logger | |
| # Ensure src is in path | |
| sys.path.append(os.getcwd()) | |
| from src.database.models import SessionLocal, RawNews, VerifiedNews, DailyDigest, BreakingNews, OTPVerification | |
| def clear_news_data(): | |
| """Truncate or delete all news-related records for a fresh start.""" | |
| session = SessionLocal() | |
| try: | |
| logger.info("Initializing Data Wipe (News Intelligence Only)...") | |
| # Order matters for foreign keys | |
| logger.info("Cleaning Breaking News...") | |
| session.query(BreakingNews).delete() | |
| logger.info("Cleaning Daily Digests...") | |
| session.query(DailyDigest).delete() | |
| logger.info("Cleaning Verified Intelligence Nodes...") | |
| session.query(VerifiedNews).delete() | |
| logger.info("Cleaning Raw Ingested Headlines...") | |
| session.query(RawNews).delete() | |
| logger.info("Cleaning Old OTP Verification Records...") | |
| session.query(OTPVerification).delete() | |
| session.commit() | |
| logger.info("✅ Database Reset Complete. System is now empty and ready for a fresh cycle.") | |
| except Exception as e: | |
| session.rollback() | |
| logger.error(f"❌ Data Wipe Failed: {e}") | |
| finally: | |
| session.close() | |
| if __name__ == "__main__": | |
| clear_news_data() | |