Soft bounce counts are always zero
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
Línea de trabajo
Start in services/email/reputation/evaluation.py at compute_org_reputation and services/email/reputation/charts.py at build_reputation_chart, then trace deliver_via_mx_hosts, refusal_details, and record_bounce in services/email/msa/tasks.py. Confirm which transmission rows represent 4xx refusals and how the chart consumes them. Done means the soft-bounce display accurately reflects the chosen behavior, or the nonfunctional series is removed.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The soft bounce count is always zero. The reputation chart therefore shows a flat line, even when a domain collects many 4xx refusals.
compute_org_reputation and build_reputation_chart classify soft bounces as transmission rows with status=BOUNCED and a code below 500:
soft_bounces = transmissions.filter(code__lt_500).count()
A 4xx refusal never sets BOUNCED. The delivery walk records a temporary refusal as Transmission.Status.FAILED, with the code and the reason. Only a permanent rejection calls record_bounce, and that call writes BOUNCED. The soft bounce series is therefore always zero, by construction. The "Soft bounces" line in the reputation chart never moves, however many 4xx refusals a domain collects.
Evidence:
services/email/reputation/evaluation.py:compute_org_reputationservices/email/reputation/charts.py:build_reputation_chartservices/email/msa/tasks.py:deliver_via_mx_hosts,refusal_details,record_bounce
Two directions are possible: read 4xx refusals from the rows that actually record them, or remove the soft bounce series as decoration. Soft bounces are display-only today. No threshold uses them.
Found during the sandbox-credentials change (#259). This fault is older than that change.
- Lenguaje dominante
- Python
- Estrellas
- 4
- Forks
- 0
- Merge medio
- 2 h 40 min
- PR fusionados (30 d)
- 163
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de codingjoe/relay
-
enhancement real sec
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
codingjoe/relay#410 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug side quest
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Los mantenedores suelen responder en 1 día
-
bug side quest
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
bug side quest
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
side quest test
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
Todos los issues de codingjoe/relay
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
521xueweihan/HelloGitHub#4115 ·
-
get_lldp_neighbors_detail: query asks for 'max-address' (typo for 'mac-address'), so remote_chassis_id is always emptyPosiblemente ocupada @Jah-yee la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
lesson-submission pending-review
Dificultad 1/5 Menos de una hora Aptitud para principiantes 74/100
Ikalus1988/MisakaNet#3899 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
aws-samples/sample-per-model-bedrock#549 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100