Develop #3

Closed
DSR-Labs wants to merge 57 commits from develop into main
DSR-Labs commented 2025-11-17 17:08:07 +01:00 (Migrated from github.com)

Note

Adds a DB-backed log with ACP view and admin email notifications for deleted unconfirmed users, and refactors the cronjob and package setup to support them.

  • Core/Backend:
    • Add logging of deletions via wcf1_deleted_unconfirmed_user_log and data layer (DeletedUnconfirmedUserLog*).
    • Enhance cronjob DeleteUnconfirmedUsersCronjob: create log entries before deletion, limit handling, refined SQL/group checks, and send admin notifications.
  • Notifications:
    • Email admins on deletions using dynamic admin group detection and localized subjects/bodies.
  • ACP UI:
    • New sortable page DeletedUnconfirmedUsersLogPage with template to view logs.
    • Add ACP menu entry wcf.acp.menu.link.deletedUnconfirmedUsersLog and register page in page.xml.
  • Localization:
    • Add DE/EN strings for menu, log page, and notifications.
  • Packaging/Install:
    • Bump to 1.2.0; include database install script; add instructions for acpTemplate, acpMenu, page, and file deletion; adjust cronjob description.

Written by Cursor Bugbot for commit 6020e6f36a. This will update automatically on new commits. Configure here.

<!-- CURSOR_SUMMARY --> > [!NOTE] > Adds a DB-backed log with ACP view and admin email notifications for deleted unconfirmed users, and refactors the cronjob and package setup to support them. > > - **Core/Backend**: > - Add logging of deletions via `wcf1_deleted_unconfirmed_user_log` and data layer (`DeletedUnconfirmedUserLog*`). > - Enhance cronjob `DeleteUnconfirmedUsersCronjob`: create log entries before deletion, limit handling, refined SQL/group checks, and send admin notifications. > - **Notifications**: > - Email admins on deletions using dynamic admin group detection and localized subjects/bodies. > - **ACP UI**: > - New sortable page `DeletedUnconfirmedUsersLogPage` with template to view logs. > - Add ACP menu entry `wcf.acp.menu.link.deletedUnconfirmedUsersLog` and register page in `page.xml`. > - **Localization**: > - Add DE/EN strings for menu, log page, and notifications. > - **Packaging/Install**: > - Bump to `1.2.0`; include database install script; add instructions for `acpTemplate`, `acpMenu`, `page`, and file deletion; adjust cronjob description. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 6020e6f36a8eb6665d22161481d44bc834e6332b. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
cursor[bot] (Migrated from github.com) reviewed 2025-11-17 17:40:23 +01:00
cursor[bot] (Migrated from github.com) left a comment

This is the final PR Bugbot will review for you during this billing cycle

Your free Bugbot reviews will reset on December 17

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

### This is the final PR Bugbot will review for you during this billing cycle Your free Bugbot reviews will reset on December 17 <details> <summary>Details</summary> You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle. To receive Bugbot reviews on all of your PRs, visit the [Cursor dashboard](https://www.cursor.com/dashboard?tab=bugbot) to activate Pro and start your 14-day free trial. </details>
cursor[bot] (Migrated from github.com) commented 2025-11-17 17:40:23 +01:00

Bug: Email Body: Template Parameter Mismatch

The email body is constructed incorrectly. RecipientAwareTextMimePart expects a template name and variables array, but the code passes pre-rendered message strings. The third parameter $message (a string) should be an array of variables like ['count' => $deletedCount, 'username' => $admin['username']], and template names 'email_html' and 'email_plain' should be replaced with actual template identifiers.

Fix in Cursor Fix in Web

### Bug: Email Body: Template Parameter Mismatch <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The email body is constructed incorrectly. `RecipientAwareTextMimePart` expects a template name and variables array, but the code passes pre-rendered message strings. The third parameter `$message` (a string) should be an array of variables like `['count' => $deletedCount, 'username' => $admin['username']]`, and template names `'email_html'` and `'email_plain'` should be replaced with actual template identifiers. <!-- DESCRIPTION END --> <!-- LOCATIONS START files/lib/system/cronjob/DeleteUnconfirmedUsersCronjob.class.php#L115-L119 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjU1MTMxNzEyLWY4N2YtNDAzMi1hZThlLTMyOTAzMzMxMzU0NyIsImVuY3J5cHRpb25LZXkiOiJVcG9XaldydTlTdmNicUJ1bVQ4MmtrYlMzNElsc0ZSSnB2UnRNM094S1JNIiwiYnJhbmNoIjoiZGV2ZWxvcCJ9LCJpYXQiOjE3NjMzOTc2MjIsImV4cCI6MTc2NDAwMjQyMn0.G7TnXHkE40obNN3mSpUoe6ziThW0N-flhBznTwame8hPfoL1FRRQ56z73XfYc_XF641WihRZG5h0bRKnhJJpgru6gchDwGxw7tuYeMoEgADXhbX-OFdJhIuYcYOeXoog-AKV2X2sJbVwqabUx1jX3u0TPaRfAjAX8pCPm_nFci6GvftC6Jgq9b33ETkiN974QWZ4ggd0pUTALJjvupuLT88o_-x5a7vfcZFLykVfeECYhDuj7YBUVl-V9VcQntX3y5D3RY-huQDTiWCP8Wq6PMb27ANbXe_WOElPPrHrs1aGfQr1Sz_d0v_pMNNeS8lhHXMOtvASD6Snqfgz8j0rJA"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-cursor-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-cursor-light.svg"><img alt="Fix in Cursor" src="https://cursor.com/fix-in-cursor.svg"></picture></a>&nbsp;<a href="https://cursor.com/agents?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjU1MTMxNzEyLWY4N2YtNDAzMi1hZThlLTMyOTAzMzMxMzU0NyIsImVuY3J5cHRpb25LZXkiOiJVcG9XaldydTlTdmNicUJ1bVQ4MmtrYlMzNElsc0ZSSnB2UnRNM094S1JNIiwiYnJhbmNoIjoiZGV2ZWxvcCIsInJlcG9Pd25lciI6IkRlaW5lU3RyYWluUmV2aWV3c0RldiIsInJlcG9OYW1lIjoiZGUuZGVpbmVzdHJhaW5yZXZpZXdzLmF1dG9EZWxldGVVbmNvbmZpcm1lZFVzZXJzIiwicHJOdW1iZXIiOjMsImNvbW1pdFNoYSI6IjVmYzI4MWVjY2QzNDU2Yjg5ODhiOWYyNDdlNzhjYjE5YTcwODZmOGMifSwiaWF0IjoxNzYzMzk3NjIyLCJleHAiOjE3NjQwMDI0MjJ9.Xc51LORgmzclnM15gTQDIXdKwfRq00ItvQXHGjhwhdC8Mg4q6rsBzU5_e_lW3fUrbStxJEg3VFAA_j8leX9zwqL_nv_khbJmHtmlBN04IDrdgJE2EwDb7D6BPw6h6rWdyEHuJiyEMvCnJ2ZsvwJr-k-JQodvS3exJEZGoJfzdpmT2aA7XGixTHLrbr311agUUXsxtDSsHI8PgOEN7H__YmGQXTyAV83ZyYxpf1KS4jSUwq1CuudID2EeEsFylfgraiY4CgQer9FIiSmcFPCUyO4NCZ2-J8KGxEDP1QY1JSSkpj-kKhCYjD_PZ-oO4w7C2c85SxS7qGqv_sDo4BGbkQ"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-web-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-web-light.svg"><img alt="Fix in Web" src="https://cursor.com/fix-in-web.svg"></picture></a>
cursor[bot] (Migrated from github.com) reviewed 2025-11-17 17:51:22 +01:00
@ -6,8 +6,8 @@
<packagename language="de">Automatische Löschung unbestätigter Benutzer</packagename>
cursor[bot] (Migrated from github.com) commented 2025-11-17 17:51:22 +01:00

Bug: Release Dates Break Version History

The release date was set to 2025-01-15, which is earlier than the previous version's date of 2025-03-06. Package versions should have monotonically increasing dates to maintain a proper version history timeline.

Fix in Cursor Fix in Web

### Bug: Release Dates Break Version History <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The release date was set to `2025-01-15`, which is earlier than the previous version's date of `2025-03-06`. Package versions should have monotonically increasing dates to maintain a proper version history timeline. <!-- DESCRIPTION END --> <!-- LOCATIONS START package.xml#L8-L10 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjFlNThkODBmLTFhZDgtNGJmMS1hMDU4LTY5ODFhNzcyOWE1ZiIsImVuY3J5cHRpb25LZXkiOiJtV3V2LURfM1Q5S1RKUU9zYmxYanpuc1lLeUx1c1BUbWh3UjRJck1PTVdzIiwiYnJhbmNoIjoiZGV2ZWxvcCJ9LCJpYXQiOjE3NjMzOTgyODEsImV4cCI6MTc2NDAwMzA4MX0.VuiioGzEsQYo4Kz9GrMbPpi1lFL1NYfG_zc4SAPztKp07hwZf7uKVYRtJtiyKE4ddmuR7JNtKwfWGRq22ROb0Fu4KTKKI6esHcq0sb2Z2zp_pJxb17VrQ97ecbpdA-SrIUYc7BinBrp5tk3Y5FgENYS64EQ1UU1_2xgddhZyq4Ucox3jVEJ80K-c_oGLzKtBXjv0EwFIlCc28QBbtnhLXD7rxmbpQC9IY1VtVoaYQO7AKxkfM2vr0-WiqE2D87-txpmXowrZBgmPBnCiU-gOt-NEHly4M6v35l0TByjP0rqw_I_kaIunajynwgLBIHGNyAwLXBkH8_d39zO_9TP-7w"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-cursor-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-cursor-light.svg"><img alt="Fix in Cursor" src="https://cursor.com/fix-in-cursor.svg"></picture></a>&nbsp;<a href="https://cursor.com/agents?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjFlNThkODBmLTFhZDgtNGJmMS1hMDU4LTY5ODFhNzcyOWE1ZiIsImVuY3J5cHRpb25LZXkiOiJtV3V2LURfM1Q5S1RKUU9zYmxYanpuc1lLeUx1c1BUbWh3UjRJck1PTVdzIiwiYnJhbmNoIjoiZGV2ZWxvcCIsInJlcG9Pd25lciI6IkRlaW5lU3RyYWluUmV2aWV3c0RldiIsInJlcG9OYW1lIjoiZGUuZGVpbmVzdHJhaW5yZXZpZXdzLmF1dG9EZWxldGVVbmNvbmZpcm1lZFVzZXJzIiwicHJOdW1iZXIiOjMsImNvbW1pdFNoYSI6IjVmMmQ5YmQwY2Y4NzYyOGVjZTg0ZGI4Y2ZhNDliNDViODc0Y2Y5NjYifSwiaWF0IjoxNzYzMzk4MjgxLCJleHAiOjE3NjQwMDMwODF9.WPLktHNqWKJOkzxBlnDYo6OeveCp5CqRN09TjOOxuCb8BQpswGicPcjjdUgpfPXnBuJqO-ooU5KYydHvQW0AoraUY2PCMGJnXfFTpWAAea2K-cI9k0s8rESErRL6H6vNOh5b8FowsAQYIEKtmbtGSJgOTJ2aPWbzJqfai8Rpb34QdNUtGkso2nY5ASDCCu1t2Qoxr6UIVU33gKFsOjMNfMBOgqgORlQ5FO-F6WR3o_u6AYz2CiuWdpWjEjXU8Zrs1tF6ajeydoUUKNxej0GcnasqyUwShp4lSOifJgm1YHdYUInOt3obKLLVPWhzQfoj1SU1LeuXA0h76Jo1KX9rlg"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-web-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-web-light.svg"><img alt="Fix in Web" src="https://cursor.com/fix-in-web.svg"></picture></a>
@ -32,1 +38,4 @@
<instruction type="database">acp/database/install_de.deinestrainreviews.autoDeleteUnconfirmedUsers.php</instruction>
<instruction type="language"/>
<instruction type="acpMenu"/>
<instruction type="page"/>
cursor[bot] (Migrated from github.com) commented 2025-11-17 17:51:22 +01:00

Bug: Invalid package reference prevents installation.

The package.xml includes <instruction type="option"/> directives, but no option.xml file is added in this commit. Package installation will fail when it attempts to process the missing PIP file.

Fix in Cursor Fix in Web

### Bug: Invalid package reference prevents installation. <!-- **High Severity** --> <!-- DESCRIPTION START --> The `package.xml` includes `<instruction type="option"/>` directives, but no `option.xml` file is added in this commit. Package installation will fail when it attempts to process the missing PIP file. <!-- DESCRIPTION END --> <!-- LOCATIONS START package.xml#L30-L31 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjIwN2YxOGU3LTAyODYtNDBkMy1hODY1LWU5ZTI5OGMzZTAxNiIsImVuY3J5cHRpb25LZXkiOiI2dXUxRjMzd0wxRUx5ZjAwVmhPNE5VNmpFZ0kwVWtzbXZaVGhqX2o2UDdVIiwiYnJhbmNoIjoiZGV2ZWxvcCJ9LCJpYXQiOjE3NjMzOTgyODEsImV4cCI6MTc2NDAwMzA4MX0.gB1qfgEs9sHdhr1_YGMpH659j0mok63x02RIjXNErgZCL9-d0kZvf7KtZsDL-BQdDrAuLAWZ9xXkwCZpLLYDzB___0hLPcr7-bRoKn2FpUCqPcHxCBQ6BzTUOVE9iqM2EUS3Z2_GZsajLloEWZ7w76jNM1HgNkMwSv0hASorMPQCXWFZVO_-XQRZ-UZePdmHwW-XlnLk_dTYyrbywiB4TCB-qj4XfE4IOwcE4GHwnhTSIBuhw25Z0gZeWFt975DWX3T-UlSm74iUfVwVSZe3O043vP2ZWy6tepgRlClez0D1mUhvsynJ93X3oSnpVDm10oIw8Fj_ys7nJ7-4eE0hFw"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-cursor-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-cursor-light.svg"><img alt="Fix in Cursor" src="https://cursor.com/fix-in-cursor.svg"></picture></a>&nbsp;<a href="https://cursor.com/agents?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjIwN2YxOGU3LTAyODYtNDBkMy1hODY1LWU5ZTI5OGMzZTAxNiIsImVuY3J5cHRpb25LZXkiOiI2dXUxRjMzd0wxRUx5ZjAwVmhPNE5VNmpFZ0kwVWtzbXZaVGhqX2o2UDdVIiwiYnJhbmNoIjoiZGV2ZWxvcCIsInJlcG9Pd25lciI6IkRlaW5lU3RyYWluUmV2aWV3c0RldiIsInJlcG9OYW1lIjoiZGUuZGVpbmVzdHJhaW5yZXZpZXdzLmF1dG9EZWxldGVVbmNvbmZpcm1lZFVzZXJzIiwicHJOdW1iZXIiOjMsImNvbW1pdFNoYSI6IjVmMmQ5YmQwY2Y4NzYyOGVjZTg0ZGI4Y2ZhNDliNDViODc0Y2Y5NjYifSwiaWF0IjoxNzYzMzk4MjgxLCJleHAiOjE3NjQwMDMwODF9.FaszZzDdzhXN7-NiN8tkfOVtP_YVlSWM4NyIe9Fbb_8rD28urbSWaMDdJTyXWc5hbcTsaSNIZyP9wLX1OvNn582taJZCOewpUSDLO9dNM75VO108SUXfgLgrNXhJak99Pb64-AKXo1ApyhiNYhAh6PtZl7ZLDYsfCQ820q56bGaZL28-AUcNAUz632AVjqtQLVM7AKMm6UdmQqw9mXYozIB87EJtrfaIvyaqgnB0mDOffO4o-mzRbWGD5kKBCB42O1K6qZu6Y8F0Obr1eJoWwzFVh_Z7by4ipEcM2IN0A7ywBzw7wxqoXexzBxtCFhi1dn6io1QnhfGPpMywbF7HAQ"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-web-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-web-light.svg"><img alt="Fix in Web" src="https://cursor.com/fix-in-web.svg"></picture></a>
cursor[bot] (Migrated from github.com) reviewed 2025-11-17 18:21:00 +01:00
@ -50,0 +73,4 @@
// Create log entries before deletion
$deletionDate = TIME_NOW;
foreach ($users as $user) {
DeletedUnconfirmedUserLogEditor::create([
cursor[bot] (Migrated from github.com) commented 2025-11-17 18:20:59 +01:00

Bug: Query Binding Error: SQL LIMIT Invalid

The SQL query uses LIMIT ? with parameter binding, but the LIMIT clause does not support parameterized placeholders in SQL. The old code used WCF::getDB()->prepare($sql, $limit) which was WoltLab's custom API for handling LIMIT values, but the new code changed to prepareStatement() and attempted to bind LIMIT as a parameter, which is invalid and will fail at runtime.

Fix in Cursor Fix in Web

### Bug: Query Binding Error: SQL LIMIT Invalid <!-- **High Severity** --> <!-- DESCRIPTION START --> The SQL query uses `LIMIT ?` with parameter binding, but the LIMIT clause does not support parameterized placeholders in SQL. The old code used `WCF::getDB()->prepare($sql, $limit)` which was WoltLab's custom API for handling LIMIT values, but the new code changed to `prepareStatement()` and attempted to bind LIMIT as a parameter, which is invalid and will fail at runtime. <!-- DESCRIPTION END --> <!-- LOCATIONS START files/lib/system/cronjob/DeleteUnconfirmedUsersCronjob.class.php#L49-L62 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90Ojc5MjM0NjJmLWM0ODUtNDE0Ni05NmZkLTkxOTcyY2Y3YzhkOSIsImVuY3J5cHRpb25LZXkiOiJyMkdyc2o1VEo3QWFGUWtLUGJSclZWcmRabUtBeHFlb3lQZkhQa3EzVjE4IiwiYnJhbmNoIjoiZGV2ZWxvcCJ9LCJpYXQiOjE3NjM0MDAwNTksImV4cCI6MTc2NDAwNDg1OX0.hMpOiznon-wzBbmpHHzHTVK8u_DvdwQ5cnuMtKn4ycFJNAxq8QAeJu5vLlO-ZtmslXNYLYtx08HCm5FaUjlJY1v6ytjspqmlPpGRRc7R4TiaIlCiMC2iCWPcEYCgXUPl74xBmQRNSWW1q6GEkz_2esjHr84rjgXEFxubnlAzjW443EVpva22r48VFat4t_SS8b-VZqxYGe8PnbLm38wBuks1mUo_8uA9oFg9WvF4MeG8uLKkBwHfBekMQg8QjzSIx-FzGa610Cx8n2d0TpN6MugL16qiSozN2gAWvnlkkpfN33BqxGoD44kd6hsckRavl75xU2ZNeP-y3UYhSsNpmw"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-cursor-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-cursor-light.svg"><img alt="Fix in Cursor" src="https://cursor.com/fix-in-cursor.svg"></picture></a>&nbsp;<a href="https://cursor.com/agents?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90Ojc5MjM0NjJmLWM0ODUtNDE0Ni05NmZkLTkxOTcyY2Y3YzhkOSIsImVuY3J5cHRpb25LZXkiOiJyMkdyc2o1VEo3QWFGUWtLUGJSclZWcmRabUtBeHFlb3lQZkhQa3EzVjE4IiwiYnJhbmNoIjoiZGV2ZWxvcCIsInJlcG9Pd25lciI6IkRlaW5lU3RyYWluUmV2aWV3c0RldiIsInJlcG9OYW1lIjoiZGUuZGVpbmVzdHJhaW5yZXZpZXdzLmF1dG9EZWxldGVVbmNvbmZpcm1lZFVzZXJzIiwicHJOdW1iZXIiOjMsImNvbW1pdFNoYSI6ImY0Y2RhMjU0NTA0M2IxODk1Njk5NTI3NzFmNmFjYzNmZjdmZjliZDMifSwiaWF0IjoxNzYzNDAwMDU5LCJleHAiOjE3NjQwMDQ4NTl9.eglpWWI3EYyUIxcYBx1kgllPR8PGysuGRUmU9pSpfdmaexC85pKzo6g2JOtgdV4I8JYzl_Z1M6qLI7EFefZrX_0RlaoaCsbgJIOfeD8tRCbg9zoH9DZ5_Ye7G7Gzq0jIVhcFmuEYHF3l4DwrvwdwqE3BwG3KZjoC7-RquWex8sfu7n4kHBW2cjCuzN61Bd9VwkNtDPuKNgLxOZYrffanRYbMMwbVT8j17yO6Ml812Gx31Ohaz7o0Iow3okCRBFDxpHkdumwbSQxgs9MHKKi49hj9r4imGagMA7Dzvc9s_N3CggdN-S3AkXDDhkomYmFJlOHGrRK3QIMGaJ-PzDt9TQ"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/fix-in-web-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/fix-in-web-light.svg"><img alt="Fix in Web" src="https://cursor.com/fix-in-web.svg"></picture></a>

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
DSR-Labs/de.deinestrainreviews.autoDeleteUnconfirmedUsers!3
No description provided.