Closed tblackwe closed 7 months ago
Update: During implementations, these were the states that ended up making the most sense were a little different. Documented here
Pending PR review and possible discussion with team 1 about how we can use this for their polling
BLOCKED: splitting into 3 PRs to satisfy platform DB migration requirements. First PR here is blocked by an unrelated dependency issue.
UNBLOCKED: dependancy issue was a flicker, rebasing solved it
PR 1 waiting for review https://github.com/department-of-veterans-affairs/vets-api/pull/15736
Approved third (3 of 3) PR
Rational
We currently have multiple means by which a submission may succeed or fail. E.g.
Even when we successfully complete one of these paths, we still often are in a limbo state where we require polling to finalize success of this submission avenue.
Having a bare minimum state machine would allow us to track
Abstract
Proposed states
Proposed Database changes
form526Submission Table
aasm_state
duplicate_of_id
Proposed Code Changes
pending
to all submissionsOmmissions
Polling
Eventually we will be adding a solution for tracking the final status of a successful submission to LH. This will most likely be automated polling. However, for MVP just having a way to track our manual weekly polling will be a massive leap forward.
Granular sub-state
There is a lot to be discovered about how we handle the sub-processes of a submission, e.g. ancillary doc delivery. That is out of scope for MVP.