coralproject / talk

A better commenting experience from Vox Media
https://coralproject.net
Other
1.89k stars 355 forks source link

Email Notifications Not Sending as Expected for Rejected Comments #4654

Closed cxmiller-strib closed 1 month ago

cxmiller-strib commented 1 month ago

Expected behavior: When a moderator in the Coral v9 UI rejects a comment, a user receives an email notifying them their comment has been removed.

Actual behavior: When a moderator rejects a comment, the comment is removed from the site and there is no email notifying them of the update. And I'm not seeing how the admin or user can change this behavior.

Related Issues: I'm newer to Coral and likely misunderstanding how the notifications are supposed to work. I thought there would be toggle options in the Admin Config view or the User's preferences --> notifications tab within the comments embed.

I'm not seeing any option (admin UI or user side) to toggle when rejected comment emails would be sent - or the other notification types.

Example user object in the Mongo database user collection

[{
  "_id": {
    "$oid": "123"
  },
  "tenantID": "123",
  "avatar": null,
  "badges": null,
  "commentCounts": {
    "status": {
      "APPROVED": 6,
      "NONE": 1,
      "PREMOD": 0,
      "REJECTED": 9,
      "SYSTEM_WITHHELD": 0
    }
  },
  "createdAt": {
    "$date": "123"
  },
  "digests": [],
  "email": "example-email@gmail.com",
  "emailVerified": true,
  "id": "123",
  "ignoredUsers": [],
  "inPageNotifications": {
    "onReply": {
      "enabled": true,
      "showReplies": "ALL"
    },
    "onFeatured": true,
    "onModeration": true,
    "enabled": true
  },
  "moderatorNotes": [],
  "notifications": {
    "onReply": true,
    "onFeatured": true,
    "onModeration": true,
    "onStaffReplies": true,
    "digestFrequency": "NONE"
  },
  "profiles": [
    {
      "type": "sso",
      "id": "123",
      "lastIssuedAt": {
        "$date": "123"
      }
    }
  ],
  "role": "COMMENTER",
  "ssoURL": null,
  "status": {
    "username": {
      "history": [
        {
          "id": "123",
          "username": "example",
          "createdBy": "123",
          "createdAt": {
            "$date": "123"
          }
        }
      ]
    },
    "suspension": {
      "history": []
    },
    "ban": {
      "active": false,
      "history": []
    },
    "premod": {
      "active": false,
      "history": []
    },
    "warning": {
      "active": false,
      "history": []
    },
    "modMessage": {
      "active": false,
      "history": []
    },
    "deletion": {
      "history": []
    }
  },
  "tokens": [],
  "username": "example",
  "membershipScopes": {
    "scoped": false
  },
  "moderationScopes": {
    "scoped": false
  },
  "lastSeenNotificationDate": {
    "$date": "123"
  }
}]

Versions: v9.0.6

losowsky commented 1 month ago

Hi there,

I also replied to your email reporting this. Here's what I wrote there, reproduced here as you reported this in public:

Coral never has sent emails to commenters to tell them that their comments have been rejected. The only exception is if a commenter has a pending comment that is then rejected before publication, and they have notifications enabled for pending comments.

However, if you want to provide notifications that do so, you can activate the DSA (the EU's Digital Services Act) notifications feature inside the Coral configuration, which will activate notifications inside the comments section for several reasons, including rejections, and enable the ability to report illegal comments, which go through a specific workflow for DSA compliance (this isn't legal advice but our understanding is that US publishers are not required to be DSA compliant unless they have operations in Europe.)

Best wishes

Andrew