-
Notifications
You must be signed in to change notification settings - Fork 61
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
Form 526 Document Upload - Lighthouse status polling system #15964
Commits on Feb 14, 2024
-
Create LighthouseDocumentUpload table
Creates a new model, LighthouseDocumentUpload, responsible for persisiting a record of a document that was submitted to Lighthouse's Benefits Document API. We will use this to track the status of a document as it makes its way through the VA's systems. Document Uploads must be attached to a Form 526 submission, and if they reference a Veteran-submitted document that was forwarded on to Lighthouse, they must be attached to the FormAttachment record created for that upload as well. A lighthouse_document_request_id is also required; this is returned from the Lighthouse Benefits Documents API as requestId in their response body. We will need this identifier to track the upload as it passes through Lighthouse's processing, since their status endpoint requires we pass it to look up the status of a document.
Configuration menu - View commit details
-
Copy full SHA for 5aad486 - Browse repository at this point
Copy the full SHA 5aad486View commit details
Commits on Feb 16, 2024
-
Add state machine to LighthouseDocumentUpload
Adds an AASM state machine to LighthouseDocumentUpload that accounts for the various potential lifecycle events once a document reaches Lighthouse. Adds transition guards to ensure the proper metadata is stored before making certain transitions (e.g. if there is a failure makes sure we have saved an error_message) Updates factories for LighthouseDocumentUpload and FormAttachment to support tests
Configuration menu - View commit details
-
Copy full SHA for d774425 - Browse repository at this point
Copy the full SHA d774425View commit details -
Add event transition logging to LighthouseDocumentUpload
Capture events metadata on LighthouseDocumentUpload state transitions and persist the actual response metadata from the Lighthouse /uploads/status API endpoint These logs will drive DataDog alert events when there are submission failures
Configuration menu - View commit details
-
Copy full SHA for 87b4214 - Browse repository at this point
Copy the full SHA 87b4214View commit details
Commits on Feb 20, 2024
-
Create class for parsing Lighthouse Document Status response
Creates a Plain Old Ruby Object to abstract out the parsing of the complex nested response from the uploads/status endpoint of the Lighthouse Benefits Documents API. Provides convenience methods for checking whether a document has completed all processing, has failed processing, or has progressed to another step in the process
Configuration menu - View commit details
-
Copy full SHA for e9039f0 - Browse repository at this point
Copy the full SHA e9039f0View commit details
Commits on Feb 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9f944d6 - Browse repository at this point
Copy the full SHA 9f944d6View commit details
Commits on Feb 26, 2024
-
Implements a service class that encapsulates all of the parsing of a Lighthouse document status data structure, updates a supplied LighthouseDocumentUpload accordingly
Configuration menu - View commit details
-
Copy full SHA for de4558d - Browse repository at this point
Copy the full SHA de4558dView commit details
Commits on Mar 4, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 90752a5 - Browse repository at this point
Copy the full SHA 90752a5View commit details -
Create Lighthouse526DocumentUploads table
Create table for tracking the status of a Form 526 supplemental document we have uploaded to Lighthouse
Configuration menu - View commit details
-
Copy full SHA for d079b55 - Browse repository at this point
Copy the full SHA d079b55View commit details -
Overhaul and simplify document model
Simplifies state tracking and validaitons in the model we use to track Form526 document submissions to Lighthouse
Configuration menu - View commit details
-
Copy full SHA for eb3eb55 - Browse repository at this point
Copy the full SHA eb3eb55View commit details
Commits on Mar 6, 2024
-
Overhauls the service class for parsing a Lighthouse document status response and updating a Lighthouse526DocumentUpload record accordingly. Simplifies the API for this class to reflect the simplified infrastructure of the service object that will be using this
Configuration menu - View commit details
-
Copy full SHA for 108091b - Browse repository at this point
Copy the full SHA 108091bView commit details -
Refactor UpdateDocumentsStatusService for new logging approach
Simplifies the UpdateDocumentsStatusService to use the simplified API of the UploadStatusUpdater. Makes the service responsible for passing the Lighthouse response metadata to the updater class, and logging to statsd metrics based on the outcome
Configuration menu - View commit details
-
Copy full SHA for 4d6e21d - Browse repository at this point
Copy the full SHA 4d6e21dView commit details
Commits on Mar 11, 2024
-
Implement Lighthouse::Form526DocumentUploadPollingJob
Implements the actual job that orchestrates polling of the Lighthouse uploads/status endpoint to get the current status of a document we have uploaded to Lighthouse. Includes Sidekiq retry exhaustion handling
Configuration menu - View commit details
-
Copy full SHA for 7f922e6 - Browse repository at this point
Copy the full SHA 7f922e6View commit details
Commits on Mar 12, 2024
-
Refactor UpdateDocumentsStatusService for new flow
Update service and tests to take Lighthouse benefits response from the job
Configuration menu - View commit details
-
Copy full SHA for 7baac10 - Browse repository at this point
Copy the full SHA 7baac10View commit details
Commits on Mar 14, 2024
-
Freeze development at good stopping place for feedback
Freezing development for early draft PR feedback; latest changes: - Account for documents that have not been polled for updates yet (status_last_polled_at is nil) - Begin end to end testing using the Lighthouse QA domain (still debugging with Lighthouse)
Configuration menu - View commit details
-
Copy full SHA for aaa88e5 - Browse repository at this point
Copy the full SHA aaa88e5View commit details
Commits on Mar 15, 2024
-
Couple loose ends to clean up ahead of draft review
Configuration menu - View commit details
-
Copy full SHA for a2476c1 - Browse repository at this point
Copy the full SHA a2476c1View commit details
Commits on Mar 25, 2024
-
Complete e2e testing and debugging
Adds live VCR tests with the status polling endpoint using documents provided by Lighthouse in their QA environment. Makes necessary changes across service components and in tests to reflect bugs that were found when testing with the actual endpoint
Configuration menu - View commit details
-
Copy full SHA for c0dac15 - Browse repository at this point
Copy the full SHA c0dac15View commit details
Commits on Apr 1, 2024
-
Handle failure responses from status endpoint
Adds logging and a StatsD metric (for alert monitoring) when the call to the status endpoint returns a non 200 response
Configuration menu - View commit details
-
Copy full SHA for b4d118b - Browse repository at this point
Copy the full SHA b4d118bView commit details
Commits on Jun 25, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0bce3ee - Browse repository at this point
Copy the full SHA 0bce3eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d1b157 - Browse repository at this point
Copy the full SHA 9d1b157View commit details