Verify Petitioner Account: Email & Electronic Case Access

by Dimemap Team 58 views

This document outlines the process for allowing petitioners without existing accounts to verify their email addresses and gain electronic access to the DAWSON system. This functionality is crucial for ensuring petitioners can easily access their cases, receive electronic service, and e-file documents. This initiative, originally created by @mariahkannenberg in ustaxcourt/ef-cms#7709 and assigned to @rachaelparris, aims to streamline the petitioner experience and improve overall system usability.

Pre-Conditions

Before proceeding, ensure that the pre-conditions outlined in ustaxcourt/ef-cms#7708 are met. These pre-conditions likely involve setting up the necessary infrastructure and configurations to support the new account verification process. Understanding and fulfilling these pre-conditions is vital for the successful implementation of the outlined features.

Acceptance Criteria

The following acceptance criteria must be met to ensure the successful implementation of this feature:

  • Single Petitioner Account Verification: A single petitioner should be able to verify their Cognito account and gain access to the system seamlessly. This involves confirming their email address and linking their account to the relevant case or cases.
  • Case Access After Account Linkage: Once a user is linked to a case, whether through a new Cognito account or an existing one, they must have comprehensive access to the case. This includes:
    • Dashboard Visibility: The case should be visible on their dashboard for easy access and monitoring.
    • Associated View Permissions: They should have the appropriate view permissions to access all relevant case information.
    • E-filing Capabilities: They should be able to electronically file documents related to the case through the system.
  • Electronic Service Updates: After the petitioner verifies their email, the service information should be automatically updated to reflect "electronic" service. This ensures that all future communications and documents are delivered electronically.
  • Electronic Service Delivery: Once the petitioner has verified their email, they should begin receiving electronic service at the email address they provided. This includes notifications, updates, and other important case-related information.

Mobile Design/Considerations

When implementing this feature, it's important to consider the mobile experience. The account verification process and case access should be seamless and user-friendly on mobile devices. This includes ensuring that the user interface is responsive and optimized for different screen sizes. Mobile users should have the same level of access and functionality as desktop users.

Security Considerations

Security is paramount in any system that handles sensitive information. The following security considerations must be addressed:

  • Privacy and Security Concerns: Does this work raise any concerns about privacy or security? If so, these concerns must be thoroughly investigated and addressed.
  • Major System Changes: Does this work involve major changes to the system? Major changes can introduce new security vulnerabilities, so careful planning and testing are essential.
  • New Authentication or Security Controls: Does this work implement new authentication or security controls? New controls should be carefully evaluated to ensure they are effective and do not introduce unintended consequences.
  • Authentication Methods: Does this work create new methods of authentication, modify existing security controls, or explicitly implement any security or privacy features? Any changes to authentication methods or security controls must be thoroughly reviewed and tested to prevent security breaches.

Notes

This section can be used to record any additional notes or observations related to the implementation of this feature. This can include design decisions, technical challenges, or any other relevant information.

Tasks

The following tasks have been completed as part of this feature implementation:

  • Check for PostAuthentication_Authentication Trigger: Mrachael completed this task in ustaxcourt/ef-cms-flexion#7882.
    • Check User by ID: Check the user by ID from persistence for a pending email. If the pending email matches the login email (ustaxcourt/ef-cms-flexion#7882).
    • Update User Email: Update the user.email field to be the value of the pending email (ustaxcourt/ef-cms-flexion#7882).
    • Update Case Contact Primary Email: Update the case.contactPrimary.email field (ustaxcourt/ef-cms-flexion#7882).
    • Change Service Preference: Change the service preference of the contact primary to electronic (ustaxcourt/ef-cms-flexion#7882).
    • Verify Electronic Service Emails: Verify electronic service emails for that email address (ustaxcourt/ef-cms-flexion#7882).
    • Associated Cases on Dashboard: Ensure all associated cases show up on the petitioner's dashboard (ustaxcourt/ef-cms-flexion#7882).
    • Petitioner E-filing: Verify that the petitioner can e-file documents on the case (ustaxcourt/ef-cms-flexion#7882).
    • Petitioner Case View: Confirm that the petitioner can view the case (ustaxcourt/ef-cms-flexion#7882).
  • Email Verification - Party View: On email verification, update the party view of the case information tab. This task was completed by Mrachael in ustaxcourt/ef-cms-flexion#7885.
    • Hide Pending Email View: Hide the pending email view.
    • Remove Party Type View: Remove the party type view.
    • Hide Current Email Field: Hide the current email field (ustaxcourt/ef-cms-flexion#7885).
  • Email Verification - Internal View: On email verification, update the internal view of the case information tab. This task was also completed by Mrachael in ustaxcourt/ef-cms-flexion#7885.
    • Hide Pending Email View: Hide the pending email view (ustaxcourt/ef-cms-flexion#7885).
    • Display Current Email Field: Display the current email field (ustaxcourt/ef-cms-flexion#7885).

Definition of Done (Updated 2-23-21)

The following criteria must be met for this feature to be considered complete:

Product Owner

  • [x] Acceptance criteria have been met and validated on the Flexion Prod env.

UX

Engineering

  • [x] Automated test scripts have been written.
  • [x] Field level and page level validation errors (front-end and server-side) integrated and functioning.
  • [x] Verify that language for docket record for internal users and external users is identical.
  • [x] New screens have been added to pa11y scripts.
  • [x] All new functionality verified to work with keyboard and macOS voiceover https://www.apple.com/voiceover/info/guide/_1124.html.
  • [x] READMEs, other appropriate docs, JSDocs and swagger/APIs fully updated.
  • [x] UI should be touch optimized and responsive for external only (functions on supported mobile devices and optimized for screen sizes as required).
  • [x] Module dependencies are up-to-date and are at the latest resolvable version (npm update).
  • [x] Errors in Sonarcloud are fixed https://sonarcloud.io/organizations/flexion-github/projects.
  • [x] Lambdas include CloudWatch logging of users, inputs and outputs.
  • [x] Interactors should validate entities before calling persistence methods.
  • [x] Code refactored for clarity and to remove any known technical debt.
  • [x] Rebuild entity documentation.
  • [x] Acceptance criteria for the story has been met.
  • [x] Deployed to the dev environment.
  • [x] Deployed to the Court's migration environment.

Review Steps

  1. Finish all other DOD
  2. Deploy to the dev environment
  3. Engineers add Needs UX Review label
  4. UX Review on dev environment (if feedback, implement and go back to step 2)
  5. UX add Needs Migration Deploy label
  6. Deploy to the Court's migration environment
  7. Engineers go through test scenarios on Court's migration environment
  8. Engineers add Needs PO Review label and move to Review/QA column
  9. PO review (if feedback, implement and go back to step 2)

This comprehensive process ensures that petitioners can easily and securely verify their accounts and access the DAWSON system, improving their overall experience and streamlining case management workflows. Making this process easier for the users makes the system better overall. The steps were carefully crafted for smooth integration. Following these steps is extremely important.