Phase 7 of the systematic plan: proptest-driven property-based
testing for the firewall and conntrack state machines.
filter/table.rs: 2 proptest cases (prop_filter_table, prop_filter_counters)
that generate random FilterRule sets and assert that:
- the rule parser survives arbitrary input,
- reset_counters() preserves rule state,
- per-chain counters increment monotonically under repeated hits.
filter/conntrack.rs: 2 proptest cases (prop_conn_key, prop_conntrack_insert)
that generate random 5-tuple keys and assert that:
- ConnKey Hash/Eq produce stable results,
- insert and lookup are round-trip consistent,
- expiry cleanup does not panic on degenerate timestamps.
Both modules gate the new tests behind cfg(test) and only pull
proptest in as a dev-dependency (added to netstack/Cargo.toml).
This commit does not change the smoltcp 0.13.1 API call site in
scheme/ip.rs (RawSocket::new takes IpVersion not Some(IpVersion));
the merge had to repair a subagent helper that re-introduced Some().