Skip to content

Move email classification out of the connector SDK repository - #364

Merged
KrisBraun merged 3 commits into
mainfrom
email-classifier-goes-private
Aug 3, 2026
Merged

Move email classification out of the connector SDK repository#364
KrisBraun merged 3 commits into
mainfrom
email-classifier-goes-private

Conversation

@KrisBraun

Copy link
Copy Markdown
Contributor

Summary

  • Adds isNoReplySender to the @plotday/twister signals entry point (@plotday/twister/signals), so connectors can detect automated/no-reply sender addresses without depending on a separate classification package.
  • Removes the @plotday/email-classifier package entirely. It hasn't been consumed by any connector's runtime classification logic since connectors moved to emitting raw mail signals for the platform to classify; the one helper connectors still needed (isNoReplySender) is now part of the SDK.
  • Updates the Google and Outlook mail connectors to import isNoReplySender from its new location, and drops the now-unused dependency on @plotday/email-classifier from the Google, Outlook, and Apple connector packages.

For connector authors

If you were depending on @plotday/email-classifier for isNoReplySender, import it from @plotday/twister/signals instead. No other connector in this repository used anything else from that package, so this should be a drop-in change wherever it applies.

Test plan

  • pnpm validate-changesets
  • google, outlook, apple connectors: build + full test suite + tsc --noEmit, all passing
  • twister package builds cleanly

🤖 Generated with Claude Code

Connectors extracting mail signals no longer need a separate package
dependency for sender-identity detection.
Its classification logic now lives with the platform that runs it.
Connectors emit raw signals rather than classifying, so nothing in this
repository consumes it; the sender-identity helper they did use is now
part of the SDK.
The doc comment referenced "the email classifier", which no longer
exists as a concept in this package now that isNoReplySender lives
directly in the signals entry point. Update the reference so
connector authors reading the SDK types land on the right helper.
@KrisBraun
KrisBraun merged commit 48a5516 into mainAug 3, 2026
1 check passed
@KrisBraun
KrisBraun deleted the email-classifier-goes-private branch August 3, 2026 13:47
@KrisBraun
KrisBraun restored the email-classifier-goes-private branch August 3, 2026 13:55
@KrisBraun
KrisBraun deleted the email-classifier-goes-private branch August 3, 2026 13:56
Sign up for freeto 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

@KrisBraun