Opens in a new tab
[gtranslate]

AI writes the test. A compiler proves it. Jenkins runs it. 

From AI-generated tests to compiler-verified, executable evidence.

  Embedded C       Gemini       Docker       Jenkins       GitHub   

The Pipeline 

From a new release to a published dashboard. 

Whole pipeline, one job. Triggered by a timer, runs only when there is something new. 

A client repository (any git URL) and the VERISAFE image are pulled by Jenkins on a timer, roughly every three hours. Jenkins then runs the pipeline end to end: scan, AI-generate tests, compile and run them for real, compute coverage, then publish a dashboard. If there’s no new image, the run finishes in seconds. 

AI Proposes. The Compiler Decides. 

Nothing the AI writes is trusted until it runs. 

The compiler decides, not the AI. 

The AI drafts a test, and a real compiler (the Unity framework) builds and runs it. If it compiles and passes, it becomes a trusted test. If it’s wrong or won’t compile, it is rejected and retried — up to three times. 

Before and Now

Same tests. The trigger is what changed. 

The trigger moved from a person to the pipeline. 

Before: someone had to remember to open Jenkins and click Build, and tests ran maybe. Now: a timer checks for a new image, Jenkins tests it automatically, and the dashboard is published on its own. 

One Engine, Four Ways to Run It 

Each step removed a manual step. 

Four ways to run it, one engine, so the numbers match everywhere. 

The same VERISAFE engine (40 modules, 99.0% line / 97.4% branch coverage) can be run as a standalone executable (v1), a Docker image (v2), a Jenkins pipeline (v3), or via init with Gherkin (v3.1) — all converging on identical results. 

Polling on Purpose 

Why we did not open an inbound door to Jenkins. 

The difference is which way the connection points. Polling trades a few hours for zero new inbound doors. 

Webhook: GitHub calls in across the internet to a Jenkins instance that must be reachable and holds the Docker socket. Polling (chosen): Jenkins calls out to the registry every ~3 hours — nothing can call in. 

What You Get 

  • No hardware needed — tests run on any machine with Docker. 
  • Any repo URL — add a line to a config file. 
  • New release, tested — detected and run automatically. 
  • Nothing faked — blocked code is reported, not hidden. 

Limits: AI output varies by codebase, and coverage is not ISO 26262 compliance. Results shown are from an NXP S32K144 automotive ECU codebase.

Links that would also help you in understanding better: https://www.requisimus.com/building-an-ai-driven-ci-cd-pipeline-with-multi-repository-integration/

For more information contact

Name: Soundarya Mahadev

Email: Soundarya.mahadev@requismius.com