Our Approach
Our tool begins with a detailed change impact analysis. This includes:
After understanding dependency changes and project interactions, we expand testing coverage to validate stability:
The advantage to our field level inspection is that the test expansions don't need to concern themselves with assertions. Instead we just complete the coverage and use the field analysis to determine if there is a behavior change.
By having such a detailed analysis done prior, we can ensure that our field state checks, and later the validation step, target only areas of the project and module that are relevant for the change. This keeps our tool fast. Our techniques are very detailed, and must be targeted in order to have reasonable execution times.
Once prepared, our tool is aware of the intersection from the dependency change and the project. We must then validate:
Risk is determined by performing a combination of unit testing and the field analysis described in the expand section above.
We determine confidence by:
Beyond functional validation, PatchLens specifically elevates security concerns by monitoring how dependencies interact with security-sensitive operations. Even when code accessing sensitive resources isn't new, we flag any behavioral changes — like a networking library suddenly connecting to unexpected servers, or a utility attempting to access credential files. This runtime analysis helps detect zero-day supply chain attacks where malicious actors subtly alter legitimate package behavior to exfiltrate data or compromise systems.
Try PatchLens free with our GitHub Action or open-source CLI.