Build fast local checks, explicit CI contracts, and clear escalation paths so AI coding agents can make small changes with evidence instead of optimistic guesses.
A Safe Developer Feedback Loop for AI Agents
Posted on in Programming
AI-enabled developer productivity, build systems, and engineering leadership
Posted on in Programming
Build fast local checks, explicit CI contracts, and clear escalation paths so AI coding agents can make small changes with evidence instead of optimistic guesses.
Posted on in Technology Management / Leadership
Measure AI-assisted engineering through flow, quality, learning, and customer outcomes instead of surveillance metrics that encourage activity without improving delivery.
Posted on in Programming
Give AI-assisted changes a compact handoff contract that preserves evidence, makes the review boundary clear, and leaves consequential decisions with an accountable human.
Posted on in Programming
Turn an AI coding agent's reconnaissance into a reviewable engineering plan by separating evidence from inference, naming decisions and risks, and defining validation before implementation begins.
Posted on in Programming
An AI coding agent does not need a clever prompt. It needs an assignment that a reviewer could recognize after the fact.
That distinction matters. “Fix the flaky test” may be enough for a human who already knows the service, its constraints, and the team’s habits. To an agent …
Posted on in Programming
Most build tool wrappers start as kindness.
Someone notices that the "real" command is too long, too easy to forget, or too different between local development and CI. They add a Make target, a justfile recipe, a shell script, a package-manager alias, or a small Python helper. Now the team …
Posted on in Programming
AI is very good at making CI failures feel less lonely.
That is useful. A large CI log can be hostile terrain: thousands of lines of setup output, dependency chatter, repeated warnings, retry noise, test framework boilerplate, and one real clue hiding near the bottom. Asking an AI tool to …
Posted on in Programming
AI coding agents can produce more code than your review process can absorb.
That is the useful part and the dangerous part.
The same agent that can trace a bug across five files, update tests, adjust documentation, and clean up a few nearby rough edges can also turn a small …
Posted on in Programming
Build failures become expensive when they stop being reproducible.
The first failure is usually just a problem. The third person saying "it only happens in CI" is when the problem starts turning into folklore. Someone reruns the job. Someone else clears a cache. A third person changes an unrelated file …
Posted on in Programming
CI output is part of your developer experience.
That sounds obvious until you look at the average failed build. A pull request goes red, the developer opens the CI job, and the first thing they see is a scrollback landfill: dependency installation noise, folded shell wrappers, progress bars, warnings from …
Posted on in Programming
AI coding agents are very good at refactors until they are not.
That is the uncomfortable part. The same agent that can rename a helper across a repository, split a giant function, update tests, and clean up repetitive call sites can also make one tiny semantic change that hides inside …
Posted on in Programming
Remote cache misses are where build-system optimism goes to get humbled.
The sales pitch for remote caching is simple: someone already built the thing, so you should not have to build it again. In a healthy Bazel setup, that can be beautiful. CI writes reusable outputs. Developers pull the same …
Posted on in Programming
Local CI commands should be boring.
That sounds like faint praise, but boring is exactly what you want from the command that tells a human developer, a coding agent, or a pull request bot whether the repository is healthy enough to trust.
The problem is that many repositories make this …
Posted on in Programming
AI-written tests are dangerous in exactly the way good-looking tests are always dangerous: they can make you feel safer without actually reducing much risk.
That is not an argument against using AI coding agents to write tests. I use them for test scaffolding, edge-case enumeration, fixture cleanup, and regression coverage …
Posted on in Programming
Remote build caching is worth it when the cache saves more engineering time than it costs in build discipline, infrastructure, debugging, and trust.
That sounds obvious, but it is the part teams skip. They see long CI times, slow local builds, and a build system with the word "remote" in …