namespace MeterVault.Core.Domain;
///
/// A raw, immutable, timestamped meter value — the audit truth (SDD §5.3 reading).
/// Backed by a TimescaleDB hypertable with composite key (meter_id, time).
/// The value is a register / level / hours / rate in the meter's own unit.
///
public sealed class Reading
{
public DateTimeOffset Time { get; set; }
public int MeterId { get; set; }
public double Value { get; set; }
public int? SourceId { get; set; }
public ReadingQuality Quality { get; set; }
public ReadingFlags Flags { get; set; }
/// Provenance batch when this row came from a CSV/bulk import (revert support).
public int? ImportBatchId { get; set; }
}