Your agent writes tracking, and it is getting better at it.
This is not an argument that coding agents write bad code. They write tracking calls, they get the shape right, and each model generation does it better than the last.
The claim here is narrower, and it does not improve as the models do.
An agent checking its own tracking is checking its own work.
Your agent calls the diff complete. A check that did not write it says signup_completed is no longer recorded on this path.
The agent that wrote the diff is the agent deciding whether the diff is complete. The code under review and the reviewer share one set of blind spots, because they came out of the same model in the same pass.
Every other kind of correctness already gets checked from outside. Tests run in CI, not inside the function they cover. Review comes from someone who did not write the diff. Instrumentation is the one that got left to the author.
| Asked | Answer |
|---|---|
| The agent that wrote it | Complete. The feature works and the tests pass. |
| A check that did not | signup_completed is no longer recorded on this path. |
Only the first one is obvious.
The other four leave a call in place that still runs, which is why they survive review and why they are the expensive ones.
{
"mcpServers": {
"skene": {
"url": "https://www.skene.ai/api/mcp",
"headers": { "X-API-Key": "your-workspace-api-key" }
}
}
}Your agent can run the check itself.
Skene runs as a hosted MCP server. Your coding agent calls it before it opens the pull request, and the answer comes back in the same session: these calls changed, this one is missing, here is what the plan says should be there.
So the check is not competing with your agent. It runs one step earlier, inside the same loop, and the pull request gate is the backstop for when the agent skips it.