fix: avoid npm reinstall for empty devDependencies
HA
1d ago+69+69+01234567890123456789-2-2-0123456789
Summary
- Treat a missing
devDependenciesfield and an empty object as equivalent when comparing rendered package manifests. - Preserve the npm install cache when a source-only reload produces no meaningful manifest change.
- Add regression tests for manifest sync and install-cache preservation.
Fixes #7480
Tests
uv run pytest tests/units/utils/test_frontend_skeleton.py tests/units/utils/test_js_runtimes.py -q(24 passed)- Targeted pre-commit checks passed.
- Verified locally with
REFLEX_USE_NPM=1: a Python source-only hot reload rebuilt the app without rerunning npm install.