#4243 moved local call resolution from binding-level to initializer-level
cycle detection. Results inside a cycle are cycle-dependent and never cached,
so a mesh of mutual reassignments whose reads select every write enumerated
every initializer order: 12 writes took 1.5 s and each further pair ~35x more.
A read that selects every initializer resolves the same candidates wherever
the chain re-enters it, and a longer chain only cuts more of them, so closing
that cycle at the binding adds no callable and keeps the mesh linear (12
writes: 5 ms). Position-narrowed reads keep their per-initializer cycles.
Refs: #4348
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Preserve incoming callback uncertainty and resolve proven preceding writes.
Share read-position and initializer identity facts with returned-reference
analysis; cache completed projected work with actual cycle dependencies.
Fixes#3880