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
fromRevisiondiffs.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