Skip to content

v2 Analysis: Implement robust symbol resolution and fully-qualified naming #2

@rafageist

Description

@rafageist

Goal

Resolve symbols using fully-qualified names (FQN) to eliminate ambiguity in relationships.

Why

Name collisions across modules/classes currently reduce graph accuracy (e.g., same function names in different files).

Scope

  • Build deterministic FQN scheme for:
    • modules
    • classes
    • methods
    • functions
    • attributes
  • Resolve calls with context awareness:
    • local scope
    • class scope
    • module imports (best-effort static)
  • Track unresolved calls with reason codes for diagnostics.
  • Add confidence levels for inferred relationships.

Acceptance Criteria

  • Relationship precision improves on fixture projects with collisions.
  • Output includes optional diagnostics report (�nalysis_report.md).
  • Unit tests cover ambiguous naming and import aliasing scenarios.

Deliverables

  • FQN resolver module.
  • Extended relationship schema.
  • Test fixtures for edge cases.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions