CI's Formatting job failed: 19 touched files carried a BOM, which .editorconfig forbids (charset=utf-8). Pure encoding change — one byte per file, no semantic diff (verified: every hunk is `-namespace` -> `+namespace`). Self-inflicted. The patches that edited these legacy files wrote them back as utf-8-sig to "preserve the existing style", but the #311 fix-as-you-touch gate requires a file to be normalized when you touch it — that is the whole point of scoping the gate to changed files instead of reformatting the ~2500 legacy BOM files at once. dotnet format leaves the EF-generated Designer/snapshot files alone as generated code, and its verify skips them the same way, so they stay as ef emitted them. Two corrections to what I believed going in: - `dotnet format --include` does NOT no-op here. It reported `error CHARSET` for each file and exit 2, reproducing CI exactly, and fixed them in place. The note claiming otherwise is wrong for this invocation. - My first BOM check reported all files clean. The od pattern was wrong; reading the first three bytes directly found 19. A detector that can only say "ok" is worse than no detector. Core.Tests 565, ErsatzTV.Tests 1673, Architecture.Tests 5 — all passed. API artifacts still in sync. Refs #70 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
18 lines
624 B
C#
18 lines
624 B
C#
namespace ErsatzTV.Core.Domain;
|
|
|
|
public class MultiCollectionItem
|
|
{
|
|
public int MultiCollectionId { get; set; }
|
|
public MultiCollection MultiCollection { get; set; }
|
|
public int CollectionId { get; set; }
|
|
public Collection Collection { get; set; }
|
|
public bool ScheduleAsGroup { get; set; }
|
|
public PlaybackOrder PlaybackOrder { get; set; }
|
|
|
|
/// <summary>
|
|
/// Relative share of airtime under <see cref="PlaybackOrder.WeightedShuffle" /> (#70). Defaults to 1,
|
|
/// which is fair-share. Ignored by every other playback order.
|
|
/// </summary>
|
|
public int Weight { get; set; } = 1;
|
|
}
|