Skip to content

Implement bounded TypeScript overload implementation tie-break #383

Description

@jununfly

This was generated by AI during triage.

Parent

What to build

Implement the guarded production resolver tie-break for TypeScript overload/signature candidate-multiple cases in the Rust ESM named import/export path. The resolver may select an implementation candidate only when all documented guard conditions hold; otherwise it must preserve fallback behavior.

Acceptance criteria

  • Direct export function overload/signature candidate-multiple resolves when exactly one implementation candidate is identified.
  • Same-file export specifier function overload/signature candidate-multiple resolves when exactly one implementation candidate is identified.
  • Import edge and imported usage edges target the selected implementation candidate.
  • Edge metadata uses resolvedBy: "rust-esm-named-import-export-overload-implementation".
  • Add esmNamedImportExportOverloadImplementationResolvedRefs, counting import refs and imported usage refs resolved by this tie-break.
  • Ambient-only, declaration-file, no-implementation, type/value/namespace collision, unknown metadata, and unavailable metadata cases continue to fallback.
  • No SQLite schema changes.
  • Do not change one-hop re-export, default import, namespace import, package/runtime import, or multi-hop barrel behavior.

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestready-for-agentFully specified and ready for an AFK agent

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions