The liar
Fast symbol exists. Banner says yes. Debugger hits: 0.
exit 1 · NO_DISPATCH_OBSERVEDPolygraph — prove what actually ran
Arm Create · Cloud AI · judge demo
Polygraph separates what was built, what was selected, and what actually ran—then separately tests throughput, latency, memory, and recovery before a cloud candidate is promoted.
Static judge demo · inspectable JSON · no hidden backend or live benchmark
The smallest reproducible demo builds two binaries from the same C source. Both print using fast path: yes and return the correct answer. One never calls the fast function. Polygraph catches the mismatch instead of trusting the banner or timing alone.
Fast symbol exists. Banner says yes. Debugger hits: 0.
exit 1 · NO_DISPATCH_OBSERVEDSame banner. Same answer. Debugger proves the fast function ran.
exit 0 · OTHER_DISPATCHED_ADHOCUse the exit-code contract in CI. Mismatch fails. Missing evidence is undetermined—not a false pass.
tools/polygraph check --json$ make demo same source · same banner · same output ✗ liar MISMATCH fast_path_sum: 0 hits · exit 1 ✓ honest MATCH fast_path_sum: dispatched · exit 0 → The claim is now machine-checkable.
This is a real local fixture, not a mockup. It demonstrates the verifier and exit-code contract; it is not the Arm benchmark. Reproduce it with git clone → make demo; no model download is required.
On one documented llama.cpp KleidiAI source build, software reported acceleration while the needed matmul kernels were missing. An explicit Arm feature-target build restored the kernels on the tested Cortex-X925/A725 CPU.
Scope: this is a broken-versus-corrected build measurement, not a Polygraph-authored kernel, GPU result, stock-release defect, or universal speedup claim. The repository keeps the raw JSON and build provenance so a judge can inspect the exact boundary.
Static symbols prove the accelerated kernel was compiled into the binary. They do not prove runtime use.
Verbose runtime logs show what the dispatcher says it selected. Still not proof of execution.
A non-halting debugger breakpoint counts real kernel entry points during inference. This proves dispatch for the measured workload—not speed or readiness.
A stricter paired Arm64 synthetic gate compared distinct baseline and candidate binaries. The candidate passed readiness and replay checks, but failed the throughput promotion threshold. The system rolled back instead of publishing a favorable isolated result as a cloud optimization.
Loading committed receipt timestamps…