For hiring managers and engineers checking claims
Selected work, public engineering systems
Independent engineering. Two public repos, one command each.
cobol-pic-probe reproduces a payroll truncation on a synthetic corpus, and llm-adversarial-gate scores its own test corpus. Each prints its counts from the command in its README.
Clone it and run it yourself.

PICTURE-clause truncation, invisible to sum-level checks.
A synthetic payroll corpus (47,312 synthetic records, fixed seed) carries a PICTURE-clause fixed-point truncation (narrow input fields) that compounds below the reconciliation threshold. Sum-level checks pass, the adversarial probe finds it: python3 probe.py in github.com/mpuodziukas-labs/cobol-pic-probe. $40,832.41 synthetic loss. Public repo, clone and run.
Evidence artifactsMy private fork of exo (open-source distributed inference), with an ops-hardening branch, running in an Apple Silicon home lab. Walkthrough on request.
An Apple Silicon cluster serving open-weight language models in place of a managed API. It is peer-loss survivable, meaning the primary keeps serving when the peer node drops; losing the primary stops service.
Cluster detailsOn its own synthetic test corpus (n=284, written for the repo): 177 adversarial + 107 benign, 171/177 caught (blocked by the gate before release), 4/107 benign over-blocked (refused although benign). Clone and run.
A rule-based gate on every prompt (input side only), mapped to five classes of the OWASP LLM Top 10, offline pytest suite, CI green.
Evidence artifactsDependency and call graph extraction, no hand annotation.
Import and call edges are extracted from source with no annotation step, then read for dead code, circular dependencies and attack surface. Used on my own repositories; no client codebase is claimed. Private, no public repo or number; walkthrough on request.
Ask for a walkthroughAudit-trail artifacts, mapped to EU AI Act, NIST AI RMF, and ISO 42001 controls.
A quality management system, bias documentation, human oversight logs, and adversarial validation records, mapped to EU AI Act, NIST AI RMF, and ISO 42001 controls. These are engineering artifacts. Counsel decides compliance.
Evidence artifactsHOW THE GATE WORKS, AND WHY IT IS BUILT THIS WAY
- Decision, rule-based. Context: a gate in front of every prompt has to give the same verdict on every run. Choice: deterministic rules and no second model. Cost: rules were tuned on the same corpus, with no held-out set, and 6/177 adversarial prompts still get through.
- Decision, synthetic corpus. Context: a public repo cannot publish real traffic or real payroll data. Choice: a corpus written for the repo, so anyone can clone and run it. Cost: the numbers describe that corpus and no production traffic.
WHAT THE GREEN DASHBOARD HIDES - FIVE SILENT FAILURE MODES
Five findings below. Each one is left undetected by standard audit procedures, the adversarial method surfaces it. The ones from cobol-pic-probe and llm-adversarial-gate ship with a public replay command; the rest are walkthrough on request.
Deterministic COBOL forensics, self-hosted home-lab inference, and public LLM adversarial validation - one engineer covers all three here: payroll forensics, home-lab inference, and LLM adversarial validation.
- PIC V9 truncation compounds below the reconciliation threshold (the payroll finding above); the public probe reproduces it byte-for-byte.
- A prompt injection reaches the model unless a gate sits in front of it; the public adversarial gate is a rule-based filter that replays its synthetic corpus and blocks before release.
- A timestamp signs the request; nothing proves the bytes. An unsigned inference cannot be reproduced or attributed.
- Managed-API dependency reads as capability when it is vendor lock-in; self-hosting first, with cloud as fallback, narrows it to a fallback path.
- COBOL to Rust rewrites risk diverging on arithmetic edge cases unit tests miss; byte-exact replay against original output is the way to catch it.
The public findings ship with a replay command. Clone, run, reproduce the number yourself. Three, verbatim:
An OWASP checklist lists known risks; llm-adversarial-gate runs labeled attacks against them.
The adversarial classes the gate is scored on.
An OWASP checklist confirms known-issue coverage. An adversarial run finds what the checklist can't. llm-adversarial-gate is the public anchor: fixed corpus, deterministic, clone-and-run.
171/177 (synthetic corpus)
python3 build_corpus.py && python3 evaluate.py
Prints: [171 / 177 adversarial caught]matched
Re-checked 2026-10-06: survives, caveat stated in the repo README
n=284 (synthetic corpus)
python3 build_corpus.py && python3 evaluate.py
Prints: total=284)matched
Re-checked 2026-10-06: survives
$40,832.41 (synthetic corpus)
python3 probe.py
Prints: Compounding error (loss): $40,832.40790matched
Re-checked 2026-10-06: survives
Incident, gate, receipt
Incident
171/177 caught; the gate printed [6 adversarial missed]
Corpus is synthetic.
Gate
python3 build_corpus.py && python3 evaluate.py
Receipt
p6 6/177 2026-10-06
synthetic
Where this breaks
Known failure modes, one per system.
The inference cluster is peer-loss survivable (the primary keeps serving when the peer node drops; losing the primary stops service). It is not fault-free.
Two nodes shard the model running in the home lab. If the primary node drops the peer, it serves solo; if the primary node itself is lost, the peer cannot hold the model and service stops. Asymmetric fallback, stated plainly.
The home-lab model is quantized. It is below frontier class.
What I claim is reproducible self-hosted inference on hardware I own, at a known cost. I do not claim the model matches a frontier model.
Three questions. If your team cannot answer all three, one of these five findings is active.