2026
- 27 days of AI-assisted development: a retrospective in numbers
One person plus a coding agent, 27 days: 94 conversation-level devlogs, a 28-module / 8,352-line backend plus a desktop client, 351 tests, a …
7 min read
→
- Controlled revision in reflection loops
The draft → self-revise × N reflection loop often makes documents worse: full-rewrite revision regresses 16–27% of already-covered content …
11 min read
→
- Distilling judgment, not structure: a controlled experiment
Two ways to distill expert writing into a reusable skill: extract the structural template (what to write) or the judgment logic (why it is …
9 min read
→
- Document versioning and scoped editing
A document an AI rewrites over and over needs a data model that makes every version recoverable and every edit rejectable. This article …
11 min read
→
- Executing model-generated code: a two-layer sandbox
Letting an LLM write data-plotting code and executing it (the Code Interpreter pattern) means shipping an RCE entry point: the model …
8 min read
→
- From chat to agent: tool loops and collapse breakers
Give a model a tool set and a loop and it becomes an agent — along with failure classes chat applications never see: path escapes, unbounded …
10 min read
→
- Making model output usable: sanitizing and automatic repair
The model returns LaTeX that looks perfectly correct — and xelatex fails with no legal \end found. Using real debugging chains from …
9 min read
→
- Multi-agent adversarial review as an engineering practice
Split 'finding problems' and 'verifying problems' into two adversarial stages: N auditors search in parallel, one dimension each, producing …
9 min read
→
- Prompt assembly as engineering: layering, contamination, and trimming
A prompt is not a string; it is a build artifact with a layered structure, real incidents, and a need for regression protection. Drawing on …
10 min read
→
- The deterministic boundary: a first principle for LLM application architecture
LLMs are probabilistic components; production applications need engineering guarantees. This article states a field-tested architectural …
9 min read
→
- The testing pyramid for LLM applications: evals, not assertions
Non-deterministic output defeats exact-value assertions. This article presents a four-layer testing pyramid — zero-LLM unit tests, …
10 min read
→
- The token economics of LLM applications
Cost is the first real architectural constraint an LLM application hits. Starting from a precise ledger of a 'fix the keywords' request that …
7 min read
→
- Validity engineering for LLM-as-judge
Before letting a model act as judge, prove the judge is trustworthy. A complete validity-engineering pipeline with first-hand data: …
9 min read
→
- Wiring external signals into the loop: compile-and-repair
Run generated LaTeX through a real compiler and feed the errors back to the model — on tasks where errors are hard to self-detect, an …
9 min read
→