Skip to content

fix(outreach): enforce company dnc and domain suppression cascade (#38) - #44

Merged
kjxcodez merged 1 commit into
devfrom
fix/outreach/company-dnc-domain-suppression
Sep 11, 2026
Merged

kjxcodez merged 1 commit into
devfrom
fix/outreach/company-dnc-domain-suppression

Conversation

@kjxcodez

Copy link
Copy Markdown
Owner

Summary

Closes #38.

Enforces server-authoritative company-level Do Not Contact (DNC) and domain suppression cascade across audience enrollment, active sequence execution queues, and final send authorization.

Key Changes

  • Schema: Added \SuppressionTargetType\ (recipient, company, domain), \COMPANY_DNC\ and \DOMAIN_SUPPRESSION\ suppression reasons, and updated outreach eligibility checks.
  • Data Models & Repositories: Extended Suppression model with multi-target support and sparse/unique indexes. Implemented company & domain suppression methods with active sequence execution cancellation cascades.
  • Send Gate: Enforced server-authoritative company DNC and domain suppression pre-flight checks in \EmailService.send()\ prior to domain pacing, slot reservation, ledger entry, or provider dispatch.
  • Desktop Worker: Gracefully skips contacts blocked by company DNC or domain suppression without tripping circuit breakers or false-positive bounce auto-suppression.
  • SDK: Extended \SuppressionsModule\ to support company & domain suppression management.

Verification

  • 19 new targeted unit tests covering criteria A-Y including stale-worker cache invalidation at authoritative send gate.
  • 151/151 schema tests passing.
  • 93/93 email service tests passing.
  • 21/21 domain pacing tests passing.
  • 17/17 campaign tests passing.
  • 130/130 desktop tests passing.

@vercel

vercel Bot commented Sep 11, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
leadforge-os-api Ready Ready Preview Sep 11, 2026 5:18am UTC
1 Skipped Deployment
Project Deployment Actions Updated
leadforge-os-marketing Skipped Skipped Sep 11, 2026 5:18am UTC

@kjxcodez
kjxcodez merged commit b197ede into dev Sep 11, 2026
2 checks passed
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