S3_OBJECT_NOT_FOUND — the bucket holds nothing at the recorded key. The
record and the bucket disagree; no retry fixes it.
S3_READ_FAILED — S3 refused or could not serve the read: denied
permissions, the wrong bucket, a network fault. Retryable, and it never
means the object is absent.
The two must stay distinct at the call site: collapsing them is what makes
an operator chase a missing file that is actually a permissions problem.
Failure of an S3 read path (AchFileS3Service.downloadFile, AchFileS3Service.generateDownloadLink).
S3_OBJECT_NOT_FOUND— the bucket holds nothing at the recorded key. The record and the bucket disagree; no retry fixes it.S3_READ_FAILED— S3 refused or could not serve the read: denied permissions, the wrong bucket, a network fault. Retryable, and it never means the object is absent.The two must stay distinct at the call site: collapsing them is what makes an operator chase a missing file that is actually a permissions problem.