chore: Add local changes from Windows copy #2

Closed
DSR-Labs wants to merge 1 commit from chore/add-local-files into main
DSR-Labs commented 2025-11-17 14:34:54 +01:00 (Migrated from github.com)

Note

Adds configurable anonymous/full logging with retention cleanup, an ACP log viewer, and cronjobs to record and purge deletions; updates package and options with SQL schema and i18n.

  • Backend:
    • Adds wcf1_deinestrainreviews_auto_delete_unconfirmed_users_log table (install.sql).
    • Extends DeleteUnconfirmedUsersCronjob to log deletions (anonymous count or per-user PII).
    • Adds AutoDeleteLogCleanupCronjob and cronjob.xml entry to purge old PII logs.
  • ACP/UI:
    • New AutoDeleteLogPage with template acp/autoDeleteLogPage.tpl and acpMenu.xml entry to view logs.
  • Configuration & i18n:
    • New options: autodelete_log_anonymous, autodelete_log_retention_period in option.xml with DE/EN strings.
  • Packaging:
    • Bump to 1.2.0; package.xml adds DB and acpMenu install/update steps.
  • Docs:
    • README.md expanded with logging modes, GDPR notes, requirements.

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

<!-- CURSOR_SUMMARY --> > [!NOTE] > Adds configurable anonymous/full logging with retention cleanup, an ACP log viewer, and cronjobs to record and purge deletions; updates package and options with SQL schema and i18n. > > - **Backend**: > - Adds `wcf1_deinestrainreviews_auto_delete_unconfirmed_users_log` table (`install.sql`). > - Extends `DeleteUnconfirmedUsersCronjob` to log deletions (anonymous count or per-user PII). > - Adds `AutoDeleteLogCleanupCronjob` and `cronjob.xml` entry to purge old PII logs. > - **ACP/UI**: > - New `AutoDeleteLogPage` with template `acp/autoDeleteLogPage.tpl` and `acpMenu.xml` entry to view logs. > - **Configuration & i18n**: > - New options: `autodelete_log_anonymous`, `autodelete_log_retention_period` in `option.xml` with DE/EN strings. > - **Packaging**: > - Bump to `1.2.0`; `package.xml` adds DB and `acpMenu` install/update steps. > - **Docs**: > - `README.md` expanded with logging modes, GDPR notes, requirements. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit c37909b403bf29ac2f5d5d2813c3ebb9161f493c. 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 14:37:11 +01:00
cursor[bot] (Migrated from github.com) left a comment

This PR is being reviewed by Cursor Bugbot

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 PR is being reviewed by Cursor Bugbot <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>
@ -0,0 +4,4 @@
<menuitem identifier="wcf.acp.menu.log.autoDelete" parent="wcf.acp.menu.log">
<title language="de">Auto Delete Logs</title>
<title language="en">Auto Delete Logs</title>
<link>AutoDeleteLog{@$controller}</link>
cursor[bot] (Migrated from github.com) commented 2025-11-17 14:37:11 +01:00

The menu link uses AutoDeleteLog{@$controller} which includes a template variable {@$controller} that doesn't exist in the ACP menu context. This will result in a malformed or broken menu link. The link should be just AutoDeleteLog or follow WoltLab's proper controller naming convention without template variables.

Fix in Cursor Fix in Web

### Bug: Invalid Variable Malforms Admin Menu Link <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The menu link uses `AutoDeleteLog{@$controller}` which includes a template variable `{@$controller}` that doesn't exist in the ACP menu context. This will result in a malformed or broken menu link. The link should be just `AutoDeleteLog` or follow WoltLab's proper controller naming convention without template variables. <!-- DESCRIPTION END --> <!-- LOCATIONS START acpMenu.xml#L6-L7 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA4NjE0ODVkLThmMTctNDJiYi05M2ZmLTVmM2ZhZTEzYmVmMSIsImVuY3J5cHRpb25LZXkiOiI1MXpNbE9zOFYxcFVpYXl4MzMwZF9pc2d5aEFYMllDbFZMaHZpcnh2SDVnIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIn0sImlhdCI6MTc2MzM4NjYzMCwiZXhwIjoxNzYzOTkxNDMwfQ.LMOvmDfx2uGJzbeaGRoKvfF-7eTOeHKBPYqrvC5ZJFEZ4AZ6W_ZlSI2AxFCpEx7Ap1w3vSZwSd-P0CztqU2yjdzPdPxdVnYG2mWIp_iS1CX-xcEoUNyaeh_Vo2pZkuYWF1otRkZh99pnu5u9Zdz92OGm9O4ZV7KWHdmxfd2GsJ5tEbnsQZBVIaGkXFrquvEnlSora5ww_fx0IPkNdjTJExOlBxPfe66O3UMr3fU20smbXkco8qpp5_0ynDf1K5Ux2YaYVQUuOYsTMRaljkgpvoYeouPSLm1D0_gBkOyNxgD2eCF3c6egmmVPAGTfqiIgreNvoy8BpDPElCTWGUb69g"><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.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA4NjE0ODVkLThmMTctNDJiYi05M2ZmLTVmM2ZhZTEzYmVmMSIsImVuY3J5cHRpb25LZXkiOiI1MXpNbE9zOFYxcFVpYXl4MzMwZF9pc2d5aEFYMllDbFZMaHZpcnh2SDVnIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIiwicmVwb093bmVyIjoiRGVpbmVTdHJhaW5SZXZpZXdzRGV2IiwicmVwb05hbWUiOiJkZS5kZWluZXN0cmFpbnJldmlld3MuYXV0b0RlbGV0ZVVuY29uZmlybWVkVXNlcnMiLCJwck51bWJlciI6MiwiY29tbWl0U2hhIjoiYzM3OTA5YjQwM2JmMjlhYzJmNWQ1ZDI4MTNjM2ViYjkxNjFmNDkzYyJ9LCJpYXQiOjE3NjMzODY2MzAsImV4cCI6MTc2Mzk5MTQzMH0.aFyLqsKYieGQJEAq_r9bJ639BNEO5UTv5ynDp-ff6ofctR8rNTTlqW4WCnqVngjPBFE-eEjnmTWhmphRMPoEuxbvXjjKfNlAzX84lBJrYeQwELo4fm8uP-JV-9wEft5eyyk3pkO4JAuKMa40EwwO7bYO5jxdtocbXK9se2nSdU0yaW1sPLZXDNqZvGs3mBHd7xEMrVZZxHYiiyD_hmRPZejSdk8KsJRQ0WNI7m5BTLhckhZi5k0V4S3m1zKVPBpuY5aUJn-6UgzeAI5NQkB9-KhBiEwuYnkxUsZLgiTLgPrsmf9bgTvQ_1C6v4kxue7ClWwOkovicBL8BgkVFBxt4g"><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>
@ -54,0 +94,4 @@
$user['email']
]);
}
}
cursor[bot] (Migrated from github.com) commented 2025-11-17 14:37:11 +01:00

Bug: SQL LIMIT: The Hidden Danger of PDO Binding

The SQL query uses a placeholder for LIMIT ? and binds $limit as a parameter via execute(). In PDO, parameters are bound as strings by default, which can cause MySQL to treat the LIMIT value as a string rather than an integer. This may result in SQL errors or unexpected behavior depending on MySQL version and configuration. The old code used prepare($sql, $limit) which handled this differently.

Fix in Cursor Fix in Web

### Bug: SQL LIMIT: The Hidden Danger of PDO Binding <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The SQL query uses a placeholder for `LIMIT ?` and binds `$limit` as a parameter via `execute()`. In PDO, parameters are bound as strings by default, which can cause MySQL to treat the LIMIT value as a string rather than an integer. This may result in SQL errors or unexpected behavior depending on MySQL version and configuration. The old code used `prepare($sql, $limit)` which handled this differently. <!-- DESCRIPTION END --> <!-- LOCATIONS START files/lib/system/cronjob/DeleteUnconfirmedUsersCronjob.class.php#L39-L44 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmMxNTk3M2FmLTZhZmYtNDE2Ni1iOTcxLTFmMjg1M2I3Mzk4MCIsImVuY3J5cHRpb25LZXkiOiJsaDhVeFhkZmVWbmRuQ2gzMHdQRFNWNG5tVTBpOXRJY3lNUFRzMDUxM0pnIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIn0sImlhdCI6MTc2MzM4NjYzMCwiZXhwIjoxNzYzOTkxNDMwfQ.K-D75DlHEK0lQxia0WA9tDxbW4LyuU7kJs6eH5Fr8krcgQfb_8i8EesCrs4FtoRiNG8_sPxkotyx-sXzvutkbqWra2tjFVxeM1cTimwC3_-6prDhTgI_8Tv3-qR_8zVAoKK3FZa-O1bfAf-Vr7EwfVfWBGahhe5DcJ3p5nwVQNxr6aBrYZwMGtNqqfQOrvouOqnsikzfwYQvvPd0np2oX1_kL5a9_1AGUWYop_Pc0imcX_mROPQp8PGfRyV7N7B02x02BZSo9MFU26pWaBnEB76R3ZJv3JBtGi9c1lt05NSm9niV0YW4GdydTWsY7RVjiOMJ5Uz-wpZEutF5sNrWRQ"><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.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmMxNTk3M2FmLTZhZmYtNDE2Ni1iOTcxLTFmMjg1M2I3Mzk4MCIsImVuY3J5cHRpb25LZXkiOiJsaDhVeFhkZmVWbmRuQ2gzMHdQRFNWNG5tVTBpOXRJY3lNUFRzMDUxM0pnIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIiwicmVwb093bmVyIjoiRGVpbmVTdHJhaW5SZXZpZXdzRGV2IiwicmVwb05hbWUiOiJkZS5kZWluZXN0cmFpbnJldmlld3MuYXV0b0RlbGV0ZVVuY29uZmlybWVkVXNlcnMiLCJwck51bWJlciI6MiwiY29tbWl0U2hhIjoiYzM3OTA5YjQwM2JmMjlhYzJmNWQ1ZDI4MTNjM2ViYjkxNjFmNDkzYyJ9LCJpYXQiOjE3NjMzODY2MzAsImV4cCI6MTc2Mzk5MTQzMH0.iMYBUba2xVrPB59MOmFDpX_fuMBKh-XLfdbV0PHepMb8oU729TW7QBUSEzv6IVAYtxpddUEBDa-JO-SIWrDALnheWNOpZiSCK80ZcYkYYnHJ-XFOPhwmGGzX8dY5ZdQnaeVQVpVFEptJ6RsnQx07N32sNZo9HYMPLMvI537wIGU9bBVxK0dNrnlLiwrBrv3lWGQUbMkj_06DsgMGwB3VdHJaYiIbi-O9QPPiO01UYLIza3RedSCVfpOA2OLwbmOn4OgZEfrPv5IFrjZnRk-HL1oWZextkIQoUAzwxgYha8Iu2xDJLvitnxIl4RRWo6nvJ3JJdPNkC69YHyUQ4M5MNA"><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>
@ -0,0 +27,4 @@
<ul>
<li>{lang}wcf.user.userID{/lang}: {$log->userID}</li>
<li>{lang}wcf.user.username{/lang}: {$log->username|encodeJS}</li>
<li>{lang}wcf.user.email{/lang}: {$log->email|encodeJS}</li>
cursor[bot] (Migrated from github.com) commented 2025-11-17 14:37:11 +01:00

Bug: Incorrect JavaScript Encoding Breaks HTML

The template uses encodeJS modifier for displaying username and email in HTML context. The encodeJS modifier is for JavaScript string encoding, not HTML output. This causes usernames and emails to be displayed incorrectly (e.g., quotes become \"). For HTML output in templates, variables are auto-escaped by default or should use appropriate HTML encoding.

Fix in Cursor Fix in Web

### Bug: Incorrect JavaScript Encoding Breaks HTML <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The template uses `encodeJS` modifier for displaying `username` and `email` in HTML context. The `encodeJS` modifier is for JavaScript string encoding, not HTML output. This causes usernames and emails to be displayed incorrectly (e.g., quotes become `\"`). For HTML output in templates, variables are auto-escaped by default or should use appropriate HTML encoding. <!-- DESCRIPTION END --> <!-- LOCATIONS START files/templates/acp/autoDeleteLogPage.tpl#L28-L30 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjU2ZjhiM2QzLWFhZTAtNDIxZS05NjViLTAzNjNhN2Y4NzcwYiIsImVuY3J5cHRpb25LZXkiOiJzV1ExY2xvSnNSVWxxN0Zic0hqS1QxX2d5VlJKZDdkQXlxN3FMa2dJMUVFIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIn0sImlhdCI6MTc2MzM4NjYzMCwiZXhwIjoxNzYzOTkxNDMwfQ.MwsGQ6SCECvZr1ZjoWKqldX5arVJEI6YqbuyMRmc2eJ37QRSd-UJEyEvuCtefS3B_kWFXEwtvaZ9-Q8nVuyoPqLuBYMHLf6iF5vhOxL7UVfi5WExzJnJ6laRu2fgRWyeZx5s0Lt1JUDV6bzXZNPEh-MaI9v8WvS2pPVmon5dAAEKlGyNUYCfUa6hPNJ1N45RvYdbfxVAzam0qSWCAasVBZiNJGZJxmF7eRQGXE5vsNTlpwutMmqpq1KEXv22PT3few8kqryuqHuWtaHqaMZJkmo7uumc8j-6cbmS-WuCDCdn51CxZM6d8w4k4tdF0AjQnSa6j3D28neSRELuVIVTpA"><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.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjU2ZjhiM2QzLWFhZTAtNDIxZS05NjViLTAzNjNhN2Y4NzcwYiIsImVuY3J5cHRpb25LZXkiOiJzV1ExY2xvSnNSVWxxN0Zic0hqS1QxX2d5VlJKZDdkQXlxN3FMa2dJMUVFIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIiwicmVwb093bmVyIjoiRGVpbmVTdHJhaW5SZXZpZXdzRGV2IiwicmVwb05hbWUiOiJkZS5kZWluZXN0cmFpbnJldmlld3MuYXV0b0RlbGV0ZVVuY29uZmlybWVkVXNlcnMiLCJwck51bWJlciI6MiwiY29tbWl0U2hhIjoiYzM3OTA5YjQwM2JmMjlhYzJmNWQ1ZDI4MTNjM2ViYjkxNjFmNDkzYyJ9LCJpYXQiOjE3NjMzODY2MzAsImV4cCI6MTc2Mzk5MTQzMH0.S06u8hxTKUienZtXLkLEffiqZPw2j-0gIe3I6CKrnGHAbHTG-49N1egEWTGtWpK1BvgnOu49KrqE4z-TDj-ZFIRyb8xyVP69Zy26W97t2ePlOVBApqkGm4d-JSm0GWvOQVDF1tSamUE44f0WCBoo5VLCAhf9RfHltWLq3XZJx5tn5GHmhlgdgJA-aBUK5LsPjLvLsoTwtJ9wS2jQ38hc0EPEonsSr28MpBodFN-2XA_1OeAkSUckK7vBojRpHhUSprXCYhJDlU7Dkvny90h55mBZGnYpT8HAZr7r8Myb1BjH7lGiQ36re8lKnVMx73ieGhBvoShYag1An-kk8A8oog"><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) commented 2025-11-17 14:37:11 +01:00

Bug: Option Display Logic: Negation Inconsistency

The enableoptions attribute uses !autodelete_log_anonymous to conditionally show the retention period option when anonymous logging is disabled. However, the negation syntax with ! appears inconsistent with how the main deletion option uses enableoptions without negation. This may not work as intended in WoltLab's option system, potentially causing the retention period field to display incorrectly or not at all.

Fix in Cursor Fix in Web

### Bug: Option Display Logic: Negation Inconsistency <!-- **Medium Severity** --> <!-- DESCRIPTION START --> The `enableoptions` attribute uses `!autodelete_log_anonymous` to conditionally show the retention period option when anonymous logging is disabled. However, the negation syntax with `!` appears inconsistent with how the main deletion option uses `enableoptions` without negation. This may not work as intended in WoltLab's option system, potentially causing the retention period field to display incorrectly or not at all. <!-- DESCRIPTION END --> <!-- LOCATIONS START option.xml#L41-L42 LOCATIONS END --> <a href="https://cursor.com/open?data=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImJ1Z2JvdC12MSJ9.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmJiNjUxMzBhLTNiZmQtNGY2Mi04NWZkLTZhYTNkMjY4MTQ1NCIsImVuY3J5cHRpb25LZXkiOiJYMEVsVWFzZFUtMzdvYkxOYlNVWHhXQlU2NzkzN1hoYTJGWkhJUDVhLWxNIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIn0sImlhdCI6MTc2MzM4NjYzMCwiZXhwIjoxNzYzOTkxNDMwfQ.cBbOHxJCvpFrLWsRIKXe5NWzTkAYUkrzHzNFA_P5trBFTYGMEFLWNIqsWyi6Mn3RdmQRdR7kPUTQh8av6vzj9zSnqL_UuekoiqbY8Vc6Ik-fzvyrEyDSq-N7yL2h-0Bqlead96ja-yx9ojcRgYZpliQU1DIRizhkVA_kTASbxQrBYKQ7w7CXQ48JDOqdShTKCLDqB_aqI22ZzLQgzvQPhhV_XwURlDzpjM_hKKuW6REGQhRC3MbZUYYHu3BVdYJS09RyrEJRXg2RSmHoEfd5E3e2zr5Cu0fRRfKJuo-SyNhXMlTl1fub7UM0Rg-9lPcYrnF9mfwbOSmBfJvXgoZSiQ"><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.eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmJiNjUxMzBhLTNiZmQtNGY2Mi04NWZkLTZhYTNkMjY4MTQ1NCIsImVuY3J5cHRpb25LZXkiOiJYMEVsVWFzZFUtMzdvYkxOYlNVWHhXQlU2NzkzN1hoYTJGWkhJUDVhLWxNIiwiYnJhbmNoIjoiY2hvcmUvYWRkLWxvY2FsLWZpbGVzIiwicmVwb093bmVyIjoiRGVpbmVTdHJhaW5SZXZpZXdzRGV2IiwicmVwb05hbWUiOiJkZS5kZWluZXN0cmFpbnJldmlld3MuYXV0b0RlbGV0ZVVuY29uZmlybWVkVXNlcnMiLCJwck51bWJlciI6MiwiY29tbWl0U2hhIjoiYzM3OTA5YjQwM2JmMjlhYzJmNWQ1ZDI4MTNjM2ViYjkxNjFmNDkzYyJ9LCJpYXQiOjE3NjMzODY2MzAsImV4cCI6MTc2Mzk5MTQzMH0.EqiUoyMsqpEy-MewD4DRBvxGgkpLqyDtBwPMKj1Vqrir3ri-RWbC22LI7SjXbCgWI70O_7oFPgSVq4-1EY2HuknE3cAiBhCPtAkeZ_UFnRkKoaG4wHeSyt3xh4TQTsIct08sqFbqyhJgT_pDu-F9P0b1aOjuxXEos6cs5GJTLywX0WKH8gTBwwmS5AcLRNC9eziD1e6D7EcGL9Yc8DqDSFnXgRS7sfcYUHhkgwFn5w7VmryszRFTJStpntky-rK6sizntpc7WLAKGqW6-oQA-CRLsV64GtGqIPrRN0bNF58pbTqTbNLMURlxlWqE6Y9VjmZWGeCTEW8dU5ZVHqEZUQ"><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!2
No description provided.