An item is edited in the web database. Will it be overwritten if a smart publish is fired from the master db?
Yes, publishing will synchronize what's in Master and Web database. That means any change you've made in Web (whether that's updates, deletes or other) will be overwritten by what's in Master database. More information on publishing can be found here.
If you have a legitimate use case to update content from the front end of the website, you'll can consider saving this in the master database using a web service and publish this to reflect it in live for instance.
However, typically you wouldn't need to have user generated content inside a CMS (as it's not managed content), but that would of course depend on your requirements.