SizeBudgetEvaluation
Namespace: Dotsider.Core.Analysis.Models
Assembly: Dotsider.Core.dll
The outcome of evaluating one size budget: the measured values, any breached limits, and the top positive regressions inside the budget’s scope — the rows that explain a growth breach, never diluted by improvements elsewhere.
public sealed record SizeBudgetEvaluation : IEquatable<SizeBudgetEvaluation>Inheritance
Section titled “Inheritance”Object → SizeBudgetEvaluation
Implements
Section titled “Implements”Constructors
Section titled “Constructors”SizeBudgetEvaluation(SizeBudget, bool, SizeBasis, long, long?, IReadOnlyList<SizeBudgetViolation>, IReadOnlyList<SizeDiffContributor>)
Section titled “SizeBudgetEvaluation(SizeBudget, bool, SizeBasis, long, long?, IReadOnlyList<SizeBudgetViolation>, IReadOnlyList<SizeDiffContributor>)”The outcome of evaluating one size budget: the measured values, any breached limits, and the top positive regressions inside the budget’s scope — the rows that explain a growth breach, never diluted by improvements elsewhere.
Parameters:
Budget(SizeBudget): The budget that was evaluated.Passed(Boolean): True when no limit was breached.Basis(SizeBasis): What the measured values count: total budgets use the check’s total basis (file size for binaries, mstat total for bare reports); namespace and assembly budgets always measure mstat aggregates.ActualBytes(Int64): The scope’s current size in bytes.BaselineBytes(Nullable<Int64>): The scope’s baseline size in bytes, or null when the check ran without a baseline.Violations(IReadOnlyList<SizeBudgetViolation>): Each breached limit, or empty when the budget passed.TopContributors(IReadOnlyList<SizeDiffContributor>): The scope’s largest positive regressions (delta > 0), ordered by delta descending, up to the budget’s or the caller’s top-N.
public SizeBudgetEvaluation(SizeBudget Budget, bool Passed, SizeBasis Basis, long ActualBytes, long? BaselineBytes, IReadOnlyList<SizeBudgetViolation> Violations, IReadOnlyList<SizeDiffContributor> TopContributors)Properties
Section titled “Properties”ActualBytes
Section titled “ActualBytes”The scope’s current size in bytes.
Returns: Int64
public long ActualBytes { get; init; }BaselineBytes
Section titled “BaselineBytes”The scope’s baseline size in bytes, or null when the check ran without a baseline.
Returns: Nullable<Int64>
public long? BaselineBytes { get; init; }What the measured values count: total budgets use the check’s total basis (file size for binaries, mstat total for bare reports); namespace and assembly budgets always measure mstat aggregates.
Returns: SizeBasis
public SizeBasis Basis { get; init; }Budget
Section titled “Budget”The budget that was evaluated.
Returns: SizeBudget
public SizeBudget Budget { get; init; }Passed
Section titled “Passed”True when no limit was breached.
Returns: Boolean
public bool Passed { get; init; }TopContributors
Section titled “TopContributors”The scope’s largest positive regressions (delta > 0), ordered by delta descending, up to the budget’s or the caller’s top-N.
Returns: IReadOnlyList<SizeDiffContributor>
public IReadOnlyList<SizeDiffContributor> TopContributors { get; init; }Violations
Section titled “Violations”Each breached limit, or empty when the budget passed.
Returns: IReadOnlyList<SizeBudgetViolation>
public IReadOnlyList<SizeBudgetViolation> Violations { get; init; }