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
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
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
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 Technology Management / Leadership
AI-generated pull requests are not a new category of code. They are pull requests.
That sounds obvious, but it is the first thing teams forget when the novelty arrives. A pull request created with an AI coding agent still changes production systems, test behavior, user workflows, security posture, operational load …
Posted on in Technology Management / Leadership
AI coding agents are useful in the same way junior engineers, build scripts, and sharp shell aliases are useful: they can remove friction, accelerate boring work, and occasionally surprise you with a clever path through a problem. They are not a replacement for engineering judgment.
That distinction matters.
The strongest …