manifest: add optional format field for release dispatch
introduces an optional top-level "format" field on the signed manifest, defaulting to legacy-json-blob when absent so existing installs keep parsing unchanged. follow-up commits wire the release format factory and the m2pack strategy against this value. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,6 +10,17 @@ namespace Metin2Launcher.Manifest;
|
||||
/// </summary>
|
||||
public sealed class Manifest
|
||||
{
|
||||
[JsonPropertyName("format")]
|
||||
public string? Format { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Effective release format. Defaults to <c>legacy-json-blob</c> when the
|
||||
/// field is absent, which preserves backward compatibility with manifests
|
||||
/// produced before the m2pack migration.
|
||||
/// </summary>
|
||||
public string EffectiveFormat =>
|
||||
string.IsNullOrWhiteSpace(Format) ? "legacy-json-blob" : Format;
|
||||
|
||||
[JsonPropertyName("version")]
|
||||
public string Version { get; set; } = "";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user