Copied from #1178 (comment)
The above 500 error when putting object by other users were introduced
by the commit [1]. It changes User in function arguments to User0
and assigns canonical ID to User binding. To call handle_policy_call_result(),
it should use User0 instead of User.
Then, the 500 error is not introduced by this PR, I recommend to remove
"fix" commit [3] and defer the actual fix. Sorry for pointing out the bug
out side of this PR's scope.
[1] 61180ba?w=1
[2] 61180ba?w=1#diff-caff706fcdff3c29cf3b9beaea88d1faR484
[3] 9045aca