I noticed there's no mention of caveats and migrations. I assume you can't remove a caveat referenced in a relationship. Are there other restrictions? Can caveat expressions change? Can parameters change? Obviously, caveat checks would break if that's not done carefully, but is it allowed?