Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Surface error to user when bulk upload fails to reach ReportStream #8496

Open
mehansen opened this issue Feb 14, 2025 · 2 comments
Open

Surface error to user when bulk upload fails to reach ReportStream #8496

mehansen opened this issue Feb 14, 2025 · 2 comments
Labels
Urgent High priority work

Comments

@mehansen
Copy link
Collaborator

mehansen commented Feb 14, 2025

Description

There are several scenarios where bulk upload results don't make it to ReportStream and there is no indication to the user that their data has not been successfully delivered. Users should receive an error if their data is not accepted by any pipeline it is intended for (just UP for bulk uploads without any Covid results, but otherwise both Covid and UP).

Proposed solution

The frontend will already show an error toast if backend doesn't respond with a 200, so we could make sure to throw exceptions in any case where:

  • data fails to parse or get transformed before we send to ReportStream
  • we can't parse the ReportStream response after uploading, since this means the response does not match the expected "Success" response

If either the Covid or the UP upload fails, we should expose an error.

Open question: How much detail should error message have? This will impact whether technical solution needs to also update frontend.
Potential issue: if upload fails to make it to one pipeline but makes it successfully to another, users will see an error message and will likely upload again, leading to duplicates

Additional context

Relevant test cases from recent support escalations:

  • preceding whitespace in date time string causes a DateTimeParseException to get thrown inside the CompletableFuture returned by TestResultUploadService#submitResultsToCovidPipeline -> this should show an error to the user
  • ReportStream error response from Universal Pipeline endpoint is not in JSON -> this should show an error to the user
@DanielSass
Copy link
Collaborator

DanielSass commented Feb 18, 2025

Additional additional context: this is intended to be a bandaid fix. Realistically we need to rewrite our file processing logic.

Update from communication with ReportStream, it sounds like we are close to the point where all receivers are on the universal pipeline and we could remove the covid pipeline altogether.

@DanielSass DanielSass self-assigned this Feb 24, 2025
@DanielSass DanielSass added the Urgent High priority work label Feb 26, 2025
@DanielSass
Copy link
Collaborator

Open question: How much detail should error message have? This will impact whether technical solution needs to also update frontend.

update language to include "Or contact support if you continue having issues"

@DanielSass DanielSass removed their assignment Feb 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Urgent High priority work
Projects
None yet
Development

No branches or pull requests

2 participants