{"record":{"id":"45bd92dfd1848b0f","repo":"LykosAI/StabilityMatrix","slug":"project-was-created-in-an-earlier-pre-release-version-of","errorCode":null,"errorMessage":"Project was created in an earlier pre-release version of Stability Matrix and is no longer supported. Please create a new project.","messagePattern":"Project was created in an earlier pre-release version of Stability Matrix and is no longer supported\\. Please create a new project\\.","errorType":"exception","errorClass":"NotSupportedException","httpStatus":null,"severity":"error","filePath":"StabilityMatrix.Avalonia/Models/InferenceProjectDocument.cs","lineNumber":49,"sourceCode":"            ProjectType = loadableModel switch\n            {\n                InferenceImageToImageViewModel => InferenceProjectType.ImageToImage,\n                InferenceTextToImageViewModel => InferenceProjectType.TextToImage,\n                InferenceImageUpscaleViewModel => InferenceProjectType.Upscale,\n                InferenceImageToVideoViewModel => InferenceProjectType.ImageToVideo,\n                InferenceFluxTextToImageViewModel => InferenceProjectType.FluxTextToImage,\n                InferenceWanImageToVideoViewModel => InferenceProjectType.WanImageToVideo,\n                InferenceWanTextToVideoViewModel => InferenceProjectType.WanTextToVideo\n            },\n            State = loadableModel.SaveStateToJsonObject()\n        };\n    }\n\n    public void VerifyVersion()\n    {\n        if (Version < 2)\n        {\n            throw new NotSupportedException(\n                $\"Project was created in an earlier pre-release version of Stability Matrix and is no longer supported. \"\n                    + $\"Please create a new project.\"\n            );\n        }\n    }\n\n    public SeedCardModel? GetSeedModel()\n    {\n        if (State is null || !State.TryGetPropertyValue(\"Seed\", out var seedCard))\n        {\n            return null;\n        }\n\n        return seedCard.Deserialize<SeedCardModel>();\n    }\n\n    /// <summary>\n    /// Returns a new <see cref=\"InferenceProjectDocument\"/> with the State modified.","sourceCodeStart":31,"sourceCodeEnd":67,"githubUrl":"https://github.com/LykosAI/StabilityMatrix/blob/af93d6ef57c01cd890d7e0ad0a9ea8c9fcda3002/StabilityMatrix.Avalonia/Models/InferenceProjectDocument.cs#L31-L67","documentation":"InferenceProjectDocument.VerifyVersion() rejects project documents whose Version field is below 2. Such documents were written by pre-release builds of Stability Matrix whose layout is no longer readable, so the library throws NotSupportedException instead of attempting a risky migration.","triggerScenarios":"Loading an inference project file (.smp) saved by an early pre-release version and calling VerifyVersion() on it.","commonSituations":"Opening old projects from before a stable release after upgrading the app; importing project archives created during alpha/beta testing; files with a missing or defaulted Version field (older serializers wrote nothing).","solutions":["Recreate the project in the current version of Stability Matrix.","If the old data matters, open it in a matching legacy pre-release build and re-save/export assets manually.","Catch NotSupportedException around VerifyVersion/Load and offer the user a 'create new project' flow.","Migrate by rebuilding the workflow nodes from a screenshot or exported image of the old graph."],"exampleFix":"// before\nprojectDoc.VerifyVersion(); // throws for Version < 2\n// after\ntry\n{\n    projectDoc.VerifyVersion();\n}\ncatch (NotSupportedException)\n{\n    promptUserToCreateNewProject();\n}","handlingStrategy":"try-catch","validationCode":"if (projectDoc.Version < 2)\n    ShowLegacyProjectDialog(); // offer re-creation before calling VerifyVersion","typeGuard":"bool IsSupported(InferenceProjectDocument d) => d.Version >= 2;","tryCatchPattern":"try { doc.VerifyVersion(); }\ncatch (NotSupportedException)\n{\n    Dialog.Show(\"This project predates supported versions. Please create a new project.\");\n}","preventionTips":["Check Version at project-open time before any other deserialization work.","Do not attempt to hand-edit legacy project files into new versions.","Keep exports/imports of workflows in image or portable formats for long-term archival."],"tags":["compatibility","versioning","migration"],"backgroundTag":"unsupported-operation","analyzedSha":"af93d6ef57c01cd890d7e0ad0a9ea8c9fcda3002","analyzedAt":"2026-09-12T19:02:43.389Z","contentChangedAt":"2026-09-12T19:02:43.389Z","schemaVersion":2},"datasetVersion":"2026-09-16T04:17:20.429Z"}