Repository navigation
v0.27.0
MillionSend v0.27.0 stops the content monitor from suspending a New-tier team over a notice that a store or booking platform sends under a client business's name (#213). The notice waits in the review list instead, and once an operator releases one, later notices under that business's name go out without waiting. No database migrations.
Content monitor (#213)
This only matters on instances that run the content monitor's judge (ABUSE_JUDGE), which is off by default.
-
A platform's notices for its clients no longer suspend a New-tier team. Store and booking platforms send each client business's notices under that business's name, from the platform's own verified domain, with the Reply-To and links on the client's site. The monitor's judge can't tell that from a brand lure: both read as impersonating a brand the team doesn't own. One such verdict at the hold score (90 by default) suspended a New-tier team for review. Now, when the notice is judged before it goes out, it parks for the review list instead, and the team keeps sending.
-
A release trusts that business on its own site. After an operator releases parked mail to the client's site, later notices under that business's name, replying to and linking that site, go out without the 2-minute wait or a park and never hold the team, whether they are judged before or after they go out. A release already works this way for a product's own name on an app platform. The same message under another name still holds the team. Before releasing one of these, check that the From name is the client's own business, not a lookalike of a known brand.
-
Only this exact pattern is spared. The usual hold rules still apply when any of these is true:
- the From display name doesn't spell the client's domain name exactly (
"Acme Tiles"foracme-tiles.example;"Acme Tiles Ltda"doesn't match); - the client's site isn't a domain of its own: a subdomain of a shared host, or an internationalized (IDN) name;
- a Reply-To is missing or points elsewhere, or there is no web link to the site;
- the verdict names anything beyond impersonation, such as a sign-in, payment or secret request;
- the message has a second destination, a non-web link, a Pix code or a file, or rides in images;
- it is a broadcast;
- the sending domain is under 7 days old or of unknown age;
- a brand the monitor knows appears in the name, the site or the subject.
Until an operator has released mail to the client's site, two more conditions apply: the notice must be judged before it goes out, and the site must have a registration date on record at least 7 days old. Past a team's first window, mail to a site that an earlier clean verdict cleared goes out first and is judged afterwards, so a New-tier team can still be suspended for it until a release.
- the From display name doesn't spell the client's domain name exactly (
Upgrading a self-hosted instance
Pull the new image and restart. No migrations and no configuration changes. If you run the MX on a separate host (deploy/mx/docker-compose.yml), nothing it does changes in this release; to keep it on the app's version, set MILLIONSEND_TAG=0.27.0 there once the app runs this release, then pull and restart it.
Coming from v0.24.x or earlier? Read the v0.25.0 notes first. That release adds migrations 0063–0065; run them before up -d with docker compose run --rm --no-deps millionsend migrate.