I'm so done with npm's 'it works on my machine' philosophy. How is it that a simple `npm install` can bring in 300+ transitive dependencies and still manage to break something? Can't we just have reproducible builds for once?