You say that as packages never receive updates. Unless you’re doing a lot of installs every day (let’s say on CI), you’re suggesting it’s better to forcibly download a hundred megabytes of data daily just to potentially save a couple of megabytes once a week.
There’s a smarter mechanism than that: npm already caches packages locally twice, both in node_modules and in a global location.
In reality you’re probably never going to install every dependency from scratch every day, so you’re already using either cache on every install.
What I’d like to see instead is a pre-resolution of packages done by the registry. I have a list of 30 dependencies, please resolve the tree and send it all over instead of forcing me to do a waterfall of fetches.