Friendly Captcha #4231
Ticket(s) / Related Merge Requests
- Issue card - #4231 (closed)
- Frontend - front!1851 (merged)
- Backend - engine!992 (merged)
- Nginx - minds!199 (merged)
- Cypress cypress-tests!20 (merged)
- Helm helm-charts!58 (merged)
Summary of Changes
This MR adds Friendly Captcha to the register page.
Note: After careful investigation of the library, we realized it's almost impossible to use it as is in RN since it's using many web APIs (web worker, document, listeners, WASM) and the library is generally tightly coupled with its template. So as a workaround, we've attempted to use the same lib in a WebView.
Testing Considerations
- set the API URL to https://feat-friendly-captcha-2272.minds.io/ from the DevTools
- make sure
mob-4231-captcha
feature is enabled - register a new account on both platforms
- if for some reason the captcha wasn't finished when you press the register button, it should fall back to showing the legacy captcha
- note that one example of the captcha failing is when the API_URL isn't changed to https://feat-friendly-captcha-2272.minds.io/ (useful for testing)
- It's ideal to test on the oldest devices we support to see if the webView works properly.
- if the registration failed from the server side (bad email or something) the captcha should automatically regenerate and a new captcha should be sent to the server (we shouldn't face a "this puzzle has already been solved" message)
- detox tests should be unaffected because we're using the legacy captcha as a fallback
Regression Scope
- register page when feature flag is off
- register page when feature flag is on
Platform Affected (web, mobile, etc)
both
Developer Testing Completed
manual, sandbox
Screenshots
https://www.loom.com/share/7500e3615c4342dd88bb0a6012fb5fa7
https://www.loom.com/share/98fef3916dfa4989b8ed92a838f191e8
Does this impact
-
Localization -
Dark/light mode
Edited by Manish