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.
Deferred from PR #1101 review.
Original reviewer comment: #1101 (comment)
Context:
handleGroovyInterfaceDeclinsrc/extractors/groovy.tsandhandle_interface_declincrates/codegraph-core/src/extractors/groovy.rsboth push a singleDefinitionfor the interface but never inspect theinterfaces/extends_interfacesfield. 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_interfacescall (Rust) and equivalent inheritance loop (TypeScript) inside the interface-declaration handlers, with matching test coverage.