2.3 Startup vs reload asymmetry (FramesRegistry)
FramesRegistry validates strictly on construction (fail-fast at startup) and leniently on hot-reload (skip invalid frames with a warning, keep valid ones serving). Exposes TryGetByName/TryGetByMac over the current valid set. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
14
src/FrameProcessor/Domain/Frame.cs
Normal file
14
src/FrameProcessor/Domain/Frame.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace FrameProcessor.Domain;
|
||||
|
||||
/// <summary>
|
||||
/// A configured frame after validation and parsing. All raw strings from
|
||||
/// <c>frames.json</c> have been converted to their typed values; consumers can use
|
||||
/// the contents directly without re-validating.
|
||||
/// </summary>
|
||||
public sealed record Frame(
|
||||
FrameName Name,
|
||||
MacAddress Mac,
|
||||
Resolution Resolution,
|
||||
Orientation Orientation,
|
||||
DitherAlgorithm Dithering,
|
||||
IReadOnlyList<PaletteEntry> Palette);
|
||||
Reference in New Issue
Block a user