Measuring engines and protocols under controlled, cold-cache conditions. Every result ships with the experiment that produced it.
Every experiment is a capsule addressed by an 8-character SHA-256 fingerprint over its config, SQL, and every line of measurement-relevant Python. Change the method and the ID changes. Cold-cache execution, hard row-count assertions, and an integrity seal on every capsule. The four published Quack capsules additionally carry OpenTimestamps proofs anchored to Bitcoin.
902d1277 — DuckDB-over-Quack (pushdown) against PostgreSQL:
4.4× at 100K rows, 6.1× at 1M, 13.2× at 10M. Bands are replication min–max,
cold cache, arm64, 8 cores, DuckDB 1.5.3. Caveat disclosed in the config: PostgreSQL pays a
macOS Docker-VM tax on this bench.
b8e2bfaf — attach-mode overhead grows with scan size
(2.6× at 100K → 9.5× at 10M); pushdown stays flat at ~2×. Attach mode streams
table data client-side; pushdown ships only results. The residual 2× traced to reduced
server-side parallelism, not transport (capsule 25b0e134).uvx sqlbenchdag.Attacks on what an agent stores and later treats as its own knowledge. Maps to OWASP LLM01 (indirect prompt injection) and LLM04 (data poisoning).
A deterministic exploit against an open-source agent memory system: text that reads as ordinary content to a human, but that the extraction pipeline turns into a stored fact the agent later treats as its own knowledge. Disclosed responsibly. Separately, a forensic read of a coding agent's local state directory — what it writes to disk, in plaintext, without telling you.
Instrumenting agents and reading what they actually did, rather than asking them. Relates to OWASP LLM06 (excessive agency).
Per-turn tracing and deterministic grading of coding agents working against a commercial
lakehouse platform. The traces surfaced three defects I reported upstream — including
an error message that actively sends an agent in the wrong direction, suggesting
tanh for a date function.
16 content-addressed studies, 7 models, 110+ graded runs. When a high-status persona is injected into an agentic routing decision, the pipeline follows the persona rather than the engineering argument. The companion finding is prompt-level instructions get ignored under pressure while mechanical controls hold.
Whether a retrieval system can support the answers it gives. Maps to OWASP LLM09 (misinformation).
I built a labelled evaluation set for a retrieval system I had written myself, and found it answering fluently, with citations, and with no error of any kind. Recalibrated the refusal threshold from 0.56 to 0.87 precision and validated out-of-sample. Confident output is not evidence; the failure mode to fear is the plausible one, not the obvious one.
Runs entirely from a local directory — LanceDB for vector, full-text and hybrid search, sentence-transformers for embeddings, no hosted cluster and no API key. Ask a question, get an answer and a link to the timestamp where it's answered.
Engineering that came out of the research: gates that hold when instructions don't.
ai-agent-utils — a bootstrap that starts a repository with gates already enforced, rather than rules written down and hoped for. Two families: git discipline, and claim integrity — every load-bearing number registered with a source and re-checked before commit, fabricated claims blocked by pattern, and a checkpoint that refuses to record a working state unless a proof command passes. Enforcement is git hooks and stdlib scripts, so it binds whichever agent is driving; the Claude and Cursor files only describe it. The Pedantic Medallion — community-curated playbooks for building shared understanding, from the framework of the same name.