WDN used to be a black box ... huge, slow, and tightly coupled to the rest of the pipeline.
Now each denoising step is a registered function: select columns → chunk by period → apply wavelet → reassemble. It runs in CuPy if available, NumPy otherwise. Every step is testable in isolation.
Code’s now readable. Test coverage jumped. And I can run 30+ features across 10M rows without tripping over myself.
[[ML]] [[Serendipity]]