Thanks, that example is a good explanation.
I intentionally limited property access lookup by the type of the receiver in order to keep precision high. So the example is working as intended. Let's move lexical lookup to a separate issue+PR pair. I think it might make sense as a separate feature [1], but not as part of this one.
[1] Some questions I'd like to see discussed there:
1. How much does it improve real-world recall?
2. How much does it hurt precision?
3. Should it only apply to #privates?
4. Does iterated lookup hurt performance? (Probably not, but worth thinking about a little.)
5. When the type is explicitly any or unknown, shouldn't the editor first suggest a specific type or narrowing for the receiver?