The validation loop from the end of the first writeup happened. I demoed the ADA agent to the senior developer whose 50-hour estimate started this. He liked it, and suggested something I hadn't considered: have the agent generate a patch file for every file it touches, formatted for SVN.
Patch files were new to me
I'd heard of patch files but never created or applied one, and I hadn't worked with SVN directly before this. So the question was whether the agent could handle something I didn't fully understand yet. I told it to review every file in a folder, apply the ADA fixes it already knew, and generate an SVN patch file for each one it touched. It could.
The "no patch needed" bug
Not clean on the first pass. The agent would sometimes write a patch file labeled "No patch needed" for a file that did need ADA changes, following the instruction to produce a file per input but wrong about whether a fix was warranted. I revised it until it applied the ADA standards first and decided whether a patch was needed second, instead of defaulting to "nothing to do."
What's next
Next step is demoing the whole thing live in the team meeting: the review, the WCAG citations, the impact/feasibility scoring, and the patch files. A working patch-file output is the difference between "here's a tool I built" and "here's something you can apply to your own branch."
ADA compliance is estimated at 50 to 60 hours per system, and we have more than 50 systems that need it: a backlog in the thousands of hours. In the folder-scoped test, the agent generated patch files in under an hour.
Update: the per-file loop itself turned out to be the next bottleneck. See the follow-up on letting the agent scan an entire codebase on its own.