{"record":{"id":"4153b304f9f239d8","repo":"Fission-AI/OpenSpec","slug":"store-id-conflict","errorCode":"store_id_conflict","errorMessage":"Store '${id}' is already registered at ${getStoreRootForBackend(entry.backend)}. One checkout per store id is supported on this machine.","messagePattern":"Store '(.+?)' is already registered at (.+?)\\. One checkout per store id is supported on this machine\\.","errorType":"error_code","errorClass":"StoreError","httpStatus":null,"severity":"error","filePath":"src/core/store/registry.ts","lineNumber":101,"sourceCode":"  }\n}\n\nexport function assertNoRegisteredStoreConflict(\n  registry: StoreRegistryState | null,\n  id: string,\n  backend: StoreGitBackendConfig\n): void {\n  const nextPath = normalizePathForComparison(getStoreRootForBackend(backend));\n\n  for (const entry of listStoreRegistryEntries(registry ?? { version: 1, stores: {} })) {\n    const entryPath = normalizePathForComparison(getStoreRootForBackend(entry.backend));\n\n    if (entry.id === id && entryPath === nextPath) {\n      continue;\n    }\n\n    if (entry.id === id) {\n      throw new StoreError(\n        `Store '${id}' is already registered at ${getStoreRootForBackend(entry.backend)}. One checkout per store id is supported on this machine.`,\n        'store_id_conflict',\n        {\n          target: 'store.id',\n          fix: `Use the existing registration, or run openspec store unregister ${id} first to switch this id to a different checkout.`,\n        }\n      );\n    }\n\n    if (entryPath === nextPath) {\n      throw new StoreError(\n        `Store path is already registered as '${entry.id}'.`,\n        'store_path_conflict',\n        {\n          target: 'store.root',\n          fix: `Use the existing '${entry.id}' registration or choose a different path.`,\n        }\n      );","sourceCodeStart":83,"sourceCodeEnd":119,"githubUrl":"https://github.com/Fission-AI/OpenSpec/blob/6926ccb18afa4ff621112813e9968334576ee11a/src/core/store/registry.ts#L83-L119","documentation":"Error \"Store '${id}' is already registered at ${getStoreRootForBackend(entry.backend)}. One checkout per store id is supported on this machine.\" thrown in Fission-AI/OpenSpec.","triggerScenarios":"Thrown at src/core/store/registry.ts:101 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6926ccb18afa4ff621112813e9968334576ee11a","analyzedAt":"2026-08-25T12:29:45.729Z","schemaVersion":2},"datasetVersion":"2026-08-25T16:17:27.014Z"}