Skip to content

LG 16327 update duplicate ssn logic ial2#12296

Merged
kevinsmaster5 merged 10 commits intomainfrom
LG-16327-kmas-update-duplicate-ssn-logic-ial2
Jul 7, 2025
Merged

LG 16327 update duplicate ssn logic ial2#12296
kevinsmaster5 merged 10 commits intomainfrom
LG-16327-kmas-update-duplicate-ssn-logic-ial2

Conversation

@kevinsmaster5
Copy link
Copy Markdown
Contributor

@kevinsmaster5 kevinsmaster5 commented Jun 27, 2025

🎫 Ticket

Link to the relevant ticket:
LG-16327

🛠 Summary of changes

Removes dependency on the DuplicateProfileConfirmation database object. The DB change will occur in a follow up PR.
Adds an check to the DuplicateProfileChecker service to ensure the profile belongs to a service provider issuer that is listed in the configuration eligible_one_account_providers

📜 Testing Plan

  1. Set config (application.yml) for eligible test SP.
    example:
    eligible_one_account_providers: '["urn:gov:gsa:openidconnect:sp:sinatra"]' for OIDC
  2. Create a few verified accounts using both OIDC and SAML test providers with
  • Facial Match Required
  • the same test SSN
  • different SSN
  • No Facial Match
  1. Sign in with the accounts and observe the expected screens appear
  • Other accounts with the same SSN, same SP, and have been verified using IAL2 should appear listed on the duplicate_profiles_detected screen
  1. Clicking either button will complete the sign in and log the appropriate event depending on which was chosen.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Since we're no longer letting folks continue with a duplicate - it doesn't seem like we need this.

@kevinsmaster5 kevinsmaster5 force-pushed the LG-16327-kmas-update-duplicate-ssn-logic-ial2 branch from 1fe5a8c to 0f8be5b Compare July 1, 2025 15:33
profile_id: profile.id,
confirmed_all: nil,
).present?
user_session[:duplicate_profile_id].present?
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

analytics.one_account_unknown_profile_detected
dupe_profile_confirmation.mark_some_profiles_not_recognized

user_session.delete(:duplicate_profile_id)
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This and the one below delete the session so the user can continue on to their intended destination.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

small nitpicky but can u put it as a plural. "duplicate_profile_ids" since there can be more than one.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

That's much better. Updated with b0ca32e

timestamp_html: render(TimeComponent.new(time: dupe_profile[:created_at])),
) %>
</p>
<% if dupe_profile[:last_sign_in] %>
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I added this in a previously un-merged PR. Individual local testing would throw an error if the test user hadn't logged in yet. I don't know if this would be a real-world problem.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

thanks yea i saw this. goood chatch.

@kevinsmaster5 kevinsmaster5 marked this pull request as ready for review July 2, 2025 16:19
@kevinsmaster5 kevinsmaster5 requested a review from a team July 2, 2025 16:19
def redirect_unless_user_has_active_duplicate_profile_confirmation
if current_user&.active_profile.present?
if dupe_profile_confirmation && dupe_profile_confirmation&.confirmed_all.nil?
if !user_session[:duplicate_profile_id].nil?
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

why not just check if its present? instead of a ! nil.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Revised with b0ca32e

@kevinsmaster5 kevinsmaster5 merged commit f628580 into main Jul 7, 2025
1 check passed
@kevinsmaster5 kevinsmaster5 deleted the LG-16327-kmas-update-duplicate-ssn-logic-ial2 branch July 7, 2025 15:45
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