Documentation / @etherfold/core / unslottedGenerations
Function: unslottedGenerations() ​
unslottedGenerations(
generations,slots):GenerationRecord[]
Defined in: packages/core/src/generation/registry.ts:591
EVERY GENERATION NO SLOT NAMES: the collection rule of ADR-0084, in one place.
A generation some slot names is what a deployment is USING -- canonical answers every read, successor is being built beside it, predecessor is what a revert moves back to -- and one that NO slot names is dead work: nothing can promote to it without being asked, nothing reverts to it, and nothing re-folds it for an answer anybody will read. That is a REFCOUNT, which is why it is far easier to prove safe than the three-way in-memory predicate it replaced.
canonical needs no separate clause, because it IS a slot: "not canonical and no slot names it" would be one rule written twice, and the second copy is what drifts.
It says nothing about what DELETING one then costs, which belongs to the container and not here. It used to answer one thing more, and no longer does: a generation that WROTE a stream another held fold followed was kept, because dropping it would have left that fold folding a stream nothing appends to (ADR-0044). Its only callers are on the RECEIVING side, where no generation writes a stream at all since ADR-0087, so that clause has no subject here.
Parameters ​
generations ​
readonly GenerationRecord[]