@squidcloud/client
    Preparing search index...

    Type Alias BulkIngestionFileErrorCode

    BulkIngestionFileErrorCode:
        | "CONTENT_TOO_LARGE"
        | "DUPLICATE_CONTENT"
        | "ENCRYPTED_DOCUMENT"
        | "EXTRACTION_TIMED_OUT"
        | "IMAGE_OVER_PROVIDER_LIMIT"
        | "JOB_FULL"
        | "NO_EMBEDDABLE_CONTENT"
        | "PROVIDER_ACCESS_DENIED"
        | "SOURCE_OVER_PROVIDER_LIMIT"
        | "SOURCE_UNREACHABLE"
        | "UNREADABLE_DOCUMENT"
        | "UNREADABLE_WORKBOOK"
        | "UNSUPPORTED_FILE_TYPE"

    Machine-readable class of a bulk-ingestion file failure, for outcomes to treat differently from real failures. Terminal — reported with retryable: false — are 'CONTENT_TOO_LARGE' (past the per-context ceiling), 'ENCRYPTED_DOCUMENT', 'IMAGE_OVER_PROVIDER_LIMIT' (the OCR provider refuses an image in the document as too large, even with the pages that draw it redrawn smaller), 'NO_EMBEDDABLE_CONTENT', 'SOURCE_OVER_PROVIDER_LIMIT' (the bytes exceed what the extraction provider accepts), 'UNREADABLE_DOCUMENT' (a PDF or Office file whose bytes cannot be opened as one), 'UNREADABLE_WORKBOOK' (a spreadsheet whose content the parser cannot read) and 'UNSUPPORTED_FILE_TYPE'. 'DUPLICATE_CONTENT' is a skip rather than a failure: the KB already holds this content. 'EXTRACTION_TIMED_OUT' stays retryable — the deadline is contended, so a borderline document can cross it under load. So do 'SOURCE_UNREACHABLE' (the provider could not fetch the source, which a fresh link can fix) and 'PROVIDER_ACCESS_DENIED' (the provider refused the credential or its quota is spent, a fault of the environment). 'JOB_FULL': the job's request ceiling had no room left for this file when it was admitted — before any paid stage ran — so re-submit it in a fresh job; a file that alone exceeds the ceiling fails this way in every job.