On this page
The core idea
Dependencies add useful capabilities and a maintenance obligation. Keep a reproducible dependency graph and understand which packages are exposed to untrusted input or run in production. Security advisories need context: affected versions, reachable functionality and available fixes matter more than a raw alert count.
A practical approach
Step 1
Preserve the lockfile and record why major dependencies are present. Remove unused packages deliberately rather than during unrelated work.
Step 2
Review advisories from reliable project or registry sources and determine whether the application uses the affected path.
Step 3
Apply supported updates with targeted checks of the relevant behaviour. Document temporary mitigations and their owner when immediate upgrade is not possible.
Worked example
A document parser receives a security update. The portal should examine the affected parsing path and test representative uploads after upgrading. A successful homepage render alone does not verify that the vulnerable feature was addressed.
A mistake to avoid
Blindly forcing a major version upgrade can introduce incompatible behaviour. Conversely, ignoring an alert because the application appears to work confuses functionality with security.
Try it yourself
Choose one production dependency and write its purpose, installed version, official maintenance source and the feature test you would run after an update.
Your implementation checklist
- Dependency versions are reproducible.
- Advisories are assessed for applicability.
- Updates receive relevant behaviour checks.
- Deferred work has an owner and review date.
Share or cite this guide
Innovate with Ajay Editorial (2026-10-04). Review Dependencies as an Ongoing Maintenance Task. https://innovatewithajay.com/blogs/review-dependencies-as-part-of-maintenance
