namespace OrpaonVision.Core.Training.Contracts; /// /// 运行时部署快照。 /// public sealed class RuntimeDeploymentSnapshot { /// /// 快照ID。 /// public Guid Id { get; init; } = Guid.NewGuid(); /// /// 快照名称。 /// public string Name { get; init; } = string.Empty; /// /// 快照描述。 /// public string Description { get; init; } = string.Empty; /// /// 机种ID。 /// public Guid ProductTypeId { get; init; } /// /// 机种编码。 /// public string ProductTypeCode { get; init; } = string.Empty; /// /// 规则版本ID。 /// public Guid RuleVersionId { get; init; } /// /// 规则版本号。 /// public string RuleVersionNo { get; init; } = string.Empty; /// /// 模型包版本ID。 /// public Guid ModelPackageVersionId { get; init; } /// /// 模型包版本号。 /// public string ModelPackageVersionNo { get; init; } = string.Empty; /// /// 运行时参数版本ID。 /// public Guid RuntimeParameterVersionId { get; init; } /// /// 运行时参数版本号。 /// public string RuntimeParameterVersionNo { get; init; } = string.Empty; /// /// 快照状态。 /// public RuntimeDeploymentSnapshotStatus Status { get; init; } /// /// 创建时间(UTC)。 /// public DateTime CreatedAtUtc { get; init; } = DateTime.UtcNow; /// /// 创建者。 /// public string CreatedBy { get; init; } = string.Empty; /// /// 激活时间(UTC)。 /// public DateTime? ActivatedAtUtc { get; init; } /// /// 激活者。 /// public string? ActivatedBy { get; init; } /// /// 回滚时间(UTC)。 /// public DateTime? RolledBackAtUtc { get; init; } /// /// 回滚者。 /// public string? RolledBackBy { get; init; } /// /// 快照元数据(JSON格式)。 /// public string MetadataJson { get; init; } = string.Empty; } /// /// 运行时部署快照状态。 /// public enum RuntimeDeploymentSnapshotStatus { /// /// 草稿。 /// Draft, /// /// 已激活。 /// Activated, /// /// 已回滚。 /// RolledBack, /// /// 已归档。 /// Archived }