ReadonlyindexWhere every navigable position came from, from the extractor.
ReadonlyworksheetsLayer id → the worksheet that layer was built from.
ReadonlyguardShared re-entrancy flag.
ReadonlydisabledWorksheets, by name, whose selection has been permanently disabled by a rejection.
Keyed by name and not by layer id: a layer id is an index among the worksheets that survived one extraction, so a refresh that drops a worksheet re-points every id after it at a different worksheet, and a latch earned by one worksheet would silence another. A worksheet name is stable across refreshes — it is already how SelectionBridge.worksheets is rebuilt.
Everything applySelection needs, gathered once at bind time.