v0.6.0 — Notification overhaul
Highlights
Major overhaul of Slack and Discord notifications for runtime errors, monitors, new endpoints, log patterns, and scheduled reports — denser, clearer, less wasted vertical space, and more actionable.
Slack alerts
- Severity color bar via
attachmentswrapper — red/orange/amber/blue/green/slate applied consistently across all alert types - Compact titles —
{emoji} *{label}* · {errorType} in {project}(no more triple-duplicated error headers) - Top stack frame inlined in the body for file/line context at a glance
- Secondary action button —
View traceappears alongside🔍 Investigatewhen a traceId is present, jumping into Log Explorer filtered by trace_id - Single context block (was up to three), empty fields dropped instead of rendering as empty backticks
- First seen now shows compact relative + absolute time (e.g.
3m ago · Apr 14 4:17 PM) - Field labels standardized:
Environment/Route/Rate/Runtime/Trace - Monitor alert: passive
🤖 Alert triggered for X→ active🚨 Monitor alerting: X; resolved state gets green bar + clickable title - New endpoints: proper singular/plural, redundant body prose removed
- Log-volume rate change: signed change (
+42%/-18%), amber on spike / blue on drop - Report: merged context blocks, terse image titles, explicit
Open reportbutton
Discord alerts
- Per-severity embed colors matching Slack palette
- Monitor content and titles aligned with Slack wording
- Removed redundant body intros on log-pattern and rate-change embeds
- New-endpoint plural fixed
Chart rendering fix
- ECharts bars rendered as a fused "square blob" due to
showBackgroundpainting empty buckets — removed, addedbarCategoryGap: 30%,barMaxWidth: 10, and roundedborderRadiusso columns read as distinct rounded bars
Incidental fixes
- Trace viewer: orphan spans whose parent isn't in the current batch are normalized to roots instead of being silently dropped
- Span timing bar chart: guard against non-finite
maxDurationwhen all bars share the same start