"""

User-facing and API messages for resumable batched folder scan jobs.



See docs/prompts/folder-scan-batch-job.md for client integration notes.

"""



FOLDER_SCAN_JOB_STARTED = (

    "Folder scan job created. A background scheduler processes files in batches "

    "(default 100 per batch, DFS order) on a 20 min active / 10 min rest cycle. "

    "Refresh the file list for progress. Call schedule-stop to cancel."

)



FOLDER_SCAN_JOB_STEP_PROGRESS = (

    "Batch processed. The background scheduler continues automatically when scheduling is enabled."

)



FOLDER_SCAN_JOB_COMPLETED = "Folder scan job finished. All directories and file batches were processed."



FOLDER_SCAN_JOB_NOT_FOUND = "No folder scan job exists for the given job_id."



FOLDER_SCAN_JOB_INVALID_PATH = "The server folder path does not exist or is not a directory."



FOLDER_SCAN_JOB_FAILED = "Folder scan job failed. See last_error in job details."



FOLDER_SCAN_JOB_SCHEDULED = (

    "Scheduler is active — 19 minutes and 59 seconds remaining in this processing window."
)



FOLDER_SCAN_JOB_SCHEDULE_ALREADY = "A background batch upload is already running for this job_id."



FOLDER_SCAN_JOB_SCHEDULE_PATH_RUNNING = (

    "Folder upload scheduler is already running for this file path. "

    "Refresh the file list for progress."

)



FOLDER_SCAN_JOB_REUSED = (

    "Using the existing folder scan job for this path. "

    "The background scheduler continues on its 20 min active / 10 min rest cycle."

)



FOLDER_SCAN_JOB_SAME_ID = (

    "Scan already started for this job_id. "

    "Refresh the file list for progress."

)



FOLDER_SCAN_JOB_BACKGROUND_IN_PROGRESS = (

    "Folder upload is running in the background. Refresh the file list for progress."

)



FOLDER_SCAN_JOB_SCHEDULE_PATH_COMPLETED = (

    "Folder upload for this file path is already completed. "

    "Scheduler was not restarted."

)



FOLDER_SCAN_JOB_PATH_ALREADY_EXISTS = (

    "An upload schedule already exists for this file path. "

    "The scheduler was not restarted."

)



FOLDER_SCAN_FILE_PATH_ALREADY_EXISTS = "File path already exists."



FOLDER_SCAN_SCHEDULER_ACTIVE = "Scheduler is active (processing upload batches)."



FOLDER_SCAN_SCHEDULER_ACTIVE_REMAINING = (

    "Scheduler is active — {remaining} remaining in this processing window."

)



FOLDER_SCAN_ALL_FILES_UPLOADED = (

    "All files in this folder have been uploaded ({uploaded} uploaded, {skipped} skipped). "

    "Refresh the file list for progress."

)



FOLDER_SCAN_ALL_FILES_UPLOADED_WITH_SCHEDULE = (

    "All files in this folder have been uploaded ({uploaded} uploaded, {skipped} skipped). "

    "Scheduler is active — {remaining} remaining in this processing window. "

    "Refresh the file list for progress."

)



FOLDER_SCAN_UPLOAD_IN_PROGRESS = (

    "Upload in progress ({uploaded} uploaded, {skipped} skipped so far). "

    "{scheduler} Refresh the file list for progress."

)



FOLDER_SCAN_SCHEDULER_SLEEP = "Scheduler is on sleep for {minutes} minutes."



FOLDER_SCAN_SCHEDULER_SLEEP_REMAINING = (

    "Scheduler is on sleep — {remaining} remaining until the next processing window."

)



FOLDER_SCAN_SCHEDULER_REST_UPLOAD_BLOCKED = (

    "The files cannot be uploaded. Scheduler is on rest. "

    "Please try again after {remaining}."

)


FOLDER_SCAN_SCHEDULER_REST_SCAN_PAUSED = (

    "Folder scan paused: scheduler is on rest. No files were ingested. "

    "The job will run again in the next active window."

)



FOLDER_SCAN_JOB_STOPPED = (

    "Folder upload schedule stopped. No further files will be processed for this job."

)



FOLDER_SCAN_JOB_STOP_PENDING = (

    "Stop scheduled: the current file upload or ingest will finish first, "

    "then the scheduler will stop."

)



FOLDER_SCAN_JOB_STOP_NOT_RUNNING = (

    "No active background scheduler was found; file schedule was disabled if it existed."

)



FOLDER_SCAN_JOB_STOP_ALREADY_COMPLETED = (

    "This file upload has already completed and cannot be stopped."

)



FOLDER_SCAN_JOB_STOP_ALREADY_FAILED = (

    "This file upload has already failed and cannot be stopped."

)



FOLDER_SCAN_JOB_STOP_ALREADY_CANCELLED = (

    "This schedule was already cancelled."

)

