Repository navigation
fix(examples): propagate Samva SDK 0.44 and reply only to delivered mail - #124
Merged
Merged
Conversation
Samva's message.received event now carries the disposition committed at receipt. The inbound-replies handler ignores quarantined and isolated mail, so a forged or malicious message never draws a reply.
[Medium impact] The reviewed changes appear safe to merge in the rollout order stated in the PR. SummaryLimits automatic inbound email replies to delivered mail and updates integrations and examples to
|
Member
Author
|
@greptile review |
Member
Author
|
@greptile review |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Propagates Samva SDK 0.44 and CLI 0.39 into the maintained integrations. The inbound-replies example and the inbound-email cookbook now answer only delivered mail.
SDK 0.44 makes
disposition(delivered,quarantined,isolated) andreasonrequired on themessage.receivedwebhook, and@samva/webhooksvalidates both. They record the decision Samva made when the message arrived. Samva still sends the event, with its body, for mail it quarantined on arrival, so a receiver that replies automatically must checkdispositionfirst.{ accepted: false, reason: "not-delivered" }for held mail without reading the conversation or sending. Its guard validates both fields; it has a new no-send test and a README note.^0.44.0; the Deno import pinssamva@0.44.0; the TSX example uses CLI^0.39.0. The lockfile resolvessamva@0.44.0,@samva/webhooks@0.44.0, and@samva/cli@0.39.0.sendablesenders, starting a template from a brief,--gallery-template, and the API-side422checks..tegami/2026-11-14-sdk-044.md@samva/better-authand@samva/email-sdkfor the peer-range change.email.sendandmessages.sendpayloads are unchanged in 0.44.mailbox.message.received, which 0.44 did not change.templates initwithout a flag still starts from the canonical project; no file uses the removed--starter.provenance.jsonSource release:
samva0.44.0 and@samva/webhooks0.44.0 (AryaLabsHQ/samva#3030 and the pending changesets of #3034, #3035, and #3039). It is on npm aslatestand deployed in production.Checklist
bun run build,typecheck,test(225 tests across 15 files),lint,format:check,release:packages:check, andvalidate:agent-pluginpassdisposition: "delivered"andreason: null