Skip to content

Fallback sync task for announcements #1736

Description

@cka-y

Description:
Create a scheduled task that periodically polls the Brevo contact list and reconciles any drift with the database. This serves as a safety net in case the real-time sync on subscribe/unsubscribe misses an update.

Can reuse get_contact_subscription_status() from brevo.py. Low priority if the sync on subscribe/unsubscribe is reliable.

Acceptance Criteria:

  • Scheduled task runs on a configurable interval
  • Compares Brevo contact list with notification_subscription rows for api.announcements
  • Reconciles differences (adds missing subs, deactivates removed ones)
  • Logs reconciliation actions
  • Reuses existing brevo.py helper functions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions