The smart contract is another representation of a legal contract that users make between them. If you click a sign-in button, a buy button, … users agree to a legally binding contract. Smart contract transactions shouldn’t be different.
EOS has an explicit annotation to smart contracts such that a transaction can be read like a legal agreement. I don’t think there are any plans for that on blockstack, so it is up to the developer to make sure that the users understand the impact of transactions, like you are donating money without getting a tax receipt or you agree to give a loan to a pseudo anonymous person with 2% interest,…