Skip to content

feat: Arbitrator Assignment Notification (Issue #126)#3

Open
FaithOnuh wants to merge 1 commit into
mainfrom
feature/issue-126-arbitrator-assignment-notification
Open

feat: Arbitrator Assignment Notification (Issue #126)#3
FaithOnuh wants to merge 1 commit into
mainfrom
feature/issue-126-arbitrator-assignment-notification

Conversation

@FaithOnuh
Copy link
Copy Markdown
Owner

@FaithOnuh FaithOnuh commented Mar 30, 2026

Summary of Changes

  • Migration 20260330000001_arbitrator_notifications.sql:
    • on_arbitrator_assigned column added to notification_preferences
    • New in_app_notifications table with unread index
  • New TemplateId::ArbitratorAssigned with email/SMS/push templates (includes trade summary + dispute link)
  • NotificationService.notify_arbitrator_assigned: triggered on dispute_raised events that carry an arbitrator field; respects email opt-out preference
  • In-app notification record always created regardless of channel preferences
  • DB helpers: create/list/mark-read/mark-all-read for in_app_notifications
  • New routes:
    • GET /notifications/inbox/:address — list in-app notifications (?unread_only=true)
    • PATCH /notifications/inbox/:address/:id/read — mark single as read
    • POST /notifications/inbox/:address/read-all — mark all as read

Closes Stellar-xcrow#413

…r-xcrow#126)

- Migration: on_arbitrator_assigned pref column + in_app_notifications table
- TemplateId::ArbitratorAssigned with email/SMS/push templates including
  dispute summary and link
- NotificationService.notify_arbitrator_assigned: triggered on dispute_raised
  events that carry an arbitrator field; respects email opt-out preference
- Always creates in-app notification record regardless of channel prefs
- DB: create/list/mark-read/mark-all-read for in_app_notifications
- Routes: GET /notifications/inbox/:address
          PATCH /notifications/inbox/:address/:id/read
          POST  /notifications/inbox/:address/read-all

Closes Stellar-xcrow#126
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Issue #126: Arbitrator Assignment Notification

1 participant