Skip to content

docs: expand spam-email-domain-list section#42

Merged
forgetso merged 2 commits into
mainfrom
feat/spam-email-check-tool-and-blog
Jun 2, 2026
Merged

docs: expand spam-email-domain-list section#42
forgetso merged 2 commits into
mainfrom
feat/spam-email-check-tool-and-blog

Conversation

@forgetso

@forgetso forgetso commented Jun 2, 2026

Copy link
Copy Markdown
Member

Summary

Expands the one-paragraph Spam Email Domain List entry on the email-filter docs page into full coverage of how Prosopo actually evaluates an email domain against the maintained blocklist.

New material covers:

  • The five-stage check chain when spamEmailDomainCheckEnabled is on: direct lookup → SSRF-safe domain validation → HTTPS redirect probe (with TLS-error handling) → CNAME chase → MX fallback.
  • Provider-side config: spamEmailDomainsUrls (multiple feeds merged + deduped) and scheduledTasks.spamEmailDomainsScheduler.schedule (cron).
  • The standalone POST /v1/prosopo/provider/client/spam/email endpoint with request/response examples, and the spamEmailDomainCheckEnabled gating + per-path rate limit it enforces.

Also updates the Evaluation Order section to reflect that the domain-list stage runs last (after the synchronous pattern rules) because it is the most expensive.

Context

Paired with prosopo/captcha-private#3436, which ships the matching blog post (why-do-bots-fill-out-forms) and the limited-use Check Spam Email tool on the marketing site. That tool links into this docs page for the "go deeper" CTA, so this should land before (or together with) the parent PR's submodule pointer bump.

Test plan

  • Astro docs build succeeds.
  • The new code blocks render correctly (config JSON + HTTP example).
  • Cross-links from the marketing site (/blog/why-do-bots-fill-out-forms/, /tools/check-spam-email/) resolve to the right anchors on this page.

🤖 Generated with Claude Code

Replaces the one-paragraph mention of the disposable-domain blocklist
with full coverage of the five-stage check chain (direct lookup,
SSRF-safe validation, HTTPS redirect probe, CNAME chase, MX fallback),
provider-side config (`spamEmailDomainsUrls`, scheduler cron) and the
standalone `/v1/prosopo/provider/client/spam/email` endpoint with
request/response examples.

Also updates the evaluation-order list to reflect that the domain-list
stage runs last (after the synchronous pattern rules) since it is the
most expensive.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@netlify

netlify Bot commented Jun 2, 2026

Copy link
Copy Markdown

Deploy Preview for peaceful-pothos-9e62ce ready!

Name Link
🔨 Latest commit edafd8b
🔍 Latest deploy log https://app.netlify.com/projects/peaceful-pothos-9e62ce/deploys/6a1efa86fcd0740008e27864
😎 Deploy Preview https://deploy-preview-42--peaceful-pothos-9e62ce.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Cuts implementation detail that doesn't belong on customer-facing docs:
the SSRF safety check, source-code paths, the provider-side feed URLs
and cron config, and the per-step DNS-chase explanation.

What's left: what the toggle does, what gets caught (including the
redirect/CNAME/MX chase, named but not over-explained), the rejection
status code, and the standalone endpoint contract.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@forgetso forgetso merged commit 229ae8b into main Jun 2, 2026
4 checks passed
@forgetso forgetso deleted the feat/spam-email-check-tool-and-blog branch June 2, 2026 16:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant