Files
zeekay b0fe332a88 auth: a Google consent is kept the one way @hanzo/app keeps it
The callback wrote Workspace tokens into storage by hand, with no expiry.
It calls @hanzo/app 0.2.28's keep() now, which records the expiry Google
gave, so gmail() can tell a live token from a spent one when the beta
invites send from the member's own Gmail. A gate holds it.

Claude-Session: https://claude.ai/code/session_017vrVus6PPBgP5YRzKV1iqW
2026-10-25 19:05:23 -07:00
..