Skip to main content

Migration Plan

:::info Source Sourced from services/notification-service/MIGRATION_PLAN.md in the documentation repo. :::

1. Rules

  • Template schema versioned; old sends use template-at-time-of-send.
  • Channel enum additive (new channels OK).
  • Provider ACL abstracts providers; swap possible without event changes.

2. Database

Additive. Partition notifications by month for retention.

3. API

URL major on breaking.

4. Event Evolution

All v1 additive.

5. Template Migration

  • Template has SemVer; changes create new version.
  • In-flight sends use template-at-queue-time.

6. Provider Migration

  • ACL-backed: change provider by updating config.
  • Multi-provider for failover during migration.
  • Reputation transfers supported where possible.

7. Preferences Migration

  • User prefs tolerant of new channels (default opt-out).
  • Existing prefs unchanged.

8. Data Residency

Notifications + templates pinned to tenant homeRegion.

9. GDPR

  • Subscription data erased on request.
  • Historical delivery records anonymized.

10. Changelog

New channels, templates, AI features, provider migrations.