Section 7.3Source:
server/src/graph/models/GraphEdge.tsRelationship Kinds & Edges
Technical specification of all 7 directed edge kinds and their structural invariants in the CodeGraph schema.
Source:
server/src/graph/models/GraphEdge.tsThe `GraphEdge` Interface
server/src/graph/models/GraphEdge.ts
123456export interface GraphEdge { id: string; // Deterministic: sourceId:relationshipKind:targetId sourceId: string; // Prefixed source node ID targetId: string; // Prefixed target node ID relationshipKind: RelationshipKind; // "calls" | "imports" | "extends" | "implements" | ... }
Edge Semantics & Traversal Behavior
| Kind | Source -> Target Meaning | Traversed in Impact/Dependency? |
|---|---|---|
| "calls" | Caller function -> Callee function | Yes |
| "imports" | Importing file -> Imported file/dep/module | Yes |
| "extends" | Subclass -> Superclass | Yes |
| "implements" | Class -> Implemented Interface | Yes |
| "instantiates" | Constructor caller -> Instantiated Class | Yes |
| "exports" | File -> Exported Symbol | No (Metadata edge) |
| "references" | Type reference -> Target Symbol | No (Type metadata) |