LG-8867: New page to inform user of GPO only#8011
Conversation
app/services/vendor_status.rb
Outdated
There was a problem hiding this comment.
Should gpo_only? and allow_hybrid_flow? go in FeatureManagement, since they depend on vendor status and configuration? I have some similar code for an idv_available? method in #7970 that I put in there for that reason.
There was a problem hiding this comment.
We renamed this class OutageStatus since the outage could be predicated on a vendor outage or a feature flag config option.
There was a problem hiding this comment.
Hmm, I think I preferred the separation of VendorStatus and FeatureManagement. To me it is not necessarily clear what OutageStatus is reporting on -- who is having the outage? Is it us or a vendor?
I think there's a clear separation between:
VendorStatus- which vendors are operational right now? Which classes (e.g. idv) of vendors are having trouble right nowFeatureManagement- given the larger state of the application, including configuration and vendor availability, what features are currently available to users?
There was a problem hiding this comment.
"Vendor" isn't really the right term either, though, because we aren't referring to vendors, but capabilities (ie, sms or voice).
As a middle ground, might I suggest we keep OutageStatus for services we use that are switched to out (phone etc) and FeatureManagement for user-facing features we want to be able to switch off, as @matthinz has suggested? In other words, let's move the gpo and hybrid screen switched to FeatureManagement but keep the rest as-is. Does that make sense?
Example:
def self.idv_hybrid_flow_enabled?
return false if not IdentityConfig.store.feature_idv_hybrid_flow_enabled
return false if OutageStatus.new.any_phone_vendor_outage?
true
endThere was a problem hiding this comment.
That works for me. I also wonder about bringing the :sms and :voice vendors more in line with the other ones (by actually naming them in ruby source, similar to Idv vendors) might be better long-term, but I'm happy to punt that to another day.
8a5aa2a to
84bbd6a
Compare
a9bb2dd to
10bca70
Compare
c924aa2 to
6a01b2e
Compare
matthinz
left a comment
There was a problem hiding this comment.
If the user restarts IdV (via a "Start Over" button), should we send them back to the outage notice screen instead of the welcome screen?
There was a problem hiding this comment.
Is this SSN context block needed here? I think I don't see how it relates.
There was a problem hiding this comment.
This is testing the version of the SSN step that is removed from the FSM (which is feature flagged) to make sure it's routing correctly. I'm not sure why it's showing up in this diff though. Something must have got moved around
There was a problem hiding this comment.
That feature flag is deleted in main, so this file is out of date.
matthinz
left a comment
There was a problem hiding this comment.
LGTM pending removing the ssn controller stuff in verify_info_step_spec.rb (and rebasing on main I guess). Nice work!
Co-authored-by: Doug Price <douglas.price@gsa.gov> changelog: User-Facing Improvements, vendor outage warnings, Pinpoint vendor outage screen
-- What 1. Updated header locales 2. Added session checking to controller for vendor_status 3. Added continue button 4. Updated the working test for page display
See added failing verify_info spec
Co-authored-by: Alex Bradley <alexander.bradley@gsa.gov>
Also removing unused locales
-- What 1. Updated the Outage show view to use the StatusPageComponent, for better uniformity; 2. Added a controller helper to determine which url to link to in the "Exit" button. In the case where there is an SP present and it has a valid return_to_sp_url set, the exit button will navigate to that URL. In all other cases it will return the user to the account page. NOTE: We had to change the yml configuration for local testing SPs so that it had a correct return_to_sp_url that we could actually test against. Co-authored-by: Douglas Price <douglas.price@gsa.gov>
Co-authored-by: Andrew Duthie <andrew.duthie@gsa.gov>
Co-authored-by: Andrew Duthie <andrew.duthie@gsa.gov>
if GPO verification is not enabled, redirect to vendor outage blocking page.
🎫 Ticket
LG-8867
🛠 Summary of changes
Introduces a new interstitial page that a user starting IDV will see once before the Welcome page informing the user that due to technical difficulties, we can only allow address verification via a letter.
This page is shown to a user if any of the following config flags are set:
vendor_status_sms: full_outagevendor_status_voice: full_outagefeature_idv_force_gpo_verification_enabled: trueAdditionally, the user is not presented with an option to do the hybrid flow if any of the following config flags are set:
vendor_status_sms: full_outagevendor_status_voice: full_outagefeature_idv_hybrid_flow_enabled: false👀 Screenshots
Coming from a service provider:
Hitting the /verify path directly (not available in production):
Spanish translation:
French translation: