Currently (as of Sep 2026), the older packageManager top-level field in package.json is supported, but this is marked as legacy by pnpm docs ( https://pnpm.io/package_json#devenginespackagemanager ).
pnpm v11+ self-manages pnpm versions by default using the modern devEngines.packageManager field.
The current latest version of pnpm is v12 (the Rust rewrite). Using either v11 or v12 would enable usage of the modern devEngines.packageManager field.