Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Unattributed provider complaints count against the receiving organization

Open
#319 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
55/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
backend

Research direction

Read services/email/reputation/tasks.py, especially parse_fbl_report and its resolve_fbl_owner path, then inspect services/email/reputation/evaluation.py and the complaints calculation. Trace how unattributed reports reach organization rates and suspension decisions. Done means unattributed reports remain visible to staff but no longer contribute to any organization's complaint rate.

Written by the indexing model from the issue text.

Description

bug real

An unattributed provider complaint counts against the organization that owns the FBL inbox. That is relay's own organization, so platform complaints can suspend the receiving side.

When a provider complaint cannot be attributed to a sending organization, parse_fbl_report keeps the organization that owns the inbound FBL address. compute_org_reputation counts every provider report for that organization, with no filter on attribution.

The FBL inbox belongs to the platform. Complaints that relay cannot match therefore accumulate against relay's own organization and feed its complaint rate. The same code path that suspends customers can then suspend that organization, and the receiving side of the platform goes down with it.

Evidence:

  • services/email/reputation/tasks.py: parse_fbl_report keeps the ingest organization when resolve_fbl_owner returns None
  • services/email/reputation/evaluation.py: complaints counts provider reports per organization with no attribution requirement

Suggested direction: record unattributed reports with no owner, or with a dedicated platform-review flag. Exclude them from any organization's rate. Keep them visible for staff.

Found during the sandbox-credentials change (#259). This fault is older than that change.

Dominant language
Python
Stars
4
Forks
0
Avg merge
2h 40m
Merged PRs (30d)
163

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from codingjoe/relay

All issues in codingjoe/relay

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.