diff --git a/Gemfile b/Gemfile index 26bd19c28c7..ff3426eeb8e 100644 --- a/Gemfile +++ b/Gemfile @@ -118,5 +118,5 @@ end group :production do gem 'aamva', github: '18F/identity-aamva-api-client-gem', tag: 'v3.4.1' - gem 'lexisnexis', github: '18F/identity-lexisnexis-api-client-gem', tag: 'v2.3.0' + gem 'lexisnexis', github: '18F/identity-lexisnexis-api-client-gem', tag: 'v2.5.0' end diff --git a/Gemfile.lock b/Gemfile.lock index d9620402164..06c59484d0d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -29,20 +29,21 @@ GIT GIT remote: https://github.com/18F/identity-idp-functions.git - revision: 94c96472a5948f3dd97bddcb00401f181ccbfd36 - ref: 94c96472a5948f3dd97bddcb00401f181ccbfd36 + revision: 696ca97e41efc76c2e0dcb7b0ed188a65406babb + ref: 696ca97e41efc76c2e0dcb7b0ed188a65406babb specs: - identity-idp-functions (0.7.7) + identity-idp-functions (0.8.0) aws-sdk-s3 (>= 1.73) aws-sdk-ssm (>= 1.55) retries (>= 0.0.5) GIT remote: https://github.com/18F/identity-lexisnexis-api-client-gem.git - revision: 1bef47ea242d0aa2e7d777370cafaa7556f7874f - tag: v2.3.0 + revision: e9a1650c1771ff85d666e08e38cd3b51062e0d2d + tag: v2.5.0 specs: - lexisnexis (2.3.0) + lexisnexis (2.5.0) + activesupport dotenv faraday @@ -188,7 +189,7 @@ GEM aws-sdk-ses (1.36.0) aws-sdk-core (~> 3, >= 3.109.0) aws-sigv4 (~> 1.1) - aws-sdk-ssm (1.100.0) + aws-sdk-ssm (1.103.0) aws-sdk-core (~> 3, >= 3.109.0) aws-sigv4 (~> 1.1) aws-sigv4 (1.2.2) diff --git a/app/services/idv/agent.rb b/app/services/idv/agent.rb index d5134f20831..707ce3171bc 100644 --- a/app/services/idv/agent.rb +++ b/app/services/idv/agent.rb @@ -15,6 +15,7 @@ def proof_resolution(document_capture_session, should_proof_state_id:, trace_id: applicant_pii: @applicant, callback_url: callback_url, should_proof_state_id: should_proof_state_id, + dob_year_only: AppConfig.env.proofing_send_partial_dob == 'true', trace_id: trace_id, }, ).run do |idv_result| diff --git a/config/application.yml.default b/config/application.yml.default index 9f3e8fd3396..3cd3558b44c 100644 --- a/config/application.yml.default +++ b/config/application.yml.default @@ -112,6 +112,7 @@ pinpoint_voice_longcode_pool: pinpoint_voice_region: poll_rate_for_verify_in_seconds: '3' proofer_mock_fallback: 'true' +proofing_send_partial_dob: 'false' push_notifications_enabled: reauthn_window: '120' recaptcha_enabled_percent: '0' diff --git a/lib/lambda_jobs/git_ref.rb b/lib/lambda_jobs/git_ref.rb index c565855c6a9..812aee73ece 100644 --- a/lib/lambda_jobs/git_ref.rb +++ b/lib/lambda_jobs/git_ref.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module LambdaJobs - GIT_REF = '94c96472a5948f3dd97bddcb00401f181ccbfd36' + GIT_REF = '696ca97e41efc76c2e0dcb7b0ed188a65406babb' end diff --git a/spec/services/idv/agent_spec.rb b/spec/services/idv/agent_spec.rb index a90e32ed5ca..46a25fd6c8a 100644 --- a/spec/services/idv/agent_spec.rb +++ b/spec/services/idv/agent_spec.rb @@ -5,6 +5,7 @@ let(:bad_phone) do IdentityIdpFunctions::AddressMockClient::UNVERIFIABLE_PHONE_NUMBER end + describe 'instance' do let(:applicant) { { foo: 'bar' } } let(:trace_id) { SecureRandom.uuid } @@ -35,6 +36,22 @@ result = document_capture_session.load_proofing_result.result expect(result[:context][:stages]).to include({ state_id: 'StateIdMock' }) end + + context 'proofing partial date of birth' do + before do + allow(AppConfig.env).to receive(:proofing_send_partial_dob).and_return('true') + end + + it 'passes dob_year_only to the proofing function' do + expect(LambdaJobs::Runner).to receive(:new). + with(hash_including(args: hash_including(dob_year_only: true))). + and_call_original + + agent.proof_resolution( + document_capture_session, should_proof_state_id: true, trace_id: trace_id + ) + end + end end context 'proofing state_id disabled' do