AlgoArena Team 5 min readThe File the Agent Describes Is the File You Get
A round of fixes so the agent's reply, your files, and the preview agree about what changed, in Builder and in vibecoding assessments.
When you build with the agent, its reply is how you find out what changed. If it says a stylesheet was added, you go on to the next idea without opening the file to check. A round of fixes closed several places where the chat, the files, and the preview disagreed, in Builder and in vibecoding assessments.
What changed
If the agent tries to rewrite an existing file in a way that would throw away most of it, the write is refused and the file stays as it was. Normal edits still go through, and so does a full rewrite that replaces a file with something of similar size. In the main chat, the agent is then told on its next step that the file was left unchanged and that a real rewrite means sending the whole file. Before, a blocked write got no word back, so the agent believed its edit had landed. It then found its change missing when it read the file again and could spend several replies blaming the preview while none of its fixes reached the file.
A reply is now checked against the files it says it wrote. If a turn changed some files but the reply also claims to have added or updated one that never changed, the agent keeps working and is told which files it described without writing. On a build request, a starter script that is still just a placeholder comment counts as unfinished too. Before, one real edit was enough to end the turn, so a first build could write the page, claim the stylesheet and script as well, and leave the new page sitting under the starter's old styles.
Two ways an edit quietly lost content are fixed. When the agent packs several changes to one file into a single edit, every change now applies. Before, only the first did, even though the turn reported all of them as done. A file whose own code quoted the text that marks the end of an edit used to be cut off at that quote and left broken. That text now ends a file only when it starts a line of its own, so a quote in the middle of a line of code stays part of the file.
Raw code could also spill into the chat. In a turn that wrote several files, any file after the first used to show its raw code in the chat while it was being written, and kept showing it if the turn stopped partway through. Now the chat names the file being written and hides the unfinished code if the turn stops. A separate bug could cut a JavaScript file short at the first line beginning with "this.", because that line was mistaken for the start of an English sentence like "This adds a score counter." The rest of the file ended up in the chat instead of the workspace. Lines like that are now read as code, so the file arrives whole.
The preview waits for a short pause after you type, so it does not reload on every keystroke. Agent edits used to wait on that same pause. In a turn that wrote several files, each write started the pause over, so the preview could stay behind for the whole turn and sometimes needed a manual refresh. Your own typing still gets the pause, but edits from the main chat and from agents working in parallel now show in the preview as soon as they land.
Building the preview takes a moment, so a turn that writes several files can have several builds running at once. Before, an early build that happened to finish last could replace the newer result and leave the preview a turn behind. Now only the newest build can reach the preview, and an older one that finishes late is thrown away. The check that looks for syntax errors before the preview loads also used to be skipped on the live site. It runs there now, so a broken script points to its own file and line instead of a line number in the single page the preview builds from all your files.
Why it matters
In Builder, a summary that names a stylesheet that was never written sends you off asking for changes to it, and a preview one build behind makes a working fix look broken.
In an assessment, the same gaps take minutes from a candidate on the clock. They also reach the reviewer, who reads the session later without the candidate there. A transcript that claims files the workspace never had tells that reviewer something untrue about the work.
Where it points
The next step is checking everything else the agent says about its own work against what actually happened, the way its file claims are checked now.