# Unexplained Email::Receiver::InvalidPost errors

**URL:** https://meta.discourse.org/t/unexplained-email-invalidpost-errors/377793
**Category:** Bug
**Created:** [August 7, 2025, 8:31pm UTC](https://meta.discourse.org/t/unexplained-email-invalidpost-errors/377793 "2025-08-07T20:31:32Z")
**Posts on this page:** 1
**Showing post:** 34

<div class="post-metadata">

### Author: ![supermathie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/supermathie/32/507518_2.png) [@supermathie](https://meta.discourse.org/u/supermathie)
#### Post date: [February 4, 2026, 5:44pm UTC](https://meta.discourse.org/t/unexplained-email-invalidpost-errors/377793/34 "2026-02-04T17:44:35Z")

</div>

> [@lavamind](#):
>
> Perhaps these “extra” permissions are interfering with the way Discourse handles these special “mailing list mirror” categories?

> [@Moin](#):
>
> So, if the user is not in a group that has permission to reply to topics in the category, their reply will be rejected because they do not have permission.

We have tests that ensure Discourse can receive mail for read-only categories that mirror a mailing list:

> <https://github.com/discourse/discourse/blob/1284bbf4b0a129e865ff7beda0f8fcf5d58e07c7/spec/lib/email/receiver_spec.rb#L1412>

To support that, posts sent to mailing list mirrors bypass some checks:

```ruby
    def create_post(options = {})
      …
      if sent_to_mailinglist_mirror?
        options[:skip_validations] = true
        options[:skip_guardian] = true
      else
        options[:email_spam] = is_spam?
        options[:first_post_checks] = true if is_spam?
        options[:email_auth_res_action] = auth_res_action
      end

```

```ruby
    def sent_to_mailinglist_mirror?
      @sent_to_mailinglist_mirror ||=
        begin
          destinations.each do |destination|
            return true if destination.is_a?(Category) && destination.mailinglist_mirror?
          end

          false
        end
    end

```

at a guess, something to do with your setup might create condition such that the fact it’s a mailing list mirror isn’t detected? Note that to bypass these checks, the mail has to be sent to the _category_ email address and not the site’s `reply_by_email_address`.

---

_[View the full topic](https://meta.discourse.org/t/unexplained-email-invalidpost-errors/377793)._
