Skip to content

v2026-03-17.1 — Traceroute Burst Capture

Choose a tag to compare

@itsDNNS itsDNNS released this 17 Mar 12:31
· 664 commits to main since this release
0dbd432

New Features

Connection Monitor: Traceroute Burst Capture (#196)

  • Event-triggered traceroute — automatically captures hop-level network path when outages or packet loss are detected (5-min cooldown per target)
  • Manual traceroute — "Run Traceroute" button in the Connection Monitor detail view
  • Trace history — clickable trace list with hop detail expansion showing per-hop IP, hostname, latency, and probe response count
  • New C helper binary (docsight-traceroute-helper) with setuid privilege dropping and per-hop stdout flushing for partial results on timeout
  • New API endpointsPOST /api/connection-monitor/traceroute/<id>, GET /api/connection-monitor/traces/<id>, GET /api/connection-monitor/trace/<id>
  • Demo mode — realistic sample traces for Cloudflare and Google DNS targets
  • i18n — all 4 languages (EN/DE/FR/ES)

UX Improvements

  • Chart zoom persistence — zoom state survives the 10-second auto-refresh cycle
  • Reset Zoom button — visible button appears when zoomed in, with hover tooltip ("Drag to zoom, double-click to reset")
  • Dynamic Y-axis scaling — adapts to actual latency data instead of hardcoded 200ms ceiling (40ms floor for low-latency connections)
  • No more scroll jumps — container height is pinned during chart refresh to prevent page jumping

Bugfixes

  • Security: check seteuid() return value in traceroute helper, drop privileges in --check path
  • Flaky test: mock utc_now in Smart Capture timeline test (was date-dependent)
  • i18n: correct German umlaut in traceroute.running

Stats

  • 23 files changed, +1956 lines
  • 39 new tests (1769 total, all passing)