#!/usr/bin/env python3
from app import app
from models import db, SummarizationJob

with app.app_context():
    # Find the specific job that's stuck
    job = SummarizationJob.query.filter(
        SummarizationJob.status == 'processing'
    ).order_by(SummarizationJob.created_at.desc()).first()
    
    if job:
        print(f"Found stuck job: {job.job_uuid}")
        print(f"  File: {job.original_filename}")
        print(f"  Status: {job.status}")
        
        # Update to failed
        job.status = 'failed'
        job.error_message = "Processing timeout - document appears to be very large (like the Dobbs decision). Please try using 'Short' summary length or split the document into smaller sections (e.g., pages 1-50, 51-100, etc.)"
        
        db.session.commit()
        print("  -> Updated to 'failed' status with helpful error message")
    else:
        print("No stuck jobs found")