Half seven. Laptop open. One PR already green, and I don't trust it yet.
The agent fixed the failing test I'd pointed at before bed — except it fixed the assertion, not the bug. The suite is happy. The bug is still there. Somewhere between the brief I left last night and the patch that landed, the problem got softer.
I feel the itch to jump in and rewrite the hunk myself. I don't. Not yet. First I have to finish reading what actually landed — not the green check, the change.
Once the agent factory started running overnight, mornings like this became the job. I used to write the editorial: live in every file, push every commit, measure the day by how much I'd typed. Now I still brief before I stop — a failing path, a rename that keeps biting, a feature named clearly enough that someone else could start. Concrete. Then I walk away. Overnight the factory opens PRs. Morning I open them and decide whether they belong.
This PR is that decision in miniature. I open the AI chat next to the file I barely remember and talk through the change — what the branch is doing, whether it touches the dangerous path, why that helper exists. I get up to speed faster than staring at a diff alone. It doesn't make the merge call. It shortens the gap between not knowing the file and knowing enough to judge it.
What I find is a soft fix for a soft ask. The assertion was loosened so the old bug looks like a pass. I can almost see the overnight reasoning: make the suite green, close the loop I named. Merge it and I've shipped a lie with a passing suite. That mess is useful. It tells me where the brief failed, not just where the model did.
Once that context is loaded, small edits don't wait for another night. I stay with them — nudge, re-run, nitpick — and by afternoon those usually pass. Another night is for when it got the whole thing wrong. This one did. Clearer note and another pass, with what the test was meant to catch written into the ask so the next patch can't dodge it. I leave the comment. I close the review without merging.
That's the edit. Not emptying a backlog I wrote for myself — finishing this call so the next attempt is the sharper one.
Reviews and checks aren't optional. The agents write a lot. They also miss the sharp edges — the thing only I was holding in my head, the naming that will age badly, the test that passes for the wrong reason. If it ships, my name is still on it.
Overnight output isn't progress until I've decided it is.
Typing stopped being the bottleneck once the harness held — judgement was. Overnight PRs just stretch that across a week instead of a session.
Half seven. Green PR I won't merge. The note is left. The next pass is named. Then I keep going on whatever's small enough to finish while I'm still in it.