Adding "type": "module" to your package.json breaks imports, mocks, and dynamic requires in ways that are hard to predict. This guide walks through the practical migration path: incremental adoption, dual-package patterns, testing compatibility, and the traps that catch every team the first time.