* Allow passing auditLog extra info in addEmailAddress
* Create script re_add_deleted_emails.mjs
* Check email validity when parsing the CSV
* Allow no IP and initiator for the log events
* Add an acceptance test on re_add_deleted_emails
* Fix remove_unconfirmed_emails.mjs
We're not planning to run this again, but this could help if some code from here ever gets copy-pasted
* Fix remove_unconfirmed_emails.mjs
Rename `emailsToRemove` to `emailsToRemoveCandidates`
* Remove console.logs of event logs:
That's unnecessary complexity and we already have the data from the previous script
* Copy `addEmailAddress` into the script
* Handle primary emails correctly
* Ignore a TS error
* Fix async function in createUsers (tests)
* Add assertion for already in use emails in ReAddDeletedEmailsTests
* Add information in admin-panel for add-email audit logs
GitOrigin-RevId: f8480426d7b323f88a268874488d9ae641bc6045
* Create script: remove_unconfirmed_emails.mjs
* Update script remove_unconfirmed_emails.mjs after pairing
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
* Add user counts. Add timing
* Revert previous changes: just remove the fully unconfirmed emails
* Add tests on scripts/remove_unconfirmed_emails.mjs
* Update audit log so `removedEmail` is a string and doesn't break the admin-panel audit logs list
* Update remove_unconfirmed_emails to have a `--generate` and a `--consume` mode
* Update tests on remove_unconfirmed_emails
* Add tests checking that `--consume` doesn't delete any email
* Update script so `--consume` checks that emails shouldn't be deleted again!
* Update CSV path to `/tmp/...`
* Add test cases: deleted users, deleted email, comma in email
---------
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
GitOrigin-RevId: 8c60b56bcdfa33bc6143d66c32a5f430fb76f6d7