Conversation
|
✅ JSON Filename Check Passed |
|
✅ JSON Schema Validation Passed |
Linter OK
|
| Level | Code | Note |
|---|
PR Description Check PassedAll required sections are filled in correctly. Details |
Merged
via the queue into
Domain-Connect:master
with commit Sep 12, 2026
5f2d005
6 of 7 checks passed
|
Thanks @calemander for contributing to the template. 🎉 This template has been reviewed and merged by @pawel-kow. 🙌 This template repository and its review process are maintained by independent individuals in their spare time, not as part of a paid role. If you or your company benefit from this protocol and its tools, please show your appreciation by buying a beer for @pawel-kow: https://github.com/sponsors/pawel-kow |
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.
Description
Calemander is a scheduling platform: businesses publish booking pages, and the platform sends the booking confirmations, reminders and cancellation notices that result. This template verifies a business's sending domain with two email providers at once so the business's own from-address keeps working if one provider is unavailable. It is a separate serviceId from
calemander.com.email-sending.json(#1821), which stays the single-provider template.Records, in two groups (the apply URL always names
groupId; the app never applies without one):emailit:MXemailit→feedback-smtp.ffdc-1.emailit.comemailit:SPFMemailit→include:_spf.emailit.comemailit:TXTemailit._domainkey→%dkim%resend:MXsend→feedback-smtp.us-east-1.amazonses.comresend:SPFMsend→include:amazonses.comresend:TXTresend._domainkey→p=%resend_dkim%All records sit under fixed labels (
emailit,emailit._domainkey,send,resend._domainkey); the domain's apex MX and SPF are never touched. Both SPF records areSPFM. The two DKIM TXT records use different conflict modes on purpose: Emailit's value is the whole record (All), Resend's carries a fixedp=prefix (Prefix), matching Resend's own merged templates. The Resend record shape was verified today against a live Resend-issued record set.syncPubKeyDomainiscalemander.comwith the RS256 public key published as chunked TXT at_dc1.calemander.com;syncRedirectDomainiscalemander.com. Proxy preference: none of these records should be proxied.Type of change
Please mark options that are relevant.
How Has This Been Tested?
Please mark the following checks done
<providerId>.<serviceId>.jsonlogoUrlis actually served by a webserverChecklist of common problems
Mark all the checkboxes after conducting the check. Comment on any point which is not fulfilled.
See Template Quality Guidelines for details and rationale on each rule.
syncPubKeyDomainis set — this is mandatory; omitting it requires explicit justification in the PR description or the PR will be rejectedwarnPhishingis not set alongsidesyncPubKeyDomain— the two must not appear togethersyncRedirectDomainis set whenever the template usesredirect_uriin the synchronous flow"v=spf1 ...") — use theSPFMrecord type insteadtxtConflictMatchingModeis set on every TXT record that must be unique per label or content prefix (e.g. DMARC)@ TXT "%foo%") unless necessary — prefer@ TXT "service-foo=%foo%"; if bare, justify in the PR descriptionhostlabel — the non-variable parts are fixed to limit misusehostfield to create a subdomain — use thehostparameter ormultiInstanceinstead%host%does not appear explicitly in anyhostattributeessentialis set toOnApplyon records the end user may need to modify or remove without breaking the template (e.g. DMARC)Note on the bare-variable rule:
%dkim%is the full value of theemailit._domainkeyTXT record, as in #1821, because a DKIM record's content is prescribed by RFC 6376 and carries no service prefix; the Resend record uses thep=prefix form.Online Editor test results
Editor test link(s):
example.com, hostbooking), both groups: Test calemander.com/email-sending-dual example.com/bookingemailitonly: Test, emailit groupexample.com, no host), both groups: Test, apex