Add multiple features
This commit is contained in:
2
docs/debian_command_outcome.txt
Normal file
2
docs/debian_command_outcome.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
sudo ./target/release/wtfn dns watch --duration 5s
|
||||
iface: eno1 duration_ms: 5000 filter: -
|
||||
29
docs/implementation_status.md
Normal file
29
docs/implementation_status.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# Implementation Status vs Design
|
||||
|
||||
This document tracks current implementation status against the original design in `docs/implementation_notes.md`.
|
||||
|
||||
## Matches the design
|
||||
- Workspace layout with feature crates (`wtfnet-core`, `wtfnet-platform`, `wtfnet-geoip`, `wtfnet-probe`, `wtfnet-dns`, `wtfnet-http`, `wtfnet-tls`, `wtfnet-discover`, `wtfnet-diag`).
|
||||
- CLI remains a thin wrapper around library crates.
|
||||
- Platform abstraction uses traits with OS dispatch.
|
||||
- GeoIP: local GeoLite2 Country + ASN support.
|
||||
- Probe: ping/tcping/trace with GeoIP enrichment.
|
||||
- DNS: Hickory-based query/detect with best-effort heuristics.
|
||||
- HTTP: head/get via reqwest.
|
||||
- TLS: rustls-based handshake/verify/cert/alpn.
|
||||
- Discover: mDNS/SSDP bounded collection.
|
||||
- Diag: bundle export in zip.
|
||||
|
||||
## Deviations or refinements
|
||||
- DNS adds DoT/DoH and SOCKS5 proxy support (beyond initial scope).
|
||||
- HTTP timing breakdown is best-effort: `dns_ms` and `ttfb_ms` are captured; `connect_ms`/`tls_ms` remain placeholders.
|
||||
- DNS watch uses `pnet` and is feature-gated as best-effort.
|
||||
|
||||
## Gaps vs design (as of now)
|
||||
- HTTP/3 not implemented.
|
||||
- TLS verification is rustls-based (no OS-native verifier).
|
||||
- Discover does not include LLMNR/NBNS.
|
||||
|
||||
## Current stage summary
|
||||
- v0.1 scope is complete.
|
||||
- v0.2 scope mostly complete; remaining are deeper test coverage and optional enhancements.
|
||||
@@ -58,10 +58,15 @@ This document tracks the planned roadmap alongside the current implementation st
|
||||
- DNS watch (passive, best-effort) implemented.
|
||||
- Calc subcrate with subnet/contains/overlap/summarize wired to CLI.
|
||||
- CMake/Makefile build, install, and package targets for release packaging.
|
||||
- HTTP crate with head/get support, timing breakdown, and optional GeoIP.
|
||||
- TLS crate with handshake/verify/cert/alpn support in CLI.
|
||||
- Discover crate with mdns/ssdp commands.
|
||||
- Diag crate with report and bundle export.
|
||||
- Basic unit tests for calc and TLS parsing.
|
||||
|
||||
### In progress
|
||||
- v0.2 features: http, tls, discover, diag.
|
||||
- None.
|
||||
|
||||
### Next
|
||||
- Complete remaining v0.2 crates/commands (http/tls/discover/diag/dns watch).
|
||||
- Add v0.2 tests (dns detect, calc, basic http/tls smoke).
|
||||
- Add v0.2 tests (dns detect, basic http/tls smoke).
|
||||
- Validate http/tls timings and improve breakdown if possible.
|
||||
|
||||
Reference in New Issue
Block a user