Wrong Error Message for too short replies for Reply-by-Email

When sending a too short reply such as “testing reply by e-mail”, I am getting an e-mail back:

We’re sorry, but your email message to [“discoursereplies+redacted.org”] (titled Re: forum thread title didn’t work.

Do you use more than one email address? Did you reply from a different email address? Email replies require that you use the same email address when replying. Alternately, the Message-ID header in the email may have been modified.

But longer multiple line, multiple sentences reply goes through.

The error message is therefore wrong.

Could you please provide a better error message in this case?

Can minimum message length be configured? Is there a different setting for replies in forums versus by e-mail?

Similar to Confused by Error Message From Reply-by-Email but a different issue.

2 Likes

Hmm, can we repro this @tshenry ?

I am not immediately able to repro.

I tested with https://try.discourse.org which has its min post length site setting set to the default of 20.

I created a new topic with User A, then replied to it with User B. User A received an email and I sent a one word “Test” reply via email:

I received an email right after with an appropriate message:

@adrelanos are you able to provide any additional reproduction steps? Is it possible that the message you received was valid somehow? Can you also confirm you are on the latest version of Discourse?

1 Like

Stable branch. 2.6.6 (Not tests completed branch.) Does that make the diference?

I can’t say for sure that it will make a difference, but there’s always a chance that there was a bug in stable that was fixed and didn’t get back ported. If you are able, I would suggest updating to the latest beta at the very least and trying again.

Outside of that, there are these questions:

Since I am unable to reproduce the issue when running through a normal scenario, I’ll need a little more to go on.

2 Likes

Got previously issues with PostgreSQL 13 update, Restore problem: relation "theme_fields" does not exist and How to backup and restore a whole /var/discourse app folder? - #15 by adrelanos. Now very happy for the service of being provided with the slower stable branch. :slight_smile:

I guess you’re on version 2.7. Will be waiting until 2.7 is migrated to the stable branch and report back.

are you able to provide any additional reproduction steps?

min post length is set to 2.

delete rejected email after days is still default 90.

Replying “OK” to a message of myself is now functional.

Replaying “OK” got another user’s message I now get.

We’re sorry, but your email message to [“discoursereplies+redacted@redacted.redacted”] (titled Re: [redacted] [redacted] redacted) didn’t work.

We only accept replies to original notifications for 90 days. Please visit the topic to continue the conversation.

But the message was just 5 minutes or so old.

Replying by e-mail to post by other user with text “This is a longer test reply by e-mail. Please ignore.” nothing happens, nothing shows up in log either. No rejection e-mail received either.

Is it possible that the message you received was valid somehow?

What do you mean by was valid?

This implies there’s something wrong with your server clock, or the install? Is this a standard default install?

2 Likes

This implies there’s something wrong with your server clock, or the install?

I don’t think so. Just checked. Local computer time and server time had the same date, hour and minute in UTC. Almost even same second (hard to measure over SSH).

Is this a standard default install?

Yes. Docker installation method. Wouldn’t want to stray away from recommendation.

Thank you for maintaining discourse!

1 Like

So just to summarize for the future:

  1. The issue in the OP is that you sent a reply that was too short and received the “bad destination address” error response instead of the “post too short” response. The following could not have been true:

    Do you use more than one email address? Did you reply from a different email address? Email replies require that you use the same email address when replying. Alternately, the Message-ID header in the email may have been modified.

  2. In another example you sent a reply to a user that was too short and received the “old destination” error response: “We only accept replies to original notifications for 90 days. Please visit the topic to continue the conversation”. This also could not have been true since the post you were replying to was only 5 minutes old.

In both cases where your reply was too short, the wrong error message was sent. Does this sound accurate?

This sounds good! I’d be very curious to see if an update clears things up. Let us know if it doesn’t.

1 Like

Taylor via Discourse Meta:

Does this sound accurate?

Yes.

1 Like

I don’t get this anymore in 2.7.3 but therefore now getting.

  1. Do you use more than one email address? Did you reply from a different email address? Email replies require that you use the same email address when replying. Alternately, the Message-ID header in the email may have been modified.

Seems to happen if other replies where made after the post that I am replying to.

Since this seems difficult to debug (user error, replying to From instead to Reply-To - no I did not do that in this case / mail server messing something up and/or discourse bug), I came up with the following feature request to ease debugging:
Reply with debug info to rejected e-mails

This means you’re hitting one of the other short post safeguards, such as body min entropy, which is intended to block posts such as AAAAAAAAAAAAAAAAAAAAAAAAAAAA and does not have a custom error message.

3 Likes

Do you have specific reproduction steps? Can you reproduce the error 100% of the time?

2 Likes

That’s a case for Reply with debug info to rejected e-mails

Not always reproducible. I’ll use reply by e-mail a lot now and hope to be able to follow up with reproducible instructions.
Could be that multiple replies are required to get the e-mail rejected. Or depends on time. Older messages are more likely to get rejected however disallow reply by email after days is already set to 0.

1 Like