Browser extension: detect and subscribe to standard.site publications on ATProto substandard.blog

fix(session): share one in-flight token refresh #578

Merged permadeath.com
targeting main from claude/oauth-startup-race
Merged opened by and assigned to permadeath.com
targeting main from claude/oauth-startup-race

Chrome fires startup and install together, so two session refreshes could rotate the same refresh token. They now share one in-flight rotation, and the offscreen document is reference-counted: a close waits for the last message instead of cutting off another refresh or an interactive sign-in. No persisted state or credential changes.

Tests cover concurrent startup/update refreshes and overlapping offscreen callers. Typecheck and the affected suites pass; the integrated 2.1.0 tree also passes live smoke and the store-identity auth probe.

🤖 Generated with Claude Code

Commits 0