SegmentPinRecord class final
Per-segment pin state for the second compaction tier (issue #1379): a
pinned segment is immune to every hide path — the judge's picks, the
deterministic fallback, LRU re-hide after expansion, and agent-initiated
hides alike — and is never swallowed by a checkpoint range. pinned: false is the unpin event; replay applies pin records in file order, so
the last one per record wins.
Recorded like every structured-state record: stable record ids, never positions or derived indexes.
- Inheritance
-
- Object
- SessionRecord
- SegmentPinRecord
Constructors
-
SegmentPinRecord({required String id, required String? parentId, required DateTime timestamp, required List<
String> recordIds, required bool pinned}) -
Creates a SegmentPinRecord.
const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- id → String
-
Unique record id (short random id generated by the storage).
finalinherited
- parentId → String?
-
Id of the parent record, or
nullfor a tree root.finalinherited - pinned → bool
-
Whether the records become pinned (
true) or released (false).final -
recordIds
→ List<
String> -
The ids of the records whose pin state this event sets.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- timestamp → DateTime
-
When the record was created.
finalinherited
- type → String
-
The type discriminator written to JSON (pi's
typefield).no setteroverride
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
payloadJson(
) → Map< String, dynamic> -
Type-specific fields merged into toJson by subclasses.
override
-
toJson(
) → Map< String, dynamic> -
Serializes to a JSON map with the
typediscriminator (pi shape).inherited -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited