mirror of
https://github.com/ruvnet/RuView
synced 2026-07-22 17:23:19 +00:00
99fea9df9b
Root cause (investigated, same rigor as the MAT fix): `wifi-densepose-train` declared `wifi-densepose-nn` as a dependency but NEVER imported it anywhere in src/ or bin/ — a dead dependency. (The tch-backend model path uses the `tch` crate directly, not wifi-densepose-nn; `grep -r wifi_densepose_nn src/` returns nothing.) That dead dep pulled `ort` (ONNX Runtime) + reqwest/hyper into every downstream consumer, including the ADR-185 `[meridian]` wheel, which binds only train's pure-compute geometry / rapid_adapt / eval modules + signal::hardware_norm. `cargo tree -i wifi-densepose-nn` confirmed train was the SOLE path pulling nn into the wheel; after removal, the package is absent from the graph. Fix: remove the dead dep line from train's Cargo.toml (no code change, no feature-gating needed — nothing referenced it). Not a hoist: the coupling turned out to be nonexistent, not deep. Measured (maturin build --release --features meridian --strip): BEFORE: 1.8 MB AFTER: 1.7 MB (both already within the ADR-117 §5.4 <=5 MB budget). Honest note: unlike MAT — which instantiates OnnxSession and thus bundles the ort native runtime (8.4 MB) — train never references ort, so the native lib was dead-stripped and the wheel was already under budget. The real win is removing ort/reqwest/hyper from train's dependency graph and compile for ALL consumers, not a dramatic wheel shrink. Verified: cargo build -p wifi-densepose-train (default=[]) OK cargo tree -i wifi-densepose-nn -> no longer in the graph cargo test --features meridian --test meridian_parity 2/2 pass maturin develop --features meridian + pytest test_meridian 13/13 pass