Martin Kraus
Author directory2026
Generation and Verification: Human-Agent Collaboration for Safety-Critical Automotive Software Engineering
Elizaveta Zinovyeva | Aiham Taleb | Nikita Kozodoi | Daniel Schleicher | Amir Mahdi Namazi | Martin Kraus | Levent Kent | Brian Jensen
Proceedings of the Second Workshop for REsearch on Agent Language Models (REALM 2026)
Elizaveta Zinovyeva | Aiham Taleb | Nikita Kozodoi | Daniel Schleicher | Amir Mahdi Namazi | Martin Kraus | Levent Kent | Brian Jensen
Proceedings of the Second Workshop for REsearch on Agent Language Models (REALM 2026)
Research on coding agents mainly focuses on generation quality. Yet, safety-critical automotive software makes two additional demands. It prioritizes verification, since every change is reviewed, traced to a requirement, and checked against industry standards such as MISRA and AUTOSAR before it can be committed. It is also a narrow domain, written against layered architectures, embedded resource constraints, and organization-specific interface conventions that are scarce in the data general-purpose LLMs are trained on. We present a coding assistant for automotive C/C++ that addresses both demands. First, it exposes three tools to the user over the Model Context Protocol (generate, edit, and verify), allowing developers to run verify on any code on demand rather than relying on the agent to check its own output. Second, rather than using a general-purpose model, we customize the underlying LLM for the automotive domain through prompt engineering and fine-tuning. We construct a dataset from automotive production code of AUMOVIO, where each function is paired with the requirement texts and Unified Modeling Language (UML) behavior it must satisfy. In a two-week pilot on active production projects, developers report verify as the most-used tool and confirm using it on their own code and not only on generated output. Comparing model customization strategies, 75% prefer the faster prompt-engineered configuration. MISRA- and AUTOSAR-inspired pattern checkers indicate that prompt engineering achieves a lower number of violations on C, while fine-tuning shows better conformance with architecture patterns for C++.