fix(management): serialize marketplace registry reconciliation

- keep bare and non-bare marketplace normalization inside the plugin-layout lock
- warn when malformed registry sources are skipped during reconciliation
- add regression coverage for cross-instance refresh metadata and legacy layout upgrade
This commit is contained in:
Tam Nhu Tran committed 2026-03-18 07:34:05 -04:00
1 parent 242a095edb
commit 68a5d17327
4 files changed
+156 -36

No files matched your search

+7 -6
View File
@@ -59,14 +59,15 @@ class InstanceManager {
await this.sharedManager.syncProjectContext(instancePath, contextPolicy);
await this.sharedManager.syncAdvancedContinuityArtifacts(instancePath, contextPolicy);
if (!options.bare) {
await this.pluginLayoutLock.withNamedLock('__plugin-layout__', async () => {
await this.pluginLayoutLock.withNamedLock('__plugin-layout__', async () => {
if (!options.bare) {
this.sharedManager.linkSharedDirectories(instancePath);
});
}
});
return;
}
this.sharedManager.normalizeSharedPluginMetadataPaths(options.bare ? undefined : instancePath);
this.sharedManager.normalizeSharedPluginMetadataPaths();
});
});
// Sync MCP servers from global ~/.claude.json (unless bare)
if (!options.bare) {