gsutil should update its cache when permission errors occur.
After adding storage write access to a compute engine access scope, gsutil still reported 403 Insufficient Permission.
The fix was to delete ~/.gsutil which then addressed the issue.
This is not obvious to the user. Can gsutil identify if the cache is dirty or at least provide a message to the user on what to do for this issue?