Timecode randomizer - bug or feature?

I have a 25p project and created a 30 sec long Batch script. The next day I opened Batch the end timecode was 25:00; however, it was still 750 frames long, but 1 second was counting 30 frames like it was an NTSC project. The third day I opened the project, the timecode was 25 fps again, and the last frame was at 30:00, like on the first day. Has anyone else experienced something like this ever?

I get this all the time. I keep switching between frames and timecode to make sure my timing is going to work. I don’t use 25p, I use 23.98, but the same issue arises.