symfonic.kernel.policies¶
policies ¶
The G9 vocabulary every adapter attaches through (BP-1).
Separated from the adapters themselves so that the projections and the callback fan-out — which have genuinely different lifecycles — can each live in their own module without either importing the other. A shared row table and a shared lookup are not two responsibilities; they are the one thing both halves must agree on.
closing
async
¶
Close a source the caller stops reading, deterministically.
An abandoned async generator is otherwise closed whenever the garbage collector gets to it — which means the run's teardown, the finalizers it holds, and the tasks it owns all run at an unpredictable later moment, in an unpredictable task. A projection that walks away closes what it walked away from.
Source code in src/symfonic/kernel/policies.py
declared ¶
Resolve an adapter's compiled row, or refuse to attach it at all.