You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Umbrella for the whole open backlog. Every item below has its own issue with the mechanism, the evidence, file references, and — where it was deliberately deferred — the reason.
How this list was produced, and what it is not
These are not regressions from recent work. They are the accumulated output of sustained adversarial review pointed at code that had never been measured. Of the items filed most recently, all but one were already true of main before the work that found them; they were simply not written down.
The one exception is noted in its own issue as a deliberate consequence, not a defect.
Review-round counts are falling as the review finds less: 17 rounds to clean approve, then 14, then 3.
Fixing them by class closes several issues each; fixing them one instance at a time is what makes the list look endless.
1. Absence read as fact. An error, an empty result, or a check that never ran is treated as a negative claim. #103, #104, #111, #114, #115, #116 — and, historically, an unparseable workflow file that contributed no checks while reading as green.
hick-mio's has_addr_in already states the rule: "a failure is not an absence… has cost this crate twice before." The InterfaceLookup classifier now in hick-udp/src/multicast.rs is the shape to reuse — #103 and #104 are one PR, not two.
2. One fact, two spellings, no single home. The same truth stated in two places and kept in sync by care rather than by a compiler. #98, #102, #109, #120, #123.
Every instance has cost review rounds. The precedent that works is extraction: the §11 rule copied into four drivers became one no_std crate, with the copies deleted rather than synchronised.
3. Found by reading, never by a test. Five driver divergences, and every per-family collapse. #105 is the structural answer — a conformance harness driving all four drivers with identical inputs, asserting their decisions agree or that each disagreement is deliberate.
Umbrella for the whole open backlog. Every item below has its own issue with the mechanism, the evidence, file references, and — where it was deliberately deferred — the reason.
How this list was produced, and what it is not
These are not regressions from recent work. They are the accumulated output of sustained adversarial review pointed at code that had never been measured. Of the items filed most recently, all but one were already true of
mainbefore the work that found them; they were simply not written down.The one exception is noted in its own issue as a deliberate consequence, not a defect.
Review-round counts are falling as the review finds less: 17 rounds to clean approve, then 14, then 3.
P0 — release blockers
Nothing else blocks publishing.
hick-tracenow needs its first breaking bumpCHANGELOG.md; it asserts a release that never happened and drifted mid-branchhick-onlinkfirst), and the unposted reply to "dropping off-link packet" for link-local packets #86P1 — correctness or safety on shipped code
instance == host, the instance NSEC denies A/AAAA records the same announcement emitsmdns-prototakes asinterface_indexCachekeys on derived equality, so a caller-supplied name without the root dot misses every entryhick-compio/hick-reactorread an enumeration error as "no IPv6"onlink.rsreads an enumeration failure as absence, one site feeding the §11 gateP2 — real defects, bounded impact or unlikely trigger
mainnext()— quadratic twice overSO_TIMESTAMPenable silently degrades every self-send claim for the socket's lifecargo fmtcannot seemdns-proto/src/endpoint/**; the check passes because it never ran--all-targetsbuild at default features, and miri's conclusion reads asnull-D warningsin two configurations CI never buildsNamecannot represent an instance label containing a dot, which RFC 6763 §4.1.1 permitsP3 — hygiene, ergonomics, long tail
hick-udp'sWSARecvMsghick-udpdocs describehick-onlinkbehaviour with nothing checking the two agreeadjudicateoverloadsWeHold: a non-verdict and a won comparison are the same valuehick-smoltcpdoes not log goodbye sends, unlike the three std driversWithdrawalSnapshot::ownedcarries a likely-stale#[allow(dead_code)]try_register_servicestill accepts a structurally invalid service typeDesign-first, not a release blocker
ServiceUpdate,ServiceEventandEndpointEventare all#[non_exhaustive], so new states are additive and this does not have to precede the release.Three classes account for most of this list
Fixing them by class closes several issues each; fixing them one instance at a time is what makes the list look endless.
1. Absence read as fact. An error, an empty result, or a check that never ran is treated as a negative claim.
#103, #104, #111, #114, #115, #116 — and, historically, an unparseable workflow file that contributed no checks while reading as green.
hick-mio'shas_addr_inalready states the rule: "a failure is not an absence… has cost this crate twice before." TheInterfaceLookupclassifier now inhick-udp/src/multicast.rsis the shape to reuse — #103 and #104 are one PR, not two.2. One fact, two spellings, no single home. The same truth stated in two places and kept in sync by care rather than by a compiler.
#98, #102, #109, #120, #123.
Every instance has cost review rounds. The precedent that works is extraction: the §11 rule copied into four drivers became one
no_stdcrate, with the copies deleted rather than synchronised.3. Found by reading, never by a test. Five driver divergences, and every per-family collapse.
#105 is the structural answer — a conformance harness driving all four drivers with identical inputs, asserting their decisions agree or that each disagreement is deliberate.