Score
The practice of consistently noticing and correcting small errors, inconsistencies, and edge cases in code, data, documentation, or designs; performing it involves careful proofreading, verifying assumptions against requirements, writing precise tests and checks, and using linters/static analysis to catch subtle issues.
Traditional static analysis tools (e.g., Checkstyle) struggle to detect code style issues requiring deep semantic understanding. This paper proposes the first hybrid code style detection framework that integrates large language models (LLMs) into the Checkstyle pipeline, overcoming inherent limitations of rule-based engines in expressive power and contextual modeling. The method leverages Checkstyle for syntactic and structural validation while employing LLMs—guided by prompt engineering—to perform context-aware, semantic-level identification of style violations (e.g., naming intent consistency, logical block readability). Evaluated on 380 real-world Java source files, our framework achieves a 27.3% improvement in detection accuracy and a 41.6% increase in coverage over standard Checkstyle for complex semantic style rules. These gains significantly enhance code readability and maintainability, demonstrating the efficacy of combining lightweight static analysis with LLM-driven semantic reasoning in practical code quality assurance.
This work addresses the challenge of semantic inconsistencies between source code and its natural language documentation, which often lead to software defects and increased maintenance costs. To reduce false positives in inconsistency detection, the authors propose a large language model–based dual-validation mechanism that simultaneously generates unit tests and a reference implementation from the documentation. A semantic inconsistency is flagged only when the original code fails the generated tests while the reference implementation passes them. Integrating test generation, code synthesis, execution-based validation, and multi-language (Java/C#/Rust) static and dynamic analysis, the approach demonstrates high precision on a benchmark of 985 code-document pairs and uncovers 13 previously unknown inconsistencies in real-world open-source projects, ten of which have been confirmed and fixed by developers, significantly enhancing both accuracy and practical utility.
This work addresses the industrial ineffectiveness of automated program repair (APR) and the misalignment between academic benchmarks and real-world defects. We propose a novel approach that leverages formal specifications—expressed in the Java Modeling Language (JML)—to guide large language models (LLMs) in generating high-coverage unit tests. By embedding specifications into the test-generation pipeline and integrating contract automata with human feedback, our method significantly improves detection of logic errors, string manipulations, and exception-handling edge cases. Evaluation shows that our technique outperforms state-of-the-art APR methods on standard benchmarks; JML specifications prove particularly valuable for exposing complex semantic errors; yet passing generated tests does not guarantee repair correctness. The study reveals a fundamental gap between academic evaluation criteria and industrial requirements, offering both a scalable technical pathway and empirical evidence toward practical, specification-guided program repair.
Inconsistencies between source code and its documentation often lead to misinterpretations and software defects; however, existing large language model (LLM)-based detection methods suffer from high false-positive rates, frequently misidentifying legitimate semantic gaps—such as those between high-level abstractions and low-level implementations—as errors. This paper proposes a lightweight, multi-language (Python, TypeScript, C++, Java) inconsistency detection framework. Its core contributions are: (1) Local Categorization—a context-local prompting strategy that guides LLMs to produce fine-grained, semantically grounded classifications, thereby mitigating long-range reasoning biases; and (2) External Filtering—leveraging domain-informed, rule-based post-processing to eliminate naturally occurring, non-defective discrepancies. The approach requires no LLM fine-tuning and relies solely on standard off-the-shelf models and localized prompts. Experiments demonstrate a low annotation burden (15% labeling rate), precision of 0.62, and a substantial improvement in accuracy—from 14% to 94%—significantly outperforming baseline methods.
Existing code-level formal verification tools scale poorly to large-scale software, while mainstream unit-level verification relies heavily on manual effort, often missing critical defects. This paper proposes the “Unit Proof Framework” research agenda—the first systematic definition of a unit verification paradigm supporting automated decoupling and independent verification of code units. Methodologically, it integrates formal verification, program analysis, modular verification, and automated toolchain design, with deep alignment to industrial development practices (e.g., AWS workflows). Its core contributions include: (1) establishing a scalable, engineering-friendly unit verification methodology; (2) characterizing a taxonomy of key technical challenges; (3) overcoming bottlenecks inherent in manual verification; and (4) significantly improving early detection of code-level defects. Collectively, this work lays the theoretical foundation and provides a practical technical pathway for building high-assurance, deployable automated verification infrastructure.
This work addresses a common yet critical issue in machine learning code: semantic errors arising from mismatches between data properties and model assumptions—such as applying scale-sensitive models to unnormalized data—which traditional debugging approaches can only detect after training, resulting in inefficiency. To enable early and automatic error detection, the authors propose a novel data-aware static analysis method that integrates dataflow and control-flow analysis with API specifications, thereby incorporating data semantics directly into the static analysis framework for the first time. Evaluation on real-world machine learning notebooks demonstrates that the approach effectively identifies subtle semantic bugs that conventional techniques fail to catch, highlighting its practical utility and methodological innovation.
This work addresses the challenge of inconsistent README quality, which stems from varying audiences and usage contexts, and the inability of existing tools to simultaneously accommodate style, content, and contextual appropriateness. The paper proposes LintMe, a novel linter that uniquely integrates programmatic rules with large language model (LLM)-based content understanding. LintMe enables users to define context-sensitive checking rules via a lightweight domain-specific language (DSL), combining programmatic validations—such as link verification—with LLM-driven semantic assessments like terminology recognition. This approach enhances documentation quality while preserving authorial autonomy. A user study (N=11) demonstrates that LintMe is both usable and flexible, significantly outperforming baseline approaches that rely solely on direct LLM usage, and its scalability is further validated through illustrative case studies.
This work addresses the challenge of statically verifying semantic consistency between natural language business requirements and their code implementations. It proposes a two-stage, runtime-free approach: first leveraging large language models to extract structured rules from requirements while identifying ambiguous or contradictory statements, and then performing static code auditing based on this intermediate representation. By integrating natural language processing with static analysis, the method mitigates hallucination and context loss in large models through rule structuring, enabling requirement-aware early validation. Evaluated on an automotive cybersecurity case study, the approach successfully detects semantic deviations, offers a novel solution to the test oracle problem, and significantly enhances left-shifted verification capabilities.
This work addresses prevalent methodological flaws in scientific Python code—such as data leakage and improper cross-validation—that often yield seemingly valid but erroneous conclusions and are difficult to detect with conventional tools. To tackle this, the authors propose a two-tier automated detection framework: a large language model (LLM) generates detection patterns without reliance on handcrafted rules or specific library versions, while a lightweight local model performs efficient runtime checks. This approach requires only a minimal number of tokens to adapt to new library versions, substantially enhancing scalability and maintainability. Empirical evaluation demonstrates high effectiveness, achieving precision rates of 65% on Kaggle notebooks, 62% on AI/ML research code, and 97.7% in controlled tests, with recall consistently reaching 100%.
This study addresses the common omission in current large language model evaluations of code generation—the iterative refinement process inherent in real-world programming and the models’ capacity for self-correction using feedback. The authors propose a novel framework that leverages execution-based feedback, such as compilation errors and test failures, to systematically investigate how reasoning and non-reasoning models utilize such signals across multiple programming languages. Through multidimensional categorization of code failures and extensive cross-model, cross-language experiments, they demonstrate that reasoning models consistently improve over iterations and significantly outperform non-reasoning counterparts. While syntactic and runtime errors prove relatively amenable to correction, logical and algorithmic errors remain challenging, thereby delineating the current limits of feedback-driven repair mechanisms.