Skip to content

Release Notes (v1.0.6)

Choose a tag to compare

@RaijuMounun RaijuMounun released this 06 Jul 19:29

In this major architectural release, we have completely overhauled the core engine and the UI rendering pipeline of intqual. Guided by strict adherence to S.O.L.I.D. principles, this release establishes a highly robust, extensible, and fault-tolerant "plug-and-play" architecture.

Key Features & Architectural Improvements

Structural Refactoring (S.O.L.I.D. Enforcement)

  • Decoupled Widget Architecture (OCP): The Terminal User Interface (TUI) rendering loop (draw_ui) has been completely redesigned. The monolithic 400-line procedural drawing logic was dismantled and replaced with an intelligent AppWidget Trait. Existing visualizations are now securely isolated into LatencyDashboardWidget (preserving the unified ICMP/TCP comparative UX) and BandwidthWidget. The system is now fully "Open for Extension, Closed for Modification."
  • Asynchronous Contract Discipline (LSP): Addressed a critical violation in the NetworkProbe trait implementations (PingProbe and TcpProbe). We have eliminated detached, fire-and-forget tokio::spawn background threads. Network futures are now strictly, synchronously awaited within the event loops, ensuring thread determinism and preventing silent task abandonment.

Error Handling Overhaul

  • Eliminated Silent Failures: Deep networking errors and runtime thread panics (e.g., from spawn_blocking) are no longer swallowed by detached tasks. Instead, fatal socket layer exceptions properly bubble up to the CoreEngine. The application now accurately logs hardware or permission-based systemic failures rather than appearing visually unresponsive.

UI / UX Enhancements

  • Telemetry streams for Ping and TCP layers are now consistently and efficiently managed by our new state-driven active widget orchestrator, reducing memory footprint and compositor overhead.

Roadmap

Tip

Next Milestone: Traceroute Integration
In the upcoming release, we will leverage our newly established Plug-and-Play Widget architecture to introduce a highly requested feature: Traceroute Analysis.
By utilizing the abstract AppWidget framework, TracerouteWidget will be seamlessly integrated into the dashboard as a standalone analysis tool, without requiring a single line of modification to the core UI rendering loop.


Included Commits:

  • 8279d9b: refactor(core): enforce SOLID principles for network probes and TUI rendering
  • a712ce7: refactor(core): overhaul error handling and prevent silent probe failures
  • 32a88ad: refactor(core): decouple network probes and redesign UI telemetry merging

Full Changelog: v1.0.5...v1.0.6