Skip to content

bug: _file_from_id does not handle iface: node ID prefix #96

@egouilliard-leyton

Description

@egouilliard-leyton

Context

Discovered during code review of the incremental re-indexing implementation (issue #13).

Description

_file_from_id() in loader.py handles these prefixes: file:, class:, func:, method:, endpoint:, gqlop:, atom: — but not iface: (Interface nodes). Interface node IDs won't match the file extraction logic, so interface nodes are never included in touched_files filtering.

Currently benign: edges involving interfaces always have a class: or file: node on the other side, so the edge still passes the filter via that other endpoint, and no orphaned data is possible. However, if interface-to-interface edges are ever added, or if _file_from_id is used in a stricter context, interfaces will silently fall through.

Suggested approach

Add an iface: case to _file_from_id following the same pattern as class: (i.e. split on # after the prefix to extract the file path).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions