diff --git a/lib/modules/manager/npm/post-update/index.spec.ts b/lib/modules/manager/npm/post-update/index.spec.ts
index 19b2b2d4f1f6d98c4873b4f210e68c39916ac8e8..4ac567e6e3410111643c8c76beed264dd7573322 100644
--- a/lib/modules/manager/npm/post-update/index.spec.ts
+++ b/lib/modules/manager/npm/post-update/index.spec.ts
@@ -78,6 +78,16 @@ describe('modules/manager/npm/post-update/index', () => {
           npmLock: 'package-lock.json',
           rangeStrategy: 'widen',
         },
+        {
+          depName: 'core-js',
+          isRemediation: true,
+          managerData: {
+            lernaJsonFile: 'lerna.json',
+          },
+          npmLock: 'randomFolder/package-lock.json',
+          lockFiles: ['randomFolder/package-lock.json'],
+          rangeStrategy: 'pin',
+        },
         {
           isLockfileUpdate: true,
           npmLock: 'package-lock.json',
@@ -209,6 +219,19 @@ describe('modules/manager/npm/post-update/index', () => {
       ]);
     });
 
+    it('works only on relevant folders', async () => {
+      git.getFile.mockResolvedValueOnce(
+        Fixtures.get('update-lockfile-massage-1/package-lock.json')
+      );
+      await expect(
+        writeExistingFiles(updateConfig, additionalFiles)
+      ).resolves.toBeUndefined();
+
+      expect(fs.writeLocalFile).toHaveBeenCalledTimes(2);
+      expect(fs.deleteLocalFile).not.toHaveBeenCalled();
+      expect(git.getFile).toHaveBeenCalledOnce();
+    });
+
     it('has no npm files', async () => {
       await expect(writeExistingFiles(baseConfig, {})).toResolve();
     });
diff --git a/lib/modules/manager/npm/post-update/index.ts b/lib/modules/manager/npm/post-update/index.ts
index f1c8636996e9043735bfaecc9cba1302b6370a56..0f15c4fc41301e8c6a97d0d6f8716d2807df1c53 100644
--- a/lib/modules/manager/npm/post-update/index.ts
+++ b/lib/modules/manager/npm/post-update/index.ts
@@ -180,6 +180,9 @@ export async function writeExistingFiles(
           const widens: string[] = [];
           let lockFileChanged = false;
           for (const upgrade of config.upgrades) {
+            if (upgrade.lockFiles && !upgrade.lockFiles.includes(npmLock)) {
+              continue;
+            }
             if (
               upgrade.rangeStrategy === 'widen' &&
               upgrade.npmLock === npmLock