Epic: Implement Two-Stage Deletion Workflow (v1.3.0) #5

Closed
opened 2025-11-20 16:14:52 +01:00 by DSR-Labs · 2 comments
DSR-Labs commented 2025-11-20 16:14:52 +01:00 (Migrated from github.com)

Feature: Implement two-stage reminder and deletion workflow

Description
Currently, the plugin operates on a simple "direct deletion" logic: once an unconfirmed user exceeds the time limit, they are immediately removed. To improve user retention and provide a better experience, we should implement a two-stage workflow that warns the user before taking destructive action.

Functional Requirements

  1. Two-Stage Workflow

    • Stage 1 (Reminder): Instead of immediate deletion, the system should first send a reminder email to the unconfirmed user after a configurable number of days.
    • Stage 2 (Deletion): The actual user deletion should only occur after a second waiting period (a configurable number of days after the reminder was sent) if the user still hasn't confirmed their email.
  2. Configuration Options

    • Admins must be able to define the time interval for the reminder email separately from the time interval for deletion.
    • Backward Compatibility: If the reminder interval is set to 0, the system should revert to the original behavior (direct deletion without warning).
  3. Logging & Transparency

    • We need a new log section in the ACP specifically for "Resent Activation Emails."
    • This log should track which users received a reminder and when, allowing admins to verify that the system is working correctly before users are deleted.
  4. Notification Settings

    • The admin email notification settings need to be split. Admins should be able to choose whether they want to be notified when:
      • A reminder email is sent to a user.
      • A user is actually deleted.
  5. Email Templates

    • The reminder emails should use professional HTML templates consistent with the rest of the software, rather than simple plain text.
# Feature: Implement two-stage reminder and deletion workflow **Description** Currently, the plugin operates on a simple "direct deletion" logic: once an unconfirmed user exceeds the time limit, they are immediately removed. To improve user retention and provide a better experience, we should implement a two-stage workflow that warns the user before taking destructive action. **Functional Requirements** 1. **Two-Stage Workflow** * **Stage 1 (Reminder):** Instead of immediate deletion, the system should first send a reminder email to the unconfirmed user after a configurable number of days. * **Stage 2 (Deletion):** The actual user deletion should only occur after a second waiting period (a configurable number of days *after* the reminder was sent) if the user still hasn't confirmed their email. 2. **Configuration Options** * Admins must be able to define the time interval for the reminder email separately from the time interval for deletion. * **Backward Compatibility:** If the reminder interval is set to 0, the system should revert to the original behavior (direct deletion without warning). 3. **Logging & Transparency** * We need a new log section in the ACP specifically for "Resent Activation Emails." * This log should track which users received a reminder and when, allowing admins to verify that the system is working correctly before users are deleted. 4. **Notification Settings** * The admin email notification settings need to be split. Admins should be able to choose whether they want to be notified when: * A reminder email is sent to a user. * A user is actually deleted. 5. **Email Templates** * The reminder emails should use professional HTML templates consistent with the rest of the software, rather than simple plain text.
DSR-Labs commented 2025-11-20 16:25:26 +01:00 (Migrated from github.com)

Status Update: Version 1.3.0 Submitted for Review

Version 1.3.0 has been successfully packaged and uploaded to the WoltLab Plugin Store for official review.

Current Workflow Status

  • Development & Testing completed
  • Artifacts built (.tar.gz)
  • Uploaded to WoltLab Plugin Store
  • Awaiting Approval by WoltLab Team (In Progress)
  • Merge into main branch
  • Publish GitHub Release

Note: This issue will remain open until the plugin has passed the official WoltLab code review. Upon approval, the code will be merged into main and the release published.

# Status Update: Version 1.3.0 Submitted for Review Version **1.3.0** has been successfully packaged and uploaded to the **WoltLab Plugin Store** for official review. **Current Workflow Status** - [x] Development & Testing completed - [x] Artifacts built (`.tar.gz`) - [x] Uploaded to WoltLab Plugin Store - [ ] **Awaiting Approval by WoltLab Team** (In Progress) - [ ] Merge into `main` branch - [ ] Publish GitHub Release *Note: This issue will remain open until the plugin has passed the official WoltLab code review. Upon approval, the code will be merged into `main` and the release published.*
DSR-Labs commented 2025-11-21 13:42:58 +01:00 (Migrated from github.com)

🎉 Plugin Successfully Approved!

The plugin has been reviewed and approved by WoltLab. Version 1.3.0 is now officially available in the WoltLab Plugin Store.

All features and technical tasks for v1.3.0 are completed.

Workflow Status

  • Development & Testing completed
  • Artifacts built (.tar.gz)
  • Uploaded to WoltLab Plugin Store
  • Approved by WoltLab Team
  • Merged into main branch
  • GitHub Release published

The release process is complete. This issue is now closed.

# 🎉 Plugin Successfully Approved! The plugin has been reviewed and approved by WoltLab. Version **1.3.0** is now officially available in the WoltLab Plugin Store. All features and technical tasks for v1.3.0 are completed. ✅ **Workflow Status** - [x] Development & Testing completed - [x] Artifacts built (`.tar.gz`) - [x] Uploaded to WoltLab Plugin Store - [x] **Approved by WoltLab Team** - [x] Merged into `main` branch - [x] GitHub Release published *The release process is complete. This issue is now closed.*
Sign in to join this conversation.
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#5
No description provided.