it might be nice sense to display the diff in the error message so that it's more clear to the caller what failed.