Skip to content

Send DMARC reports to Cloudflare DMARC Management, not tech@ - #197

Merged
irvingpop merged 1 commit into
mainfrom
dmarc-reports-to-cloudflare
Nov 6, 2026
Merged

irvingpop merged 1 commit into
mainfrom
dmarc-reports-to-cloudflare

Conversation

@irvingpop

Copy link
Copy Markdown
Member

Summary

DMARC aggregate reports no longer go to the tech@operationcode.org inbox.

  • operationcode.org: rua now points to Cloudflare DMARC Management, on the sponsored Cloudflare account. Reports show in the Cloudflare dashboard at Email > DMARC Management. They help with the plan to move from p=none to p=quarantine, then p=reject.
  • operationcode.net: rua removed. The domain sends no mail and uses p=reject, so reports are not needed.
  • Removed net_dmarc_report_auth: nothing sends .net reports to .org now.

Cloudflare publishes the cross-domain authorization record (*._report._dmarc.dmarc-reports.cloudflare.net), so this repo needs no extra record for it.

Changes made outside Terraform (Cloudflare, with the cf CLI)

  • Disabled Email Routing in the Cloudflare operationcode.org zone. It was set up in 2026-01 with no destinations and was not live.
  • Deleted 2017 proxied CNAMEs from the same zone. They were not live either: the zone is a partial setup that never activated, and Route 53 is the real DNS.
  • Enabled DMARC Management for the zone.

Status

  • terraform apply already done (it runs locally). Route 53 now serves the new _dmarc.operationcode.org record.
  • The first Cloudflare reports can take up to 24 hours.

🤖 Generated with Claude Code

- operationcode.org: rua now points to Cloudflare DMARC Management
  (sponsored Cloudflare account). Reports show in the Cloudflare
  dashboard, not in the tech@ inbox.
- operationcode.net: remove rua. The domain sends no mail and uses
  p=reject, so reports are not needed.
- Remove the operationcode.net._report._dmarc.operationcode.org
  authorization record. Nothing reports to .org for .net now.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 6, 2026

Copy link
Copy Markdown

🟢 All clear: Claude of Duty review passed

Mission: Review the code. Protect the branch. Deploy the future.

Tip

No findings. This review found no reason to block. Nothing to do for this review.
The merge box shows whether the other required checks pass.

File checks Review Security Supply chain Dependency review Coverage
✅ ok ✅ ran, 0 findings ✅ ran, 0 findings ✅ ran, 0 findings ✅ ok ✅ complete

Run 42138734517, attempt 1 for head 17da420 into main. The required workflow in the merge box is the result that counts.

Claude of Duty never approves a PR. A human reviewer gives the final approval.

📋 Full review record: reasons, checks, signals, finding details, model summaries, token usage

Reviewed snapshot

Head SHA Merge base SHA Base branch Run
17da42009265db49cf707d51985f35fe34c7c690 55e501fc62391200a0a4ba6a8eae46272ba39c31 main 42138734517, attempt 1

Reasons the gate failed

None. No reason applies.

Checks (code, no model)

Check Result Detail
Hard blocks ✅ none
Coverage ✅ complete files in comparison 2, files collected 2, trees complete
Dependency changes ✅ none
Dependency review job ✅ success

Signals (context only, never block)

None.

Dependency changes

None.

Finding details

Model output from untrusted input. Check it before you act on it. Verified means only that the quoted text is at that place. It does not mean the claim is true.

Blocking is decided by code from category and severity, never by the model. A finding in a blocking category blocks only at high or critical severity.

No findings. All three passes completed.

Model summaries

Model output from untrusted input. Check it before you act on it. Verified means only that the quoted text is at that place. It does not mean the claim is true.

Pass Status Model Summary
Review ✅ ok claude-sonnet-5-5 This PR points the operationcode.org DMARC rua address to Cloudflare DMARC Management and removes the rua tag and the cross-domain authorization record from operationcode.net. I found no correctness bugs in the changed Terraform. The removed resource is no longer referenced, and the DMARC strings are valid.
Security ✅ ok claude-sonnet-5-5 The PR redirects DMARC aggregate reports for operationcode.org to a Cloudflare DMARC Management address and removes the rua tag and the cross-domain authorization record for operationcode.net. These are DNS-only changes. I found no secrets, injection, or weakened security controls. The Cloudflare rua local part is a public report-routing identifier that must appear in DNS, not a credential. Aggregate reports leave the organization for a third party, but that is the intended and documented behavior.
Supply chain ✅ ok claude-sonnet-5-5 This PR changes DNS records in Terraform only. The operationcode.org DMARC rua address now points to a Cloudflare DMARC Management address on dmarc-reports.cloudflare.net, which is a real Cloudflare reporting host. The operationcode.net DMARC record drops its rua tag, and the now-unneeded cross-domain authorization record is removed. The PR adds no dependencies, CI or workflow changes, install scripts, obfuscated content, or text aimed at an AI reviewer. A maintainer should still confirm that the Cloudflare per-zone rua prefix belongs to the project's own Cloudflare account, since the bundle cannot show that. I found no supply-chain or malicious issues.

Token usage

Pass Input Output Cache write Cache read Attempts
Review 721 116 0 17977 1
Security 1047 173 0 17977 1
Supply chain 1239 506 17977 0 1
Total 3007 795 17977 35954 3

@irvingpop
irvingpop merged commit b056da5 into main Nov 6, 2026
5 checks passed
@irvingpop
irvingpop deleted the dmarc-reports-to-cloudflare branch November 6, 2026 00:45
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