Computer ScienceOriginal ResearchPublished October 29, 2026 · 52 views12 downloadsDOI 10.66308/air.e80134906

How much model does warning triage need? A cost-aware comparison from rules to locally run language models

1Software Engineering Manager, Los Angeles, United States
2Senior Software Developer
* Corresponding author: Peter Sullivan, peter.s.034512@gmail.com
Received October 2, 2026Accepted October 28, 2026
static analysisactionable warningscode language modelslarge language modelscross-project evaluationshortcut learning
Download PDF
Cover: How much model does warning triage need? A cost-aware comparison from rules to locally run language models

Abstract

Static analysis tools report far more warnings than developers act on, and machine learning is widely proposed to identify the actionable ones. Published comparisons rarely include a simple label-based reference, and rarely report quality on unseen projects together with compute time. This study compares five levels of model complexity on two open datasets, NASCAR (Java) and AW4C (C): a warning-type prior, a linear model on term frequency-inverse document frequency (TF-IDF) features, a frozen code encoder, fine-tuned code encoders, and open-weight large language models (LLMs) run locally. All models were scored on the same 1,000 warnings per dataset and protocol, using the Matthews correlation coefficient (MCC) with project-level bootstrap intervals. Three findings emerged. First, in the original AW4C release the number of lines in the supplied code context predicted the label with an MCC of 0.91 on unseen projects, and fine-tuned CodeBERT reached 0.81; in a variant rebuilt with a uniform context window, which also differs in composition, the corresponding values were 0.12 and 0.30. Second, on unseen NASCAR projects an advantage of fine-tuned encoders over the warning-type prior was not established: the paired difference in MCC was −0.08 (95% CI −0.21 to 0.02) for CodeBERT. Third, locally run LLMs without task-specific training scored near zero on NASCAR with the default threshold and required about 47 times the mean processing time of a fine-tuned encoder. Model complexity should be assessed against a simple reference under cross-project evaluation.

Keywords: static analysis, actionable warnings, code language models, large language models, cross-project evaluation, shortcut learning

Cite asPeter Sullivan, Bogdan Mikhaylov (2026). How much model does warning triage need? A cost-aware comparison from rules to locally run language models. American Impact Review. https://doi.org/10.66308/air.e80134906Copy

Declarations

Data availability

The source datasets are publicly available: NASCAR at https://doi.org/10.5281/zenodo.17079912 and AW4C at https://doi.org/10.5281/zenodo.15016587, both under the CC BY 4.0 license. The procedures for sampling, context extraction, data splitting, model training, and evaluation are described in Section 3. The derived data, including the corrected AW4C-U set, the identifiers of the evaluated warnings, and the predictions of all models, together with random seeds, software versions, and the identifiers of the few-shot examples, are available from the corresponding author on reasonable request. The analysis code has not been publicly released.

Funding

This research received no external funding.

Competing interests

The authors declare no competing interests related to this study.