Skip to content

feat(notifications): native Discord webhook support#325

Merged
itsDNNS merged 2 commits intomainfrom
feat/discord-webhook-324
Apr 10, 2026
Merged

feat(notifications): native Discord webhook support#325
itsDNNS merged 2 commits intomainfrom
feat/discord-webhook-324

Conversation

@itsDNNS
Copy link
Copy Markdown
Owner

@itsDNNS itsDNNS commented Apr 10, 2026

Summary

  • Auto-detect Discord webhook URLs and send notifications as rich embeds instead of raw JSON
  • Severity-colored embeds (blue/amber/red) with structured event detail fields
  • Zero-config: just paste a Discord webhook URL, no extra settings needed
  • Full Discord API compliance: embed length limits (title 256, desc 4096, field name 256, field value 1024, 25 fields, 6000 total), versioned API paths, query params
  • Webhook token redacted from all log output to prevent credential leaks
  • 42 new tests covering URL detection, embed formatting, Discord API limits, and security

Test plan

  • 42 unit tests pass (tests/test_notifier.py)
  • Full test suite: 1990 tests pass, no regressions
  • 5 rounds of independent code review (security, Discord API compliance, edge cases)
  • Manual test with real Discord webhook URL

Closes #324

Auto-detect Discord webhook URLs and format notifications as rich
embeds with severity-colored badges and structured event details.
Zero-config: users just paste their Discord webhook URL.

Closes #324
CodeQL flagged the redacted webhook URL as sensitive data. Replace
with a static label since the URL is not needed for diagnostics.
@itsDNNS itsDNNS merged commit 71c408c into main Apr 10, 2026
8 checks passed
@itsDNNS itsDNNS deleted the feat/discord-webhook-324 branch April 10, 2026 11:02
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.

feat: Native Discord webhook support for notifications

2 participants