Let say on first version of manifest, we have file call abc.css . Subsequently, on second version of manifest, we remove abc.ss and append new file def.css . Does browser automatically invalidate abc.ss and remove from the caching list in browser upon second time user visited the website?
No. Once files are cached using the app cache. They remain in cache, and the browser doesn't even contact the server to validate files or to see if any changes were made.
If you need to modify a file that is cached by the application cache, then you need to modify your manifest file.
From http://www.html5rocks.com/en/tutorials/appcache/beginner/
You must modify the manifest file itself to inform the browser to refresh cached files.