Let direct-member issue alerts bypass personal alert filter
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
Direzione di ricerca
Read src/sentry/notifications/utils/participants.py and tests/sentry/notifications/utils/test_participants.py, especially determine_eligible_recipients() and GetSendToMemberTest.test_send_to_user. Compare the issue alert flow with email_metric_alert_handler.get_targets() to understand how direct targets are handled. Done means direct-member issue alerts follow the intended personal-settings behavior while implicit recipients remain filterable, with tests covering both cases; the issue frames this as future personal notification settings work, so the policy needs clarification.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Users want to turn off issue alerts they receive implicitly (for example as a recently active member through fallthrough, or as a suggested assignee/issue owner) while still receiving issue alerts whose action explicitly notifies them as a member. Today the single "Issue Alert Notifications" setting covers both cases. Raised by Zsofia Papp after a user with the setting Off did not receive a test email from an alert configured to notify them directly.
Current behavior
- For a "Notify Member" action,
get_send_to()resolves the user indetermine_eligible_recipients()and then filters them through_get_recipients_by_provider()using the user'sISSUE_ALERTSsetting, the same filter applied to issue owners, suggested assignees, suspect committers, and fallthrough recipients (src/sentry/notifications/utils/participants.py). GetSendToMemberTest.test_send_to_userintests/sentry/notifications/utils/test_participants.pyasserts that a direct member with email alerts set to "never" receives nothing.- Test notifications (
OrganizationTestFireActionsEndpoint) go through the same path; they only skip digests. - Metric alerts behave differently:
email_metric_alert_handler.get_targets()sends to a directly targeted user without checking notification settings.
History
- Before getsentry/sentry#28624 (2021-09-21),
get_send_to_member()explicitly ignored the user's settings: "If a user explicitly specifies a member as a target to send to, it should overwrite the user's personal mail settings." - getsentry/sentry#28624 replaced it with
determine_eligible_recipients()+get_recipients_by_provider(), which filters direct members by their settings, and added the test above. - The settings copy promising "You'll always receive notifications from Alerts configured to be sent directly to you" was added in getsentry/sentry#27261 (2021-07-13) and became inaccurate for issue alerts after #28624.
Gap
- Users can't opt out of noisy implicit issue alerts without also losing alerts that a teammate explicitly routed to them.
- Issue and metric alerts treat direct-member targets inconsistently.
The settings copy is being corrected separately to match current behavior; this issue tracks revisiting the filtering granularity as part of upcoming personal notification settings work.
via Nick Meisenheimer.
--
- Lingua principale
- Python
- Stelle
- 45.7k
- Fork
- 5k
- Merge medio
- 1g 2h
- PR unite (30g)
- 622
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di getsentry/sentry
-
Repeated integration DELETE runs uninstall() again and can remove a shared install from another orgForse già presa @sentry-junior l’ha presa 4 giorni fa. ApertaBug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
getsentry/sentry#129229 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
getsentry/sentry#129182 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
find_referenced_groups: Fixes-keyword ID list spans newlines, linking wrong issues as fixedForse già presa @CodeAlex52 l’ha presa 33 giorni fa. ApertaProduct Area: Releases Waiting for: Product Owner
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
getsentry/sentry#125575 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Cocoa replays hide Logs tab on supported SDK versionsForse già presa @Brian-An l’ha presa 23 giorni fa. ApertaBug Cocoa Replays
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
getsentry/sentry#124217 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
SAML2 Login Dark modeApertaProduct Area: Settings - Auth Waiting for: Product Owner
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
getsentry/sentry#122437 · 6 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di getsentry/sentry
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
huggingface/smolagents#3106 ·
I maintainer di solito rispondono entro 2 giorni
-
area:scripts area:tests bug priority:later
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Ikalus1988/MisakaNet#4358 ·
I maintainer di solito rispondono entro 1 giorno
-
Discovered ports from service discovery are never propagated to modules in Module.load()Forse già presa @vishalmore90 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
OWASP/Nettacker#1828 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
aws-samples/sample-per-model-bedrock#708 ·
I maintainer di solito rispondono entro 1 giorno
-
maintenance
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100