Pith. sign in

REVIEW 3 major objections 5 minor 1 cited by

Repairing the program graph and feeding the LLM a full, structured context lifts vulnerability detection to F1 0.75.

Reviewed by Pith at T0; open to challenge. T0 means a machine referee read the full paper against a public rubric. the ladder, T0–T4 →

T0 review · deepseek-v4-flash

2026-08-02 16:24 UTC pith:OXBLGI7Y

load-bearing objection Solid engineering and a genuinely useful architecture, but don't trust the headline numbers until the authors fix a numbers mismatch, an RQ3 test-set selection, and the unproven independence between their curated benchmark and expert knowledge base. the 3 major comments →

arxiv 2604.10767 v2 pith:OXBLGI7Y submitted 2026-04-12 cs.SE

VulWeaver: Weaving Broken Semantics for Grounded Vulnerability Detection

classification cs.SE
keywords vulnerability detectionlarge language modelsunified dependency graphneuro-symbolic analysisprogram representation repairholistic context extractionmeta-promptingCWE
verification ladder T0 review T1 audit T2 compute T3 formal T4 reserved

The pith

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

VulWeaver sets out to prove that the limiting factor in LLM-based vulnerability detection is not the model's reasoning ability but the broken and incomplete code representation it is given. The paper argues that static analysis tools produce call, control-flow, and data-dependency graphs with missing reflective or polymorphic edges, spurious dependencies, and no global context, and that these defects cascade into false positives and false negatives when an LLM is asked to judge a slice. VulWeaver repairs the graph with a neuro-symbolic pass, extracts a holistic vulnerability context that includes explicit slices plus implicit usage, definition, and declaration information, and then steers the LLM with vulnerability-type-specific guidelines. On the authors' Java benchmark it reports F1 0.75 and a pairwise VP-S of 0.58, and F1 0.78 on C/C++, along with developer-confirmed vulnerabilities in real projects. A sympathetic reader would care because this is a concrete recipe for making LLM verdicts grounded in program semantics rather than lexical cues.

Core claim

The paper's central discovery claim is that repairing the program representation before prompting is what unlocks accurate and robust LLM-based vulnerability detection. Concretely, VulWeaver builds a unified dependency graph by merging control-flow, data-dependency, and call graphs, then repairs it: LLM inference resolves reflective and polymorphic call targets, deterministic rules restore labeled-break and continue control flow, a summary-based taint analysis prunes spurious inter-procedural data dependencies, and global nodes are added. From this repaired graph it extracts a holistic vulnerability context per sensitive API invocation, combining backward and forward slicing with implicit us

What carries the argument

The load-bearing object is the enhanced Unified Dependency Graph (UDG), a statement-level graph that unifies control-flow, data-dependency, and call edges and then repairs them in a neuro-symbolic pass. The repair step matters most: LLM-based edge resolution for polymorphic and reflective calls, deterministic jump-edge reconstruction, and a bottom-up function-summary pass that prunes spurious dependencies together determine which code the LLM ever sees. Around this graph, the paper wraps two further mechanisms: holistic vulnerability-context extraction (explicit slicing plus implicit usage, definition, and declaration resolution) and vulnerability-type-specific meta-prompting, which converts

Load-bearing premise

The headline gains assume the curated knowledge base that maps sensitive APIs to CWE types and supplies defense heuristics was frozen before the authors examined their test sets; if that separation does not hold, the reported F1 and VP-S numbers may reflect benchmark-tuned guidance rather than generalizable detection.

What would settle it

Run VulWeaver with the published knowledge base frozen on a freshly collected, independently labeled set of Java vulnerabilities patched after the freeze date; if F1 and VP-S fall well below 0.75 and 0.58 on that set, the benchmark-tuning explanation is supported.

Watch this falsifier — get emailed when new claim-graph text bears on it.

If this is right

  • If the gains hold, LLM-based detectors can shift from pattern matching over raw functions to grounded reasoning over repaired, repository-wide semantics.
  • The pairwise VP-S result implies that the method materially reduces reverse verdicts — cases where a detector calls a patched function vulnerable and its vulnerable counterpart safe.
  • The cross-language result on C/C++ suggests the pipeline is largely language-agnostic once Java-specific reflection handling is removed, making it a template for other languages.
  • The concrete discovery of previously unknown, developer-confirmed vulnerabilities in widely used projects indicates the approach can produce actionable findings, not just benchmark scores.
  • The ablation results, if replicated, imply that the biggest single win comes from holistic context, then guided reasoning, then graph repair — a prioritization for future system builders.

Where Pith is reading between the lines

These are editorial extensions of the paper, not claims the author makes directly.

  • The knowledge-base independence question is the main thing to probe: if the sensitive-API-to-CWE mapping was refined after inspecting the benchmark, the reported gains could shrink on a truly held-out, freshly labeled corpus. A straightforward audit would freeze the knowledge base, then evaluate on vulnerabilities disclosed after that freeze date.
  • The same graph-repair machinery could plausibly serve as a generic front-end for other static-analysis consumers, such as SAST false-positive filtering or code-review assistants, whenever call-graph accuracy is the bottleneck.
  • Because the paper notes lost-in-the-middle degradation on very long contexts, a natural extension is to make context extraction adaptive, ranking statements by their likely evidentiary weight for a given CWE rather than including everything reachable.
  • The adversarial identifier-renaming experiment points to a cheap robustness harness: any LLM-based vulnerability detector could be required to survive the same vulnerable/non-vulnerable renaming test before claiming semantic grounding.

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, simulated authors' rebuttal, and a circularity audit.

Referee Report

3 major / 5 minor

Summary. The paper presents VulWeaver, an LLM-based vulnerability detection approach that constructs an enhanced unified dependency graph (UDG) from a code property graph, repairs static-analysis inaccuracies via neuro-symbolic enhancement (global nodes, polymorphic/reflection call edges, labeled jumps, data-dependency pruning), extracts a 'holistic' context by combining explicit backward/forward slices with implicit usage/definition/declaration contexts, and then uses CWE-specific meta-prompting with majority voting. On the author-curated PrimeVul4J Java benchmark it reports test-set precision 0.81, recall 0.70, F1 0.75, and VP-S 0.58, outperforming learning-, LLM-, and agent-based baselines by 23%, 15%, and 60% in F1, respectively. It also reports F1 0.78 on the external C/C++ PrimeVul dataset, 15 developer-confirmed and 5 CVE-assigned vulnerabilities in 9 open-source projects, and 40 confirmed vulnerabilities in an industrial deployment. The paper includes an ablation study, parameter sensitivity analysis, efficiency evaluation, and a manual validation of UDG edge modifications.

Significance. If the reported results are independent and reproducible, VulWeaver is a meaningful advance: it directly attacks the well-known limitation that both static program representations and LLM prompts for vulnerability detection are often incomplete or lexically biased. The design is coherent, and the ablation study consistently shows that the UDG enhancement, implicit context, and meta-prompting each contribute. The adversarial identifier-renaming study in Section 2 is a useful internal sanity check that structured meta-prompting is less sensitive to superficial lexical cues. The cross-language experiment on external PrimeVul partially mitigates concerns about benchmark-specific tuning. The practical evaluation with developer-confirmed vulnerabilities and CVEs is rare and valuable. However, the central Java claim rests on a benchmark and a knowledge base that were both created or refined by the same team, and the needed independence between the two is not demonstrated. The paper also selects its only hyperparameter on the test set and reports large relative gains on a small test set without confidence intervals. These issues are addressable, but until they are resolved the headline 'SO

major comments (3)
  1. [§3.1, §4.1] The SOTA claim requires independence between the author-curated PrimeVul4J benchmark and the expert-refined knowledge base (KB). The KB is 'initialized by an internal tool and refined by two senior security experts' (§3.1), while PrimeVul4J is curated by the authors (§4.1). Section 4.1 also uses the KB to determine slicing criteria when the target function has no known sensitive API, coupling the evaluation pipeline to the artifact under assessment. The paper never states that the KB was frozen before the PrimeVul4J labels/test split were inspected, nor that the refining experts were blind to the benchmark. If KB refinement followed exposure to PrimeVul4J, the reported F1=0.75 and VP-S=0.58 gains over baselines without this internal KB could reflect benchmark-tuned guidance rather than generalizable detection. The external C/C++ PrimeVul result mitigates but does not resolve the Java cla
  2. [§4.4, RQ3] The only configurable hyperparameter, the number of query rounds N, is selected on the PrimeVul4J test set ('vary N from 1 to 9 ... on the PrimeVul4J test set', with N=3 adopted). Baselines are evaluated with their default hyperparameters. Although the observed effect appears small (F1 ≈ 0.73 at N=1 vs 0.754 at N=3), choosing N on the test set introduces an optimistic bias into the comparison. Please select N on the validation split, or demonstrate that the conclusion is stable across a range of N and that the baselines are not sensitive to their own default hyperparameters.
  3. [§4.2, Tables 2–3] The PrimeVul4J test set is small: 168 samples and 72 paired functions. Several headline relative gains (23%, 15%, 60% in F1; VP-S 0.58 vs 0.22) rest on a small number of pairs, and Table 3 includes CWE groups with #S=2 for which the claim of 'highest F1 in all 6 categories' has no statistical weight. The paper should report bootstrap confidence intervals or other uncertainty estimates for F1 and VP-S differences, and state the number of pairs used for each per-CWE VP-S estimate. This is needed to calibrate the strength of the SOTA claim.
minor comments (5)
  1. [§4.6, Table 7] The phase-level percentages sum to over 100% (83.8 + 27.5 + 4.4). Please correct the rounding or the numbers.
  2. [§4.1 vs §4.6, Table 6] The efficiency table includes RepoAudit even though Section 4.1 excludes RepoAudit from evaluation because it supports only three vulnerability types. Clarify whether Table 6 is a separate efficiency benchmark or remove the entry to avoid inconsistency.
  3. [§3.2.2, Eq. (1)] The definition of Φ_i(p) as '1 if the return value data-depends on parameter p' is formalized before the taint-based algorithm that computes the dependence is introduced. Consider defining the dependence relation operationally or moving Eq. (1) after the summary-generation description.
  4. [§2, Table 1] The text says F1 declines 'by 11% to 39%' and VP-S drops 'by 44% to 1,050%', mixing relative and percentage-point changes. Use a single consistent convention, e.g., percentage points, to avoid overstating small absolute changes.
  5. [§4.2] The sentence describing '1,625% higher recall' over LLMxCPG uses an extreme relative comparison against a near-zero baseline. Please report the absolute recall values (0.70 vs 0.04) in the text as well.

Circularity Check

2 steps flagged

VulWeaver's headline Java results are partly fitted to the PrimeVul4J test set: the meta-prompting strategy is validated on the same test set used for the final evaluation, and the N=3 default is selected on that test set. The C/C++ and real-world evaluations provide independent content, so the paper is only partially circular.

specific steps
  1. fitted input called prediction [Section 2 (Pilot Study, Table 1) and Section 4.2 (RQ1, Table 2)]
    "We conducted a pilot study to assess how ungrounded LLM reasoning impacts robustness in vulnerability detection, using the test set of PrimeVul4J dataset (detailed in Sec. 4.1). ... In contrast, under the meta-prompting strategy in VulWeaver ... the performance of LLMs remains stable ... This confirms that structured expert guidance effectively shields model reasoning against misleading lexical cues."

    The pilot study is run on the same PrimeVul4J test set that later serves as the RQ1 evaluation set. The meta-prompting strategy validated in the pilot is VulWeaver's core reasoning component, and the pilot's Deepseek-V3.2 meta-prompting column (F1 0.75, VP-S 0.58) is exactly the headline result reported for VulWeaver in Table 2. Thus the motivating 'pilot' is not an independent selection step; it is the final result on the same test set, so the central Java evaluation is fitted to the evaluation set by construction.

  2. fitted input called prediction [Section 4.4 (RQ3, Fig. 8) and Section 4.2 (RQ1, Table 2)]
    "VulWeaver has a configurable parameter, the number of query rounds N. To assess its effect, we vary N from 1 to 9 in steps of 2 and run VulWeaver with different N on the PrimeVul4J test set. ... Therefore, N=3 strikes the best trade-off between effectiveness and efficiency, and we adopt it as the default setting."

    The headline effectiveness numbers in Table 2 are produced with the default N=3, and N=3 is selected by running VulWeaver on the same PrimeVul4J test set used for the reported evaluation. This is hyperparameter selection on the test set: the reported F1 and VP-S are the best (or near-best) values from the tested grid on the evaluation set, not an unbiased holdout prediction.

full rationale

VulWeaver's Java PrimeVul4J evaluation is not fully self-contained with respect to its own test set. The paper's Section 2 'pilot study' is conducted on the test set described in Section 4.1, and the meta-prompting strategy it validates is exactly the strategy whose PrimeVul4J test-set results are reported as the main effectiveness result in Table 2. The numbers match precisely (DeepSeek V3.2 meta-prompting: F1 0.75, VP-S 0.58; VulWeaver: F1 0.75, VP-S 0.58), so the motivating experiment is the final evaluation rather than an independent selection procedure. Additionally, RQ3 selects the N=3 default by measuring performance on the same PrimeVul4J test set, making the reported Java results partly a product of test-set tuning. These are concrete cases of fitted inputs being presented as predictions. The paper does retain independent evidence: the C/C++ PrimeVul test set is an external benchmark, and the real-world Java projects and CVE confirmations are outside the fitted test set. I also note the broader validity risk that the author-curated PrimeVul4J benchmark and the author-refined sensitive-API/CWE knowledge base are used together without a demonstrated freeze point before benchmark inspection; this is a serious independence concern, but the paper does not exhibit a formal reduction to the knowledge base alone, so I do not count it as a separate circular step. Overall, the central Java claim is partially circular, while the cross-language and real-world claims provide independent content, justifying a score of 6.

Axiom & Free-Parameter Ledger

3 free parameters · 6 axioms · 0 invented entities

The central claim is empirical; it rests on the validity of a self-built benchmark, an expert knowledge base whose independence is unshown, and assumptions about static-analysis/LLM graph reconstruction. No new physical entities are introduced.

free parameters (3)
  • Number of query rounds N = 3 (default)
    RQ3 selects N by running on the PrimeVul4J test set (Fig. 8); this is test-set-based hyperparameter selection and weakens the reported test-set numbers.
  • Sensitive API → CWE mapping and defense guidelines = 102 CWE types; exact contents withheld
    Expert/internally initialized knowledge base (§3.1) determines which context and prompt are used; it is not shown to be independent of the benchmark.
  • Max call-edge traversal hops for slicing = 3
    Borrowed from prior work [23]; controls context size and can affect F1, but not fitted in this paper.
axioms (6)
  • domain assumption Joern CPG plus Tree-sitter AST provide a sufficient base for reconstructing repository semantics.
    Central to UDG construction (§3.2.1); if the base graph omits semantics beyond what LLM inference can repair, context extraction fails.
  • domain assumption LLM-based resolution of reflection/polymorphic call edges is accurate enough to improve detection.
    Validated only on a sample of 749 added and 765 removed edges in 9 projects (§4.8), not against ground-truth call graphs for the benchmark; accuracies 0.90 and 0.96 are self-assessed.
  • domain assumption Function-level labels can be decided from repository-level holistic contexts around sensitive invocations.
    Used to bridge the granularity mismatch between function-level ground truth and repository-level analysis (§4.1).
  • domain assumption PrimeVul4J labels are correct and leakage-free.
    The dataset is author-curated following PrimeVul's methodology (§4.1); no external audit of label quality or deduplication is cited.
  • ad hoc to paper The expert knowledge base is independent of the test set.
    Knowledge base refined by experts with an industrial tool (§3.1); the paper does not show it was fixed before benchmark construction or inspection, so circularity cannot be ruled out.
  • standard math Tarjan SCC condensation plus reverse topological order yields sound summary propagation.
    The algorithm is standard; its application assumes the Joern-derived call graph is accurate enough before pruning (§3.2.2).

pith-pipeline@v1.3.0-alltime-deepseek · 27587 in / 15365 out tokens · 133920 ms · 2026-08-02T16:24:25.951138+00:00 · methodology

0 comments
read the original abstract

Detecting vulnerabilities in source code remains critical yet challenging, as conventional static analysis tools construct inaccurate program representations, while existing LLM-based approaches often miss essential vulnerability context and lack grounded reasoning. In this paper, we introduce VulWeaver, a novel LLM-based approach that weaves broken program semantics into accurate representations and extracts holistic vulnerability context for grounded vulnerability detection. VulWeaver first constructs an enhanced unified dependency graph (UDG) by integrating deterministic rules with LLM-based semantic inference to address static analysis inaccuracies. It then extracts holistic vulnerability context by combining explicit contexts from program slicing with implicit contexts, including usage, definition, and declaration information. Finally, VulWeaver employs meta-prompting with vulnerability type specific expert guidelines to steer LLMs through systematic reasoning, aggregated via majority voting for robustness. Extensive experiments on PrimeVul4J dataset show that VulWeaver achieves a precision of 0.82, recall of 0.71, and F1-score of 0.76, outperforming state-of-the-art learning-based, LLM-based, and agent-based baselines by 25%, 17%, and 21% in F1-score, respectively. Notably, VulWeaver attains a VP-S score of 0.58, 164% higher than the best baseline, confirming its strong discriminative power in distinguishing vulnerable code from patched counterparts. VulWeaver also demonstrates cross-language generalizability on the C/C++ PrimeVul dataset with minimal adaptation, achieving an F1-score of 0.78. For practical usefulness, VulWeaver detected 26 true vulnerabilities across 9 real-world Java projects, with 15 confirmed by developers and 5 CVE identifiers assigned. In industrial deployment, VulWeaver identified 40 confirmed vulnerabilities in an internal repository.

Figures

Figures reproduced from arXiv: 2604.10767 by Bihuan Chen, Jiayi Deng, Miaohua Li, Susheng Wu, Xingman Chen, Xin Hu, Xin Peng, Xueying Du, Yihao Chen, Yiheng Cao, Yiheng Huang, Zhuotong Zhou.

Figure 1
Figure 1. Figure 1: Patched Version of CVE-2023-29523 • Practical Impact. We apply VulWeaver to 9 real-world Java projects, detecting 26 true vulnerabilities with 15 confirmed by developers and 5 CVE identifiers assigned, along with 40 additional confirmed vulnerabilities in an industrial deployment. 2 MOTIVATION We highlight key limitations of current vulnerability detection approaches through two real-world false positive c… view at source ↗
Figure 2
Figure 2. Figure 2: Patched Version of CVE-2020-26282 buildConstraintViolationWithTemplate invocation, which performs message interpolation that could evaluate injected Java Expression Language (EL) fragments, potentially leading to server-side template injection and remote code execution. However, the vulnerability is mitigated by the sanitization call escape at Line 8. Crucially, this sanitizer relies on a specific regular … view at source ↗
Figure 3
Figure 3. Figure 3: Overview of VulWeaver (2) Holistic Vulnerability Context Extraction. After constructing the enhanced UDG, VulWeaver identifies sensitive invocations, which encompass predefined sensitive API invocations and, optionally, user-specified dangerous functions, and extracts holistic vulnerability contexts for each. Specifically, VulWeaver first extracts the explicit context C𝑒 by performing backward and forward … view at source ↗
Figure 4
Figure 4. Figure 4: Prompt of Polymorphic Call Edge Enhancement [PITH_FULL_IMAGE:figures/full_fig_p009_4.png] view at source ↗
Figure 5
Figure 5. Figure 5: Prompts for Reflection Call Edge Enhancement [PITH_FULL_IMAGE:figures/full_fig_p009_5.png] view at source ↗
Figure 6
Figure 6. Figure 6: Meta Prompt Template for Vulnerability Detection [PITH_FULL_IMAGE:figures/full_fig_p014_6.png] view at source ↗
Figure 7
Figure 7. Figure 7: Effectiveness Results w.r.t. Vulnerability Context Length [PITH_FULL_IMAGE:figures/full_fig_p019_7.png] view at source ↗

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 1 Pith paper

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. ALIBI: Adaptive Agentic Attacks on LLM-Based Vulnerability Detectors via Adversarial Code Comments

    cs.CR 2026-07 conditional novelty 7.0

    Adaptive adversarial source-code comments evade four LLM vulnerability detectors at >90% success on 125 real null-pointer bugs without altering program behavior.

Reference graph

Works this paper leans on

63 extracted references · 10 linked inside Pith · cited by 1 Pith paper

  1. [1]

    2026.Replicating Material for VulWeaver

    anonymous. 2026.Replicating Material for VulWeaver. Retrieved January 20, 2026 from https://github.com/weaver4VD/VulWeaver

  2. [2]

    2026.Claude

    Anthropic. 2026.Claude. Retrieved January 20, 2026 from https://claude.ai

  3. [3]

    Guru Bhandari, Amara Naseer, and Leon Moonen. 2021. CVEfixes: automated collection of vulnerabilities and their fixes from open-source software. InProceedings of the 17th International Conference on Predictive Models and Data Analytics in Software Engineering. 30–39

  4. [4]

    Xiao Cheng, Haoyu Wang, Jiayi Hua, Guoai Xu, and Yulei Sui. 2021. Deepwukong: Statically detecting software vulnerabilities using deep graph neural network.ACM Transactions on Software Engineering and Methodology (TOSEM)30, 3 (2021), 1–33

  5. [5]

    2024.CWE VIEW: Research Concepts

    CWE. 2024.CWE VIEW: Research Concepts. Retrieved May 25, 2024 from https://cwe.mitre.org/data/definitions/1000.html

  6. [6]

    2024.CWE VIEW: Software Development

    CWE. 2024.CWE VIEW: Software Development. Retrieved May 25, 2024 from https://cwe.mitre.org/data/definitions/699.html

  7. [7]

    2026.DeepSeek

    DeepSeek. 2026.DeepSeek. Retrieved January 20, 2026 from https://www.deepseek.com

  8. [9]

    Yangruibo Ding, Yanjun Fu, Omniyyah Ibrahim, Chawin Sitawarin, Xinyun Chen, Basel Alomair, David Wagner, Baishakhi Ray, and Yizheng Chen

  9. [10]

    Xueying Du, Jiayi Feng, Yi Zou, Wei Xu, Jie Ma, Wei Zhang, Sisi Liu, Xin Peng, and Yiling Lou. 2026. Reducing False Positives in Static Bug Detection with LLMs: An Empirical Study in Industry.arXiv preprint arXiv:2601.18844(2026)

  10. [11]

    Xiaohu Du, Ming Wen, Jiahao Zhu, Zifan Xie, Bin Ji, Huijun Liu, Xuanhua Shi, and Hai Jin. 2024. Generalization-enhanced code vulnerability detection via multi-task instruction fine-tuning.arXiv preprint arXiv:2406.03718(2024)

  11. [12]

    Xueying Du, Geng Zheng, Kaixin Wang, Yi Zou, Yujia Wang, Wentai Deng, Jiayi Feng, Mingwei Liu, Bihuan Chen, Xin Peng, et al. 2024. Vul-rag: Enhancing llm-based vulnerability detection via knowledge-level rag.ACM Transactions on Software Engineering and Methodology(2024)

  12. [13]

    2026.Dataset collection scipts of Reposvul

    Eshe0922. 2026.Dataset collection scipts of Reposvul. Retrieved January 24, 2026 from https://github.com/Eshe0922/ReposVul

  13. [14]

    2026.Dataset collection scipts of CrossVul

    GiorgosNikitopoulos. 2026.Dataset collection scipts of CrossVul. Retrieved January 24, 2026 from https://zenodo.org/records/4741963

  14. [15]

    2026.CodeQL

    GitHub. 2026.CodeQL. Retrieved January 20, 2026 from https://codeql.github.com/

  15. [16]

    2026.GitHub Octoverse

    GitHub. 2026.GitHub Octoverse. Retrieved January 20, 2026 from https://github.blog/news-insights/octoverse/octoverse-a-new-developer-joins- github-every-second-as-ai-leads-typescript-to-1

  16. [17]

    2026.Google Gemini

    Google. 2026.Google Gemini. Retrieved January 20, 2026 from https://gemini.google.com/

  17. [18]

    Jinyao Guo, Chengpeng Wang, Xiangzhe Xu, Zian Su, and Xiangyu Zhang. 2025. Repoaudit: An autonomous llm-agent for repository-level code auditing.arXiv preprint arXiv:2501.18160(2025)

  18. [19]

    Yiheng Huang, Wen Zheng, Susheng Wu, Bihuan Chen, You Lu, Zhuotong Zhou, Yiheng Cao, Xiaoyu Li, and Xin Peng. [n. d.]. PROFMAL: Detecting Malicious NPM Packages by the Synergy between Static and Dynamic Analysis. ([n. d.])

  19. [20]

    Davy Landman, Alexander Serebrenik, and Jurgen J Vinju. 2017. Challenges for static analysis of java reflection-literature review and empirical study. In2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE). IEEE, 507–518

  20. [21]

    2025.{LLMxCPG}:{Context-Aware} Vulnerability Detection Through Code Property{Graph-Guided}Large Language Models

    Ahmed Lekssays, Hamza Mouhcine, Khang Tran, Ting Yu, and Issa Khalil. 2025.{LLMxCPG}:{Context-Aware} Vulnerability Detection Through Code Property{Graph-Guided}Large Language Models. In34th USENIX Security Symposium (USENIX Security 25). 489–507

  21. [22]

    Ziyang Li, Saikat Dutta, and Mayur Naik. 2024. IRIS: LLM-assisted static analysis for detecting security vulnerabilities.arXiv preprint arXiv:2405.17238 (2024)

  22. [23]

    Zhen Li, Ning Wang, Deqing Zou, Yating Li, Ruqian Zhang, Shouhuai Xu, Chao Zhang, and Hai Jin. 2024. On the Effectiveness of Function-Level Vulnerability Detectors for Inter-Procedural Vulnerabilities. (2024), 1–12

  23. [24]

    Zhen Li, Deqing Zou, Shouhuai Xu, Hai Jin, Hanchao Qi, and Jie Hu. 2016. Vulpecker: an automated vulnerability detection system based on code similarity analysis. InProceedings of the 32nd annual conference on computer security applications. 201–213

  24. [25]

    Zhen Li, Deqing Zou, Shouhuai Xu, Hai Jin, Yawei Zhu, and Zhaoxuan Chen. 2021. Sysevr: A framework for using deep learning to detect software vulnerabilities.IEEE Transactions on Dependable and Secure Computing19, 4 (2021), 2244–2258

  25. [26]

    Zhen Li, Deqing Zou, Shouhuai Xu, Xinyu Ou, Hai Jin, Sujuan Wang, Zhijun Deng, and Yuyi Zhong. 2018. Vuldeepecker: A deep learning-based system for vulnerability detection.arXiv preprint arXiv:1801.01681(2018)

  26. [27]

    Nelson F Liu, Kevin Lin, John Hewitt, Ashwin Paranjape, Michele Bevilacqua, Fabio Petroni, and Percy Liang. 2024. Lost in the middle: How language models use long contexts.Transactions of the association for computational linguistics12 (2024), 157–173

  27. [28]

    Guilong Lu, Xiaolin Ju, Xiang Chen, Wenlong Pei, and Zhilong Cai. 2024. GRACE: Empowering LLM-based software vulnerability detection with graph structure and in-context learning.Journal of Systems and Software212 (2024), 112031

  28. [29]

    Georgios Nikitopoulos, Konstantina Dritsa, Panos Louridas, and Dimitris Mitropoulos. 2021. CrossVul: a cross-language vulnerability dataset with commit data. InProceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. 1565–1569

  29. [30]

    Yu Nong, Mohammed Aldeen, Long Cheng, Hongxin Hu, Feng Chen, and Haipeng Cai. 2024. Chain-of-thought prompting of large language models for discovering and fixing software vulnerabilities.arXiv preprint arXiv:2402.17230(2024)

  30. [31]

    2026.CVE-2020-26282 Details

    NVD. 2026.CVE-2020-26282 Details. Retrieved January 20, 2026 from https://nvd.nist.gov/vuln/detail/CVE-2020-262823

  31. [32]

    2026.CVE-2023-29523 Details

    NVD. 2026.CVE-2023-29523 Details. Retrieved January 20, 2026 from https://nvd.nist.gov/vuln/detail/CVE-2023-29523 Manuscript submitted to ACM VulWeaver: Weaving Broken Semantics for Grounded Vulnerability Detection 27

  32. [33]

    2026.ChatGPT

    OpenAI. 2026.ChatGPT. Retrieved January 20, 2026 from https://chatgpt.com/

  33. [34]

    2026.Open Standard Java Documentation

    oracle. 2026.Open Standard Java Documentation. Retrieved January 20, 2026 from https://docs.oracle.com/en/java/javase/11/

  34. [35]

    2026.Open Source Scripts for LLMxCPG

    qcri. 2026.Open Source Scripts for LLMxCPG. Retrieved January 20, 2026 from https://github.com/qcri/llmxcpg

  35. [36]

    2026.Dataset collection scipts of CVEfixes

    secureIT project. 2026.Dataset collection scipts of CVEfixes. Retrieved January 24, 2026 from https://github.com/secureIT-project/CVEfixes

  36. [37]

    Youkun Shi, Yuan Zhang, Tianhan Luo, Guangliang Yang, Shengke Ye, Chengyu Yang, Fengyu Liu, Xiapu Luo, and Min Yang. 2025. PHPJoy: A Novel Extended Graph-based PHP Code Analysis Framework.IEEE Transactions on Software Engineering(2025)

  37. [38]

    2026.Joern

    ShiftLeftSecurity. 2026.Joern. Retrieved January 20, 2026 from https://github.com/ShiftLeftSecurity/joern

  38. [39]

    Benjamin Steenhoek, Hongyang Gao, and Wei Le. 2024. Dataflow Analysis-Inspired Deep Learning for Efficient Vulnerability Detection. In Proceedings of the 46th IEEE/ACM International Conference on Software Engineering. 1–13

  39. [40]

    Benjamin Steenhoek, Md Mahbubur Rahman, Monoshi Kumar Roy, Mirza Sanjida Alam, Earl T Barr, and Wei Le. 2024. A comprehensive study of the capabilities of large language models for vulnerability detection.CoRR(2024)

  40. [41]

    Mirac Suzgun and Adam Tauman Kalai. 2024. Meta-prompting: Enhancing language models with task-agnostic scaffolding.arXiv preprint arXiv:2401.12954(2024)

  41. [42]

    Karl Tamberg and Hayretdin Bahsi. 2025. Harnessing large language models for software vulnerability detection: A comprehensive benchmarking study.IEEE Access(2025)

  42. [43]

    2018.Tree-sitter: a parser generator tool and an incremental parsing library

    Tree-sitter. 2018.Tree-sitter: a parser generator tool and an incremental parsing library. Retrieved January 20, 2026 from https://tree-sitter.github.io/tree- sitter/

  43. [44]

    Saad Ullah, Mingji Han, Saurabh Pujar, Hammond Pearce, Ayse Coskun, and Gianluca Stringhini. 2024. Llms cannot reliably identify and reason about security vulnerabilities (yet?): A comprehensive evaluation, framework, and benchmarks. In2024 IEEE symposium on security and privacy (SP). IEEE, 862–880

  44. [45]

    Chengpeng Wang, Wuqi Zhang, Zian Su, Xiangzhe Xu, Xiaoheng Xie, and Xiangyu Zhang. 2024. LLMDFA: analyzing dataflow in code with large language models.Advances in Neural Information Processing Systems37 (2024), 131545–131574

  45. [46]

    Xinchen Wang, Ruida Hu, Cuiyun Gao, Xin-Cheng Wen, Yujia Chen, and Qing Liao. 2024. Reposvul: A repository-level high-quality vulnerability dataset. InProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings. 472–483

  46. [47]

    Xuezhi Wang, Jason Wei, Dale Schuurmans, Quoc Le, Ed Chi, Sharan Narang, Aakanksha Chowdhery, and Denny Zhou. 2022. Self-consistency improves chain of thought reasoning in language models.arXiv preprint arXiv:2203.11171(2022)

  47. [48]

    Xin-Cheng Wen, Yijun Yang, Cuiyun Gao, Yang Xiao, and Deheng Ye. 2025. Boosting Vulnerability Detection of LLMs via Curriculum Preference Optimization with Synthetic Reasoning Data.arXiv preprint arXiv:2506.07390(2025)

  48. [49]

    Ratnadira Widyasari, Martin Weyssow, Ivana Clairine Irsan, Han Wei Ang, Frank Liauw, Eng Lieh Ouh, Lwin Khin Shar, Hong Jin Kang, and David Lo. 2025. Let the Trial Begin: A Mock-Court Approach to Vulnerability Detection using LLM-Based Agents.arXiv preprint arXiv:2505.10961(2025)

  49. [50]

    2026.PageRTarjan’s strongly connected components algorithmank

    Wikipedia. 2026.PageRTarjan’s strongly connected components algorithmank. Retrieved January 20, 2026 from https://en.wikipedia.org/wiki/Tarjan% 27s_strongly_connected_components_algorithm

  50. [51]

    2026.Reaching definition Worklist algorithm

    Wikipedia. 2026.Reaching definition Worklist algorithm. Retrieved January 20, 2026 from https://en.wikipedia.org/wiki/Reaching_definition# Worklist_algorithm

  51. [52]

    Bozhi Wu, Chengjie Liu, Zhiming Li, Yushi Cao, Jun Sun, and Shang-Wei Lin. 2025. Enhancing Vulnerability Detection via Inter-procedural Semantic Completion.Proceedings of the ACM on Software Engineering2, ISSTA (2025), 825–847

  52. [53]

    Bozhi Wu, Shangqing Liu, Yang Xiao, Zhiming Li, Jun Sun, and Shang-Wei Lin. 2023. Learning program semantics for vulnerability detection via vulnerability-specific inter-procedural slicing. InProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering. 1371–1383

  53. [54]

    2026.Grok

    xAI. 2026.Grok. Retrieved January 20, 2026 from https://grok.com/

  54. [55]

    Aidan ZH Yang, Haoye Tian, He Ye, Ruben Martins, and Claire Le Goues. 2024. Security vulnerability detection with multitask self-instructed fine-tuning of large language models.arXiv preprint arXiv:2406.05892(2024)

  55. [56]

    Zhengmin Yu, Yuan Zhang, Ming Wen, Yinan Nie, Wenhui Zhang, and Min Yang. 2025. CXXCrafter: An LLM-Based Agent for Automated C/C++ Open Source Software Building.Proceedings of the ACM on Software Engineering2, FSE (2025), 2618–2640

  56. [57]

    Ting Yuan, Wenrui Zhang, Dong Chen, and Jie Wang. 2025. CG-Bench: Can Language Models Assist Call Graph Construction in the Real World?. In Proceedings of the 1st ACM SIGPLAN International Workshop on Language Models and Programming Languages. 12–20

  57. [58]

    Chenyuan Zhang, Hao Liu, Jiutian Zeng, Kejing Yang, Yuhong Li, and Hui Li. 2024. Prompt-enhanced software vulnerability detection using chatgpt. InProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings. 276–277

  58. [59]

    Yifan Zhang, Yang Yuan, and Andrew Chi-Chih Yao. 2023. Meta prompting for ai systems.arXiv preprint arXiv:2311.11482(2023)

  59. [60]

    Xin Zhou, Ting Zhang, and David Lo. 2024. Large language model for vulnerability detection: Emerging results and future directions. InProceedings of the 2024 ACM/IEEE 44th International Conference on Software Engineering: New Ideas and Emerging Results. 47–51

  60. [61]

    Yaqin Zhou, Shangqing Liu, Jingkai Siow, Xiaoning Du, and Yang Liu. 2019. Devign: Effective vulnerability identification by learning comprehensive program semantics via graph neural networks.Advances in neural information processing systems32 (2019)

  61. [62]

    Hao Zhu, Jia Li, Cuiyun Gao, Jiaru Qian, Yihong Dong, Huanyu Liu, Lecheng Wang, Ziliang Wang, Xiaolong Hu, and Ge Li. 2025. Specification-Guided Vulnerability Detection with Large Language Models.arXiv preprint arXiv:2511.04014(2025). Manuscript submitted to ACM

  62. [2024]

    Vulnerability detection with code language models: How far are we?arXiv preprint arXiv:2403.18624(2024)

  63. [2025]

    https://github.com/DLVulDet/PrimeVul

    Replication Package of PrimeVul. https://github.com/DLVulDet/PrimeVul