public sealed class DataLakeOptions
{
    public const string Section = "DataLake";

    // Maximum events buffered before a forced flush. At ~17 obs/sec steady state
    // this fires approximately once per minute. Set low in tests (3–5) to avoid
    // waiting for real traffic.
    public int FlushCount { get; init; } = 1_000;

    // Maximum age of the oldest buffered event before a time-based flush is forced.
    // Production: 300 seconds (5 minutes). Tests: 10 seconds.
    public int FlushIntervalSeconds { get; init; } = 300;

    // MinIO bucket. The discharge summary worker from Phase 6 uses the same bucket
    // under a different prefix — all VigilCare data stays in one bucket.
    public string BucketName { get; init; } = "vigilcare";
}