Release v1.1.0: The Great Decoupling
Release v1.1.0: The Great Decoupling
This release introduces a major architectural milestone for the project. The internal architecture has been entirely rewritten to separate the monolithic structure into a fully decoupled workspace.
This release sets the foundation for future extensibility and provides significantly richer telemetry data for network diagnostics.
Major Architectural Changes (The Great Decoupling)
- Introduction of
intqual-core: The monolithic application has been split into a Cargo Workspace. The core network intelligence engine, diagnostic probes, and business logic are now completely isolated in theintqual-corelibrary. - Standalone Engine Usage: Developers can now import
intqual-coreinto their own Rust applications to leverage highly concurrent ICMP, TCP, and Traceroute engines without bringing in any CLI/UI overhead. - Strict Encapsulation: The CLI is now a "Thin Client" that interacts with the engine purely through
TelemetryEventdata contracts, enforcing strict thread-safety and robust data flow.
Enhanced Diagnostic Precision
- ICMP Error Telemetry: Previously, detailed ICMP error fields were intercepted but swallowed by the engine. Now, raw ICMP
typeandcodevariables fromTimeExceededandDestinationUnreachablepackets are extracted and surfaced directly to the UI. - Richer Traceroute Hops: Traceroute hops now include a dedicated
icmp_errorfield. When a route fails or drops packets, precise, low-level OS/Network error codes are provided instead of silent timeouts, enabling much faster root-cause analysis.
Performance & Quality Improvements
- Memory Optimization: Eliminated redundant heap allocations (
Arc<String>) inside the high-frequency probe loops (e.g.,TracerouteProbe), reducing reference-counting overhead and improving CPU cache locality. - Zero Technical Debt: Conducted a thorough codebase audit, resolving all hidden
dead_codewarnings and YAGNI violations. The engine now compiles with strict zero-warnings policies (-D warnings). - CI/CD Upgrades: Release pipelines have been updated to seamlessly handle multi-crate publishing (
intqual-corefollowed byintqual).
For Developers
To use the new core engine in your own Rust project:
[dependencies]
intqual-core = "1.1.0"Full Changelog: v1.0.9...v1.1.0