5c7753c0b8
Pre-PR4 admins have users.default_workspace_id NULL. Without this backfill they would log in successfully but immediately bounce off the workspace gate (T4.7) because their token cannot encode a wid. The lifespan hook now resolves the admin user and calls ensure_default_workspace (idempotent — no-op if the user already has a workspace), so the post-upgrade boot makes the admin usable. Renamed routers.auth._ensure_default_workspace → ensure_default_workspace to make it importable across modules. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>