```plaintext
%% ntfy-Discord Bridge (ADR-0022)
%% Sequence diagram showing message flow and transformation
sequenceDiagram
autonumber
participant S as Notification Source
(CI/Alertmanager)
participant N as ntfy
Notification Hub
participant B as ntfy-discord
Go Bridge
participant D as Discord
Webhook
Note over S,N: Events published to ntfy topics
S->>N: POST /gitea-ci
{title, message, priority}
Note over N,B: SSE subscription for real-time
N-->>B: SSE JSON stream
{topic, message, priority, tags}
Note over B: Message transformation
rect rgb(240, 240, 240)
B->>B: Map priority to embed color
urgent=red, high=orange
default=blue, low=gray
B->>B: Format as Discord embed
{embeds: [{title, description, color}]}
end
B->>D: POST webhook URL
Discord embed format
Note over B: Hot-reload support
rect rgb(230, 245, 230)
B->>B: fsnotify watches secrets
B->>B: Reload config without restart
end
Note over B,D: Retry with exponential backoff
alt Webhook fails
B-->>B: Retry (2s, 4s, 8s...)
B->>D: Retry POST
end
D-->>D: Display in channel
```