看 pnpm 官网文档的时候有一个疑惑 https://pnpm.io/zh/symlinked-node-modules-structure
pnpm 这里的 node module resolve 算法怎么理解呢。在 foo 中 require bar,如果说因为 .pnpm/foo@1.0.0/node_modules/bar 是软链所以被忽略的话,根据 node 模块查找算法,不应该开始查找 .pnpm/node_modules 目录(实际不存在)么?如果说 node 发现是软链,会定位到模块的原始文件,resolve 到 .pnpm/bar@1.0.0/node_modules/bar 倒是可以说通了,求问这里该如何理解呢。
https://meixg.cn/2021/01/25/ln-nodejs/
https://github.com/nodejs/node/issues/3402
https://github.com/orgs/pnpm/discussions/8347