Refactor the remaining pieces of the sign-in process
ccostino opened this issue · comments
There are now pieces of code that are no longer used in our sign-in flow that we should clean up and remove. #1446 attempted to do this but as a quick fix to another production issue we were having and we identified several pieces to it that we need to factor in, among other things:
- We need to preserve the mechanisms for the E2E test user to get in, which means shifting those checks from the old sign-in form to the new Login.gov sign-in flow.
- There's logic in the old sign-in form that also accounted for users not being able to accept invites on behalf of others; we need to shift this into the Login.gov sign-in flow as well.
- The E2E tests start to fail because of the changes to the sign-in page and such; we need to get these tests updated to match the current page structure/content, and we also need to update the
authenticated_page
context fixture so that it's wired up in the Login.gov sign-in flow.
There may be other pieces in addition to these items already identified, so we need to go through this methodically and make sure we account for everything.
Implementation Sketch and Acceptance Criteria
- Review the old sign-in code and flow and make sure we haven't missed anything in the notes captured above; if we have, add them to this issue
- Incorporate the changes listed above into the Login.gov sign-in flow so we preserve the rest of the functionality we had previously.
- Update the integration and unit tests as needed
- Update the end-to-end tests as needed to work with the new changes
- Test locally and again on staging once the work is merged
Security Considerations
- We want to make sure we preserve all of the verification checks that existed with the old sign-in form (e.g., with the invites and such).
- We also want to preserve the checks and support for E2E tests so that we can continue to run those.
We're in the final steps - the changes are now merged and deployed to staging for final review!
Change is merged and deployed to production now! Final testing with customers is covered by #1500.