ImportResolver (~ModuleLoading L747) applies a case-insensitive name fallback to every module's from-import: from re import Error RUNS (HEAD and BASE) although re.Error in annotation/except/isinstance position is SPY0202 per the P6 ruling (python: ImportError: cannot import name 'Error'); from errs import myerr for a user class myErr → SPY0908 CS0234 (BASE CS0426). The qualified/bare divergence meta-class: one resolution rule for module.Name in every position, no case fallback (or a steer only: "did you mean 'error'?").
Minor sibling: SPY0244's message leaks a CLR spelling — g: () -> int = lambda: None() → "… not 'int32'".
Found by /verify-implementation plan-0ca7b7 semantic fix lane (pre-existing at acd1d40 unless stated).
ImportResolver(~ModuleLoading L747) applies a case-insensitive name fallback to every module's from-import:from re import ErrorRUNS (HEAD and BASE) althoughre.Errorin annotation/except/isinstance position is SPY0202 per the P6 ruling (python:ImportError: cannot import name 'Error');from errs import myerrfor a userclass myErr→ SPY0908 CS0234 (BASE CS0426). The qualified/bare divergence meta-class: one resolution rule formodule.Namein every position, no case fallback (or a steer only: "did you mean 'error'?").Minor sibling: SPY0244's message leaks a CLR spelling —
g: () -> int = lambda: None()→ "… not 'int32'".Found by
/verify-implementation plan-0ca7b7semantic fix lane (pre-existing at acd1d40 unless stated).