Summary
Explicit-interface members such as IFoo.Changed and IFoo.Run<T> collapse into ordinary Changed/Run families, losing the qualifier that distinguishes implementations.
Audit IDs: G-06. Reproduced with locally built cdidx v1.40.3 at 404db09489c305f17d94f37026e00564d3ac527a.
Existing issue relationship
Closed #333, #351, and #356 are adjacent explicit-interface/identity work; no exact open issue exists.
Expected behavior and PR scope
Canonical identity and exact navigation distinguish explicit-interface members from public/other implementations while keeping readable display output. Keep this PR to C# symbol identity, extraction, and resolution for explicit members.
Implementation guide for Codex 5.6 sol xhigh
- Retain interface qualifier, member kind, generic arity, and normalized signature in canonical identity.
- Define display name versus exact query name explicitly so compatibility aliases do not merge families.
- Cover properties/events/indexers, generic/non-generic methods, multiple interfaces, inherited interfaces, and same-named public members.
- Verify symbols, definition, references, inspect, outline, and LSP navigation.
- Add focused regression/contract tests, run the full net8.0 and net9.0 suite, and add the required bilingual
changelog.d/unreleased/ fragment.
Acceptance criteria
- Exact queries can distinguish
IFoo.Run<T> from ordinary Run.
- Explicit properties/events do not merge with unrelated families.
- Existing unqualified discovery remains usable through documented ranking/aliases.
Summary
Explicit-interface members such as
IFoo.ChangedandIFoo.Run<T>collapse into ordinaryChanged/Runfamilies, losing the qualifier that distinguishes implementations.Audit IDs: G-06. Reproduced with locally built cdidx v1.40.3 at
404db09489c305f17d94f37026e00564d3ac527a.Existing issue relationship
Closed #333, #351, and #356 are adjacent explicit-interface/identity work; no exact open issue exists.
Expected behavior and PR scope
Canonical identity and exact navigation distinguish explicit-interface members from public/other implementations while keeping readable display output. Keep this PR to C# symbol identity, extraction, and resolution for explicit members.
Implementation guide for Codex 5.6 sol xhigh
changelog.d/unreleased/fragment.Acceptance criteria
IFoo.Run<T>from ordinaryRun.