Skip to content

Add a Idv::ByMail::ResendLetterController and associated routes#10864

Merged
jmhooper merged 1 commit intomainfrom
jmhooper-add-resend-letter-controller-and-routes
Jun 25, 2024
Merged

Add a Idv::ByMail::ResendLetterController and associated routes#10864
jmhooper merged 1 commit intomainfrom
jmhooper-add-resend-letter-controller-and-routes

Conversation

@jmhooper
Copy link
Contributor

This commit begins the process of splitting the Idv::ByMail::RequestLetter controller into 2 separate controllers:

  1. A controller for requesting a letter in the IdV workflow
  2. A controller for requesting a new letter after the IdV workflow from the enter-code step

This change is being made because the current Idv::ByMail::RequestLetter controller is built like an IdV-Step controller but has some hacks to enable it to be visited outside the IdV flow to support resends. These exceptions lead to a number of inconsistencies that risk becoming bugs as we make changes to the GPO flow.

This commit makes the first part of the change: Adding the new controller and setting up routes for it. A future change will start directing traffic to the new routes and a further change will remove the old routes.

This commit begins the process of splitting the `Idv::ByMail::RequestLetter` controller into 2 separate controllers:

1. A controller for requesting a letter in the IdV workflow
2. A controller for requesting a new letter after the IdV workflow from the enter-code step

This change is being made because the current `Idv::ByMail::RequestLetter` controller is built like an IdV-Step controller but has some hacks to enable it to be visited outside the IdV flow to support resends. These exceptions lead to a number of inconsistencies that risk becoming bugs as we make changes to the GPO flow.

This commit makes the first part of the change: Adding the new controller and setting up routes for it. A future change will start directing traffic to the new routes and a further change will remove the old routes.

[skip changelog]
@jmhooper jmhooper requested a review from a team June 25, 2024 18:15
Copy link
Contributor

@matthinz matthinz left a comment

Choose a reason for hiding this comment

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

Will this mean we can ultimately get rid of RequestLetterPresenter?

@jmhooper
Copy link
Contributor Author

Will this mean we can ultimately get rid of RequestLetterPresenter?

https://github.com/18F/identity-idp/pull/10858/files#diff-8202cac4aec44e67e36838429c7665263fec62b0ed3b7142d2d1a437382f7553L1

🪦

@jmhooper jmhooper merged commit 6682a3e into main Jun 25, 2024
@jmhooper jmhooper deleted the jmhooper-add-resend-letter-controller-and-routes branch June 25, 2024 18:58
jmhooper added a commit that referenced this pull request Jun 27, 2024
The `ResendLetterController` was introduced in #10864. It was not used to support the 50/50 state when old instances will not have the route and would 404 if users were linked there.

Once the changes in #10864 are fully merged this change can be merged to start linking users to the new `ResendLetterController`. From there the functionality to support resends can be removed from the `RequestLetterController`.

[skip changelog]
jmhooper added a commit that referenced this pull request Jun 28, 2024
The `ResendLetterController` was introduced in #10864. It was not used to support the 50/50 state when old instances will not have the route and would 404 if users were linked there.

Once the changes in #10864 are fully merged this change can be merged to start linking users to the new `ResendLetterController`. From there the functionality to support resends can be removed from the `RequestLetterController`.

[skip changelog]
jmhooper added a commit that referenced this pull request Jul 1, 2024
In #10864 a new controller was introduced to handle resends. In #10865 the controller started being used. Once both of those changes are fully deployed this change can be merged to remove the resend funcitonality from the `RequestLetterController`.

This change will make the `RequestLetterController` behave like the rest of the IdV-step controllers. It will no longer be accessible outside of the IdV workflow.

[skip changelog]
jmhooper added a commit that referenced this pull request Jul 1, 2024
…10866)

In #10864 a new controller was introduced to handle resends. In #10865 the controller started being used. Once both of those changes are fully deployed this change can be merged to remove the resend functionality from the `RequestLetterController`.

This change will make the `RequestLetterController` behave like the rest of the IdV-step controllers. It will no longer be accessible outside of the IdV workflow.

[skip changelog]
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.

2 participants