This suggests to me that we should have a separate error enum for per-report upload processing (that just includes a report rejection reason or internal errors like from the database) but we can clean that up as a future improvement.
Originally posted by @divergentdave in #3831 (comment)