337ee8ef11
- CloudConnectionError(reason=) defined in this module — token_expired | invalid_grant - All 7 StorageBackend methods implemented as async coroutines - Every sync googleapiclient call wrapped in asyncio.to_thread() (Pitfall 7) - cache_discovery=False on build() prevents /tmp directory traversal (T-05-03-05) - presigned_get_url and generate_presigned_put_url raise NotImplementedError (D-14) - HttpError 401 raises CloudConnectionError(reason='token_expired') - HttpError 400 with 'invalid_grant' raises CloudConnectionError(reason='invalid_grant') - HttpError 404 on delete_object is silently swallowed (no-op per contract) - Backend is stateless — no DB writes (B2 design, D-05/D-06)