Bitbake should have the ability to let the user know how many tasks need to be redone vs reused from sstate. I envision that the user is expecting a trivial rebuild but by accident changes something that will force a rebuild of many things. The user should be able to cancel the build before much happens. I expect the user would opt-in to a "continue Y/n" prompt. If the check itself is quick it could be included by default as a message.
There are patches on the bitbake-devel and openembedded-core mailing lists which when combined add an sstate usage summary to the build output. This output is printed early in the build so you can quickly break out if its not what you expect. Its also printed if you run bitbake with the --dry-run option.
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=6bb9ac9c65432b4c88c3a6827e036d6e5f8cf6a9