Here's the problem: we have a developer whose changes are not going into the cvs history file for some reason, so TeamCity is not detecting them. We'll work on fixing that. But here's the strange part:
At 3pm yesterday, he checked in a change did not compile. At 7pm, I started a build, and the build compiled. It should not have. If his change had been in there, the compile would have failed. And, when that build finished, TeamCity tagged CVS, with the tag b_605. I checked out a working directory at tag b_605 and tried to build, and the compile failed. So TeamCity included his broken change in the tag, but that was not (apparently) what was built.
What's going on? How could TeamCity be building a set of sources that doesn't include changes checked in hours ago, and how could the tag not match the sources which were actually built?