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

2133 tribe discoverability #2999

Merged
merged 10 commits into from
Jun 26, 2024
Merged

2133 tribe discoverability #2999

merged 10 commits into from
Jun 26, 2024

Conversation

jtimpe
Copy link

@jtimpe jtimpe commented May 20, 2024

Summary of Changes

Pull request closes #2133

How to Test

cd tdrs-backend && docker-compose up
cd tdrs-frontend && docker-compose up --build
  1. Open http://localhost:3000/ and sign in. Make sure your user is in the Initial access request state and has no location or roles assigned.
  2. Navigate to /home and fill out the request access form
  3. Select a jurisdiction type, inspect how the stt selection box updates based on the selected type.
    • Note, if you have selected a jurisdiction type, selected an stt for that jurisdiction, and then change your jurisdiction type, the select-box does not clear out. You have to click into the select-box, then click out to clear the selection. This is a bug in uswds. The logic to clear the selection on jurisdiction type change has been added, so we should see it work immediately upon upgrade if this is fixed in an later version of uswds.
  4. Complete access request

Deliverables

Checklist of ACs:

  • Autocomplete is NOT be enabled on the STT combobox field
  • STT combobox appears after jurisdiction type radio button selection
  • STT combobox is dynamically labeled based on radio selection
  • Combobox options are limited to the scope of the radio selection
  • Form errors reflect the number of visible errors (e.g. error count should not read 3 and not 4 if a user attempts to submit the form without choosing a jurisdiction type
  • Keyboard navigable. Test via activating a screenreader and navigating the form with keyboard only. The below should be default behavior but it's worth explicitly testing on a dynamic form.
    • The STT combobox shouldn't be tabbable before it's visible
    • Once a radio selection is made and the combobox appears it should be the next tab stop after the radio select.
  • lfrohlich and/or adpennington confirmed that ACs are met.

Deliverable 2: Tested Code

  • Are all areas of code introduced in this PR meaningfully tested?
    • If this PR introduces backend code changes, are they meaningfully tested?
    • If this PR introduces frontend code changes, are they meaningfully tested?
  • Are code coverage minimums met?
    • Frontend coverage: [insert coverage %] (see CodeCov Report comment in PR)
    • Backend coverage: [insert coverage %] (see CodeCov Report comment in PR)

Deliverable 3: Properly Styled Code

  • Are backend code style checks passing on CircleCI?
  • Are frontend code style checks passing on CircleCI?
  • Are code maintainability principles being followed?

Deliverable 4: Accessible

  • Does this PR complete the epic?
  • Are links included to any other gov-approved PRs associated with epic?
  • Does PR include documentation for Raft's a11y review?
  • Did automated and manual testing with iamjolly and ttran-hub using Accessibility Insights reveal any errors introduced in this PR?

Deliverable 5: Deployed

  • Was the code successfully deployed via automated CircleCI process to development on Cloud.gov?

Deliverable 6: Documented

  • Does this PR provide background for why coding decisions were made?
  • If this PR introduces backend code, is that code easy to understand and sufficiently documented, both inline and overall?
  • If this PR introduces frontend code, is that code easy to understand and sufficiently documented, both inline and overall?
  • If this PR introduces dependencies, are their licenses documented?
  • Can reviewer explain and take ownership of these elements presented in this code review?

Deliverable 7: Secure

  • Does the OWASP Scan pass on CircleCI?
  • Do manual code review and manual testing detect any new security issues?
  • If new issues detected, is investigation and/or remediation plan documented?

Deliverable 8: User Research

Research product(s) clearly articulate(s):

  • the purpose of the research
  • methods used to conduct the research
  • who participated in the research
  • what was tested and how
  • impact of research on TDP
  • (if applicable) final design mockups produced for TDP development

Copy link

codecov bot commented May 20, 2024

Codecov Report

Attention: Patch coverage is 92.30769% with 1 line in your changes missing coverage. Please review.

Project coverage is 93.10%. Comparing base (00ac3d1) to head (14ca954).
Report is 4 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #2999      +/-   ##
===========================================
+ Coverage    93.05%   93.10%   +0.05%     
===========================================
  Files          276      275       -1     
  Lines         7108     7047      -61     
  Branches       599      601       +2     
===========================================
- Hits          6614     6561      -53     
+ Misses         399      392       -7     
+ Partials        95       94       -1     
Flag Coverage Δ
dev-backend 93.18% <ø> (+0.06%) ⬆️
dev-frontend 92.60% <92.30%> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
tdrs-frontend/src/components/ComboBox/ComboBox.jsx 100.00% <100.00%> (ø)
...rontend/src/components/STTComboBox/STTComboBox.jsx 90.90% <100.00%> (+0.90%) ⬆️
tdrs-frontend/src/components/Home/Home.jsx 98.21% <87.50%> (-1.79%) ⬇️

... and 1 file with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d100935...14ca954. Read the comment docs.

@jtimpe jtimpe self-assigned this May 22, 2024
@jtimpe jtimpe added raft review This issue is ready for raft review a11y-review PR is ready for accessibility review labels May 22, 2024
@@ -171,7 +177,52 @@ function Home() {
handleChange={handleChange}
handleBlur={handleBlur}
/>
{shouldShowSttComboBox && (
<div className="usa-form-group">
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Im no frontend guy so take my question with a grain of salt! Should this get moved into it's own component?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yep! it absolutely should. there are a few idiosyncrasies with the radio input behavior that made me feel un-confident moving it over to its own component, but i captured that task and open question in #3015

Copy link

@elipe17 elipe17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One general question but works as advertised!

Copy link

@raftmsohani raftmsohani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@reitermb reitermb added the Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI label Jun 11, 2024
@reitermb reitermb added Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI and removed Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI labels Jun 12, 2024
Copy link

@reitermb reitermb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Looking good on the auto-scans and on manual screen reader testing. 🚀

@reitermb reitermb removed the Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI label Jun 12, 2024
@jtimpe jtimpe added QASP Review and removed raft review This issue is ready for raft review a11y-review PR is ready for accessibility review labels Jun 12, 2024
@jtimpe jtimpe requested a review from ADPennington June 12, 2024 20:36
@reitermb reitermb added the Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI label Jun 13, 2024
@reitermb reitermb requested a review from ttran-hub June 13, 2024 20:19
@ttran-hub
Copy link
Collaborator

image

Looking good on the auto-scans and on manual screen reader testing. 🚀

The radio buttons that help split and compress the STT drop-down list are a great addition. Thanks Team! a11y lgtm!🚀

@ADPennington ADPennington added Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI and removed Deploy with CircleCI-raft Deploy to https://tdp-frontend-raft.app.cloud.gov through CircleCI labels Jun 26, 2024
@ADPennington
Copy link
Collaborator

@reitermb @ttran-hub do you all have time to add this change to the PR with the release notes? Please note the caveat @jtimpe mentions in the summary.

This PR will be approved today.

@@ -171,7 +177,52 @@ function Home() {
handleChange={handleChange}
handleBlur={handleBlur}
/>
{shouldShowSttComboBox && (
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jtimpe looks like we are undoing the work implemented here to display the STT combobox only for those who sign-in via login.gov. When ACF users request access they do not see the combobox because they are associated with the federal government. in the screenshot below s=staging, q = qasp. i included the email that acf user receives which reflects the missing STT option (this is to be addressed in a future ticket).

2133p2
2133p1

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good catch, thank you. i added the conditional around the Jurisdiction Type selection

Copy link
Collaborator

@ADPennington ADPennington left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jtimpe @reitermb summary of review below:

  • STT request access screen appears as expected ✔️
  • request access emails for STTs appear as expected ✔️
  • ACF request access screen appears as expected ⚠️
  • request access emails for ACF user appear as expected (to-do in future ticket) 📋
  • TDP Knowledge Center updated to reflect change (to-do in KC ticket) 📋

@ADPennington ADPennington removed the Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI label Jun 26, 2024
@jtimpe jtimpe requested a review from ADPennington June 26, 2024 17:57
@reitermb
Copy link

@reitermb @ttran-hub do you all have time to add this change to the PR with the release notes? Please note the caveat @jtimpe mentions in the summary.

This PR will be approved today.

Is this what you had in mind? Threw together a quick draft

Improved the usability of TDP's request access form

First-time users to TDP provide their first name, last name, and associated state, tribe, or territory to help OFA administrators confirm that they should be granted access to the system. We've enhanced the form by separating the selection of whether you work at a state, tribe, or territory from the selection of the name of that jurisdiction to eliminate confusion about whether tribes need to select the name of their tribal program or the name of the state it's located in.

@reitermb
Copy link

@ADPennington Also noting that we'll throw an updated screenshot / content onto the request access steps of our getting started in TDP guides.

@ADPennington ADPennington added the Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI label Jun 26, 2024
@ADPennington
Copy link
Collaborator

@reitermb @ttran-hub do you all have time to add this change to the PR with the release notes? Please note the caveat @jtimpe mentions in the summary.
This PR will be approved today.

Is this what you had in mind? Threw together a quick draft

Improved the usability of TDP's request access form

First-time users to TDP provide their first name, last name, and associated state, tribe, or territory to help TDP administrators confirm access to the system. We've made revisions to the form by adding the jurisdiction type (state, tribe, or territory). After selecting the jurisdiction type, the user can more quickly locate and select the appropriate jurisdiction from the dropdown menu. the eliminate confusion about whether tribes need to select the name of their tribal program or the name of the state it's located in.

@reitermb made some minor revisions above. recommend taking this conversation to the relevant KC ticket or PR. thank you!

@ADPennington
Copy link
Collaborator

@jtimpe i ran into a migration issue on this PR.

@jtimpe
Copy link
Author

jtimpe commented Jun 26, 2024

@jtimpe i ran into a migration issue on this PR.

@ADPennington it was failing to connect to the db for some reason - could have been a broken ssh tunnel or maintenance issue, i'm not sure. but i re-ran and it made it past the migration step.

@ADPennington ADPennington removed QASP Review Deploy with CircleCI-qasp Deploy to https://tdp-frontend-qasp.app.cloud.gov through CircleCI labels Jun 26, 2024
Copy link
Collaborator

@ADPennington ADPennington left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

acf request form looks good! thanks @jtimpe 🚀
2133p3

@jtimpe jtimpe merged commit 4316a8f into develop Jun 26, 2024
26 checks passed
@jtimpe jtimpe deleted the 2133-tribe-discoverability branch June 26, 2024 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Dev] Enhancement for Request Access form (Tribe discoverability)
6 participants