{"record":{"id":"b8f01fdad9802a7e","repo":"koala73/worldmonitor","slug":"unsupported-settings-version-parsed-version","errorCode":null,"errorMessage":"Unsupported settings version: ${parsed.version}","messagePattern":"Unsupported settings version: (.+?)","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"src/utils/settings-persistence.ts","lineNumber":92,"sourceCode":"  return new Promise((resolve, reject) => {\n    if (file.size > MAX_IMPORT_SIZE_BYTES) {\n      reject(new Error('File is too large. Maximum size is 5MB.'));\n      return;\n    }\n\n    const reader = new FileReader();\n\n    reader.onload = (e) => {\n      try {\n        const result = e.target?.result as string;\n        const parsed = JSON.parse(result) as ExportedSettings;\n\n        if (!parsed || typeof parsed.data !== 'object' || Array.isArray(parsed.data)) {\n          throw new Error('Invalid format: expected an object with a data property.');\n        }\n\n        if (parsed.version !== 1) {\n          throw new Error(`Unsupported settings version: ${parsed.version}`);\n        }\n\n        let keysImported = 0;\n        const importedKeys: string[] = [];\n        for (const [key, value] of Object.entries(parsed.data)) {\n          if (isSettingsKey(key) && typeof value === 'string') {\n            localStorage.setItem(key, value);\n            keysImported++;\n            importedKeys.push(key);\n          }\n        }\n        invalidatePanelStorageCacheForKeys(importedKeys);\n\n        resolve({ success: true, keysImported });\n      } catch (err) {\n        reject(err);\n      }\n    };","sourceCodeStart":74,"sourceCodeEnd":110,"githubUrl":"https://github.com/koala73/worldmonitor/blob/a96956387a927b8cd7aa34b0c41fca357e746be9/src/utils/settings-persistence.ts#L74-L110","documentation":"UI error in importSettings: the export file's version field is not 1, the only currently supported settings format. A forward/backward-compatibility guard — future or hand-edited versions are rejected before any migration is attempted.","triggerScenarios":"Thrown at src/utils/settings-persistence.ts:89 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Re-export settings from a compatible app version","Do not hand-edit the version field of the export file"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a96956387a927b8cd7aa34b0c41fca357e746be9","analyzedAt":"2026-08-21T16:51:25.751Z","contentChangedAt":"2026-08-21T16:51:25.751Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}