e9e45c77affa635652505cc937b77b9349d18c8e
Installs the dispatch infrastructure without retiring MethodNameCollision yet: - 2 new CheckError variants (AmbiguousMethodResolution, UnknownClass) - NoInstance gains optional candidate_classes field - ResidualConstraint gains optional candidates: BTreeSet<String> - Env gains workspace-flat method_to_candidate_classes index - New resolve_method_dispatch helper implementing the 5-step rule - Synth Var-arm rewritten to route through the helper - Constraint-discharge refines multi-candidate residuals (concrete-type path → registry filter; rigid-var path → declared-constraint filter) - Mono's residual-to-target mapping mirrors the discharge refinement End-to-end multi-class fixtures still gated by MethodNameCollision (iter mq.3); new path exercised in this iter only by 6 unit-test cases on resolve_method_dispatch + 3 each on refine and mono resolver. Boss decisions on recon open questions: residual extension via Option<BTreeSet<String>> field; index lives workspace-flat on Env; NoInstance.candidate_classes wired through to_diagnostic this iter; qualify_class_ref_in_check consolidation deferred per mq.1 known-debt.
Description
No description provided
Languages
Rust
91.6%
Python
4.6%
C
1.8%
LLVM
1.6%
Shell
0.4%