SkillOperativePins class

The per-window pin registry: rebuilt deterministically from the skills known to the session (P2), content-keyed, budget-capped.

Constructors

SkillOperativePins.build(List<Skill> skills, {Set<String> readSkillPaths = const {}, int? budgetChars})
Rebuilds the registry from skills (discovery order: project > user
factory

Properties

dropped → List<DroppedPin>
Pins dropped by the budget, in drop order.
final
hashCode → int
The hash code for this object.
no setterinherited
isEmpty → bool
Whether no pins are kept.
no setter
pinByKey → Map<String, OperativePin>
The {content key → pin} map of the kept pins.
no setter
pins → List<OperativePin>
The kept pins, ordered: current-session reads first (P6 priority), then first-declared order.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

diff(SkillOperativePins previous) → OperativePinDiff
Diffs this (current) registry against previous (P4/P5): pins whose content key changed while their owner skill persists are SUPERSEDED; pins whose owners all vanished (deleted, renamed, consent revoked) — or whose owner still exists but no longer declares the line — are DROPPED. Never silent — render the notices.
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

Constants

empty → const SkillOperativePins
The empty registry (no kept pins, no drops) — the all-skills-gone baseline for the P4 lifecycle diff (round 3: the empty-list corner).