Skip to content

follow-up: emit ClassRelation for Groovy interface inheritance (both engines) #1115

@carlos-alm

Description

@carlos-alm

Deferred from PR #1101 review.

Original reviewer comment: #1101 (comment)

Context:

handleGroovyInterfaceDecl in src/extractors/groovy.ts and handle_interface_decl in crates/codegraph-core/src/extractors/groovy.rs both push a single Definition for the interface but never inspect the interfaces / extends_interfaces field. As a result, interface Serializable extends Comparable, Cloneable {} produces no class-graph edges for the inheritance relationships.

Greptile's observation is correct, but fixing it requires symmetric changes in both engines to maintain WASM/native parity. Out of scope for the Groovy native extractor port, which intentionally mirrors the WASM behavior 1:1.

Fix: Add a collect_interfaces call (Rust) and equivalent inheritance loop (TypeScript) inside the interface-declaration handlers, with matching test coverage.

Metadata

Metadata

Assignees

No one assigned

    Labels

    follow-upDeferred work from PR reviews that needs tracking

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions