PatchbaySnapshotRetentionLimits class final

The three budgets a host applies to snapshot revision retention.

Counting revisions alone bounds how many answers a diff can reach back to but says nothing about how much memory they hold, so one large App snapshot could pin tens of megabytes for the life of the App instance. These budgets are host-owned: they are not negotiated on the wire and they do not change what a valid snapshot means, only how much of it this host is willing to keep and to serve in one answer.

maxSnapshotBytes is a run budget the operator chooses. It is deliberately separate from PB-050-01's patchbaySnapshotSnapshotByteCeiling, which is a contract ceiling no configuration may raise: crossing the run budget is a snapshotPayloadTooLarge rejection, crossing the ceiling stays a provider protocol violation.

Constructors

PatchbaySnapshotRetentionLimits({int maxRetainedRevisions = patchbaySnapshotRevisionRetention, int maxSnapshotBytes = patchbaySnapshotDefaultMaxSnapshotBytes, int maxRetainedBytes = patchbaySnapshotDefaultMaxRetainedBytes})
const

Properties

effective int
The per-snapshot budget actually applied, clamped to the contract ceiling so a release-mode misconfiguration degrades to the ceiling instead of running unbounded.
no setter
hashCode int
The hash code for this object.
no setterinherited
maxRetainedBytes int
Canonical UTF-8 bytes all retained revisions may hold together.
final
maxRetainedRevisions int
How many revisions stay reachable for fromRevision diffs.
final
maxSnapshotBytes int
Canonical UTF-8 bytes one snapshot may encode to.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited