Skip to content

LG-16446: Rename gpo_letter_requested (Part 1)#12434

Merged
solipet merged 3 commits intomainfrom
dprice/lg-16446-letter-sent-before-requested
Aug 20, 2025
Merged

LG-16446: Rename gpo_letter_requested (Part 1)#12434
solipet merged 3 commits intomainfrom
dprice/lg-16446-letter-sent-before-requested

Conversation

@solipet
Copy link
Contributor

@solipet solipet commented Aug 16, 2025

🎫 Ticket

Link to the relevant ticket:
LG-16446

🛠 Summary of changes

Part 1 of 2 to avoid 50/50 problems

The idv_session flag gpo_letter_requested seems like, if set to true, would indicate that the user has requested a letter. This is not the case - this flag is set when the user visits the Verify by mail page, and it's purpose is to allow reuse on the address controller to modify the copy for the Mailing address entry. To avoid future confusion, we will rename this field gpo_request_letter_visited.

This PR adds the field gpo_request_letter_visited, writes to both new and old fields, and reads from new || old. In a follow-on PR, after this PR is deployed to prod, we will remove all references to the old name.

While in here I noticed/fixed two other bugs:

  1. The feature specs that check that we can go back to the address page, re-verify and land back on the request_letter page were looking for the title "Verify your address" on the page. Unfortunately, the Verify your phone page (the other possibility from Verify your info) includes the link "Verify your address by mail instead" so the test passed regardless of which page the user lands on. I now check t('idv.messages.gpo.address_on_file') which only appears on the request_letter page.
  2. I noticed that when we returned to the address page, the step indicator reverted to the standard flow. I now check gpo_request_letter_visited and show the GPO steps if we will be returned to the request letter page.

`idv_session.gpo_letter_requested` is renamed to
`idv_session.gpo_request_letter_visited` to more accurately reflect the
state being captured. This value is used when the user needs to go back
and verify their mailing address which may be different from the address
the user previously verified.

changelog: Bug Fixes, GPO Letter request, Record that the request letter page has been visited.
mail step - we can't simply check for `t('idv.titles.mail.verify')`
(Verify by mail) because that phrase appears on the Phone step page in
the link to choose the GPO path. Changed to check for other content in
the body of the page instead.

Also found/fixed a bug where we weren't showing the GPO step indicator
steps when the user went back to enter their mailing address.
@solipet solipet changed the title LG-16446: Rename gpo_letter_requested LG-16446: Rename gpo_letter_requested (Part 1) Aug 19, 2025
@solipet solipet requested a review from mitchellhenke August 19, 2025 19:25
Copy link
Contributor

@shanechesnutt-ft shanechesnutt-ft left a comment

Choose a reason for hiding this comment

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

Things look go to me. Nice work! 👍🏻

One thing that did stick out to me was a consideration for how we are interacting with items stored in the idv_session. I wonder if we can minimize the number of changes for 50/50 state PRs by using methods that handle storing and reading data from idv_session rather than interacting with the state directly. Then the only thing that needs to be done is updating those store and read methods. Maybe an improvement for the future.

@solipet solipet merged commit 5856dce into main Aug 20, 2025
1 check passed
@solipet solipet deleted the dprice/lg-16446-letter-sent-before-requested branch August 20, 2025 18:09
mitchellhenke pushed a commit that referenced this pull request Aug 21, 2025
* LG-16625 fetch docv results before timeout (#12409)

* add synchronous fetch if request is timed out

* add analytics event of socure_webhook_missing

* passing specs

* change fetch method name for docv results

* add changelog

changelog: Bug Fixes, Doc Auth, fetch docv results synchronously if webhook queues are backed up

* fix lint

* remove socure test mode from feature specs

* see if this passes feature specs

* trying to pass feature spec again

* remove unused context

* LG-16330 Update selfie-specific error message content (#12403)

* changelog: User-Facing Improvements, Identity Verification, Update
  error message for selfie portrait matching failures to provide clearer instructions on how to take a better photo

* Fix YAML formatting in French locale

* external contributor guidelines (#12429)

* Update URL
* Update EXTERNAL_CONTRIBUTORS.md
* changelog: Internal, Documentation, External contributor guidelines

---------

Co-authored-by: Jessica Dembe <jessica.dembe@gsa.gov>

* Enable deprecation warnings in tests (#12436)

* Enable deprecation warnings in tests

changelog: Internal, Testing, Enable deprecation warnings in tests

* use prism

* Update Ruby and Yarn versions (#12380)

* Update Ruby and Yarn versions

changelog: Internal, Maintenance, Update Ruby and Yarn versions

* Use specific version of chrome/chromedriver

* update deps

* update load paths test

* update js dependencies

* update deploy dockerfile

* Bump libphonenumber-js from 1.12.12 to 1.12.13 (#12440)

Bumps [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) from 1.12.12 to 1.12.13.
- [Changelog](https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/catamphetamine/libphonenumber-js/compare/v1.12.12...v1.12.13)

---
updated-dependencies:
- dependency-name: libphonenumber-js
  dependency-version: 1.12.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* LG-16446: Rename gpo_letter_requested (Part 1) (#12434)

`idv_session.gpo_letter_requested` is renamed to
`idv_session.gpo_request_letter_visited` to more accurately reflect the
state being captured. This value is used when the user needs to go back
and verify their mailing address which may be different from the address
the user previously verified.

changelog: Bug Fixes, GPO Letter request, Record that the request letter page has been visited.

* Discovered a false positive when testing that we are on the Verify by
mail step - we can't simply check for `t('idv.titles.mail.verify')`
(Verify by mail) because that phrase appears on the Phone step page in
the link to choose the GPO path. Changed to check for other content in
the body of the page instead.

Also found/fixed a bug where we weren't showing the GPO step indicator
steps when the user went back to enter their mailing address.

* defend against the 50/50 state

* Update support-action to perform a way to unblock device profiling result (#12439)

* changelog: Internal, Threatmetrix, Update Device profiling rake task to simplify for folks how we can process it

* changelog: Internal, Threatmetrix account creation, add updating device profiling result to action-account

* fix schema

* add rspec for new action account subtask

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Alex Bradley <alexander.bradley@gsa.gov>
Co-authored-by: Malik Warren <33402370+Mawar2@users.noreply.github.com>
Co-authored-by: Davi (she/they) <davida.marion@gsa.gov>
Co-authored-by: Jessica Dembe <jessica.dembe@gsa.gov>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Doug Price <douglas.price@gsa.gov>
Co-authored-by: Malick Diarra <malick.diarra@gsa.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants