Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

40 wiersze
1.2KB

  1. namespace Campaign_Tracker.Server.LegacyData.Schema;
  2. /// <summary>
  3. /// Categorisation of a structural delta detected by the compatibility check
  4. /// (Story 1.7 AC #2). Used in <see cref="LegacySchemaDrift"/> entries.
  5. /// </summary>
  6. public enum LegacySchemaChangeType
  7. {
  8. TableMissing,
  9. TableAdded,
  10. ColumnMissing,
  11. ColumnAdded,
  12. ColumnTypeChanged,
  13. ColumnSizeChanged,
  14. ColumnNullabilityChanged,
  15. }
  16. /// <summary>
  17. /// One structural delta entry between baseline and live schema.
  18. /// <see cref="ColumnName"/> is null for table-level drift entries.
  19. /// </summary>
  20. public sealed record LegacySchemaDrift(
  21. string TableName,
  22. string? ColumnName,
  23. LegacySchemaChangeType ChangeType,
  24. string Detail);
  25. /// <summary>
  26. /// Outcome of a compatibility check run.
  27. /// AC #2: failure includes structured drift list identifying table, column, and change type.
  28. /// AC #3: pass returns timestamp, count of tables verified, and zero drift count.
  29. /// </summary>
  30. public sealed record LegacySchemaCheckResult(
  31. bool Passed,
  32. int TablesVerified,
  33. int DriftCount,
  34. DateTimeOffset CheckedAt,
  35. IReadOnlyList<LegacySchemaDrift> Drifts,
  36. string BaselineSource);

Powered by TurnKey Linux.