SemanticForge: Repository-Level Code Generation through Semantic Knowledge Graphs and Constraint Satisfaction
Wuyang Zhang, Chenkai Zhang, Zhen Luo, Jianming Ma, Wangming Yuan, Chuqiao Gu, Chenwei Feng
TL;DR
SemanticForge tackles repository-scale code generation by replacing surface-level retrieval with explicit, queryable semantic representations of code bases. It introduces a dual static-dynamic knowledge graph, a neural planner that generates structured graph queries, an SMT-integrated beam search that enforces constraints during generation, and an incremental maintenance system with provable optimality guarantees. Across RepoKG-50, it achieves marked reductions in schematic and logical hallucinations while delivering substantial gains in functional correctness, and it demonstrates scalable performance with real-time maintenance. The approach offers a practical, end-to-end framework for reliable, semantically-aware code synthesis that can adapt to evolving codebases and diverse programming domains, with potential to broaden automated software development capabilities. Overall, SemanticForge provides both theoretical foundations and empirical evidence that explicit semantic representations plus constraint-aware generation can meaningfully improve repository-level code generation in real-world settings.
Abstract
Large language models (LLMs) have transformed software development by enabling automated code generation, yet they frequently suffer from systematic errors that limit practical deployment. We identify two critical failure modes: \textit{logical hallucination} (incorrect control/data-flow reasoning) and \textit{schematic hallucination} (type mismatches, signature violations, and architectural inconsistencies). These errors stem from the absence of explicit, queryable representations of repository-wide semantics. This paper presents \textbf{SemanticForge}, which introduces four fundamental algorithmic advances for semantically-aware code generation: (1) a novel automatic reconciliation algorithm for dual static-dynamic knowledge graphs, unifying compile-time and runtime program semantics; (2) a neural approach that learns to generate structured graph queries from natural language, achieving 73\% precision versus 51\% for traditional retrieval; (3) a novel beam search algorithm with integrated SMT solving, enabling real-time constraint verification during generation rather than post-hoc validation; and (4) an incremental maintenance algorithm that updates knowledge graphs in $O(|ΔR| \cdot \log n)$ time while maintaining semantic equivalence.
