Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

fix(notifications): dispatcher ignores a subscription's feeds and sends every feed.url_updated event

Aperta Adatta ai principianti
#1,875 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
78/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
python
Ambito
backend

Direzione di ricerca

Inizia da functions-python/tasks_executor/src/tasks/notifications/dispatch_notifications.py, soprattutto da apply_filter_params, e leggi i test del dispatcher per vedere come sono rappresentati i feed delle sottoscrizioni e il filter_params legacy. Aggiungi un test del dispatcher per una sottoscrizione associata a un feed tramite la tabella di join, poi verifica che vengano inviati solo gli eventi di quel feed, mentre le righe legacy continuino a usare il fallback.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Problem

Subscriptions store their feeds in notification_subscription_feed (#1778), but the dispatcher still filters on the old notification_subscription.filter_params.feed_ids (apply_filter_params in functions-python/tasks_executor/src/tasks/notifications/dispatch_notifications.py). Nothing writes filter_params any more, so it is NULL and every event passes the filter.

Impact: a user subscribed to one feed gets URL-update emails for every feed.

Steps to reproduce

  1. Subscribe a user to feed.url_updated for feed A only
  2. Change the URLs of feeds A and B
  3. Run the dispatcher: the user is emailed about both

Fix

  • Filter events against the subscription's notification_subscription_feeds
  • Keep reading filter_params only as a fallback for legacy rows
  • Add a dispatcher test with a feed-scoped subscription that uses the join table

Relates to MobilityData/product-tasks#196

Lingua principale
Python
Stelle
34
Fork
7
Merge medio
2g 4h
PR unite (30g)
8

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di MobilityData/mobility-feed-api

Tutte le issue di MobilityData/mobility-feed-api

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.