Skip to content

symfonic.capabilities.memory.workset_overlay

workset_overlay

A bounded mutable workset with authoritative, complete boundary adjacency.

WorksetOverlay

WorksetOverlay(durable: Any, cycle: str)

Bases: ScopeOverlay

Retain candidates separately from read-only endpoint context.

Candidate scans see only this cycle's page. Identity and neighbour lookups can load bounded boundary context, without promoting that context into the candidate list. An incomplete read invalidates the whole journal even if a legacy phase catches the exception and attempts to continue.

Source code in src/symfonic/capabilities/memory/workset_overlay.py
def __init__(self, durable: Any, cycle: str) -> None:
    super().__init__()
    self.durable = durable
    self.cycle = cycle
    self.progress: dict[str, tuple[Any, Any, Any]] = {}
    self.selected: set[tuple[str, str]] = set()
    self.adjacency_complete: set[tuple[str, str]] = set()
    self.invalid = False
    self.deleted_nodes: set[tuple[str, str]] = set()
    self.cascaded_nodes: set[tuple[str, str]] = set()
    self.deleted_edges: set[tuple[str, str]] = set()
    self.growth_created: dict[str, int] = {}
    self.growth_deferred = 0