How do you verify a build actually contains the code you just wrote?
Spent most of a day debugging a fix that turned out to have never shipped. The build compiled clean, the app launched, the screen looked right, and the code I had just changed simply was not running.
Root cause was a stale build cache. I had moved a widget between files, and the toolchain kept serving the old compiled output instead of rebuilding it. No error, no warning, exit code 0. The binary running on the device just was not the one on disk.
What I do now before trusting any "it's fixed" claim: grep the compiled output for a string unique to the new code. If it is not in there, the thing running is not the thing I think it is.
Anyone found a cheaper check than grepping the compiled artifact directly? Feels like something the build tool should catch on its own.
Replies