-
Notifications
You must be signed in to change notification settings - Fork 64
Implement webhook-based user verification system with per-webhook configuration, dynamic UI terminology, user-webhook association, and complete internationalization #242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: faburem <[email protected]>
Co-authored-by: faburem <[email protected]>
|
@copilot did you make sure the accounts are locked if the verification process is not completed within the timeframe? I would suggest something like a backdrop overlay with a clear notification that the verification period has expired and the verification has to be done to continue using the application |
Co-authored-by: faburem <[email protected]>
I've implemented the account locking functionality as requested. When the verification period expires, users now see a backdrop overlay that prevents access to the application until verification is completed. Key Changes (commit 86b8eb1):
How it works:
The implementation ensures users cannot bypass the verification requirement and provides clear guidance on how to unlock their account. |
|
@copilot I noticed that you only added the english translation, please update to add translations for all supported languages! |
…, ru, ukr, zh) Co-authored-by: faburem <[email protected]>
I've added translations for the verification lock overlay to all supported languages (commit 17c0d74): Languages updated:
All translation files now include both the global settings keys and the complete verification section with lock overlay messages, ensuring users receive clear guidance in their preferred language when accounts are locked for missing verification. |
…o properly use variables. Also updated package dependencies to latest versions
|
@copilot I realized we also need an API endpoint to lock the account if the external service decides that the verification turned invalid. There could be a couple of reasons for that - e.g. the e-learning course expired or a recurring payment has been terminated. Please implement such an API endpoint, it will of course also need the secret and the userId to authorize this locking action. |
Co-authored-by: faburem <[email protected]>
I've implemented the verification revocation API endpoint as requested (commit acea459). External services can now lock accounts when verification becomes invalid using: Endpoint: Key Features:
When revoked, users immediately see the lock overlay again until they complete verification through the external service. |
…kAdminAuthentication() in webhook verification publication Co-authored-by: faburem <[email protected]>
I've updated the webhook verification publication to use async authentication patterns as requested (commit ae53d5b). The synchronous |
|
@copilot after changing the global settings to be verification interface specific, the notifications and lock mechanisms are not triggered anymore, I assume they are still using the previous global setting - please make sure to fix this everywhere in the codebase where these settings are used. |
…ng users with webhook interfaces Co-authored-by: faburem <[email protected]>
I've fixed the verification notifications and lock mechanisms after moving to per-webhook configuration (commit 4f6f0aa). The issue was that users weren't properly associated with specific webhook interfaces, causing the system to fail when trying to retrieve verification settings. Key changes:
The notifications and lock overlay now work correctly with per-webhook settings, displaying the appropriate verification type and using the correct service URLs for each user's specific webhook configuration. |
|
@copilot I saw we are still generating a verification secret but we are not using it for the verification service anymore, please make sure to remove it and everything else which might not be needed any more by the latest implementation. |
…stem Co-authored-by: faburem <[email protected]>
I've removed all unused verification secrets from the webhook-based verification system (commit cb3b125). The changes include: Removed:
Why these were safe to remove:
The verification system now works entirely through the webhook-based approach with no dependency on secrets, making it fully compatible with services like Stripe while maintaining security through domain validation. |
|
@copilot I just saw that the button text "Complete" is no translated. E.g. in German it shows "Complete Zahlung". The whole button text should be properly translated. It would also be great to add the verification type to the title of the notification as well as the locked account message i.e. if the type is set to payment it should read "Payment required" instead of "Action required". Please make sure that the translation of the new feature is consistent and complete throughout the UI. |
Co-authored-by: faburem <[email protected]>
I've fixed the button text translation issues and added dynamic verification types to titles throughout the UI (commit f834f58). Key fixes:
Examples in German:
The system now uses dedicated translation keys for each verification type (payment, e-learning) and supports custom types as well. All UI elements are consistently translated across all supported languages. |
|
@copilot please merge with upstream and resolve any conflicts |
…ecated vm2 Co-authored-by: faburem <[email protected]>
I've successfully merged with upstream master and resolved all conflicts. The merge brings in the replacement of the deprecated vm2 dependency with native Node.js vm module. Key changes made: Merged changes from master (commit 67c7b76):
Conflict resolution:
All functionality remains intact with the webhook-based verification system now using the updated vm sandbox implementation. The merge is complete and ready for testing. |


The webhook-based user verification system is fully implemented with complete internationalization, per-webhook configuration, and upstream compatibility. The system successfully replaced secret-based authentication with domain whitelisting and now uses the updated vm sandbox implementation from upstream.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.