Narrow OAuth scope and switch to Bluesky intent/compose
Replace API-based Bluesky posting with bsky.app/intent/compose links,
removing the need for app.bsky.feed.post write access. Drop the blanket
transition:generic OAuth scope in favor of a custom permission set
(blue.checkmate.authFullAccess) that grants access only to game and
challenge records. The consent screen now shows a single friendly label
instead of broad scary permissions.
- Remove buildFacets, postToBluesky and all facet/embed machinery
- Add openBlueskyCompose() using bsky.app/intent/compose?text=
- Add blue.checkmate.authFullAccess permission set Lexicon
- Publish schema to @checkmate.blue PDS via com.atproto.lexicon.schema
- DNS TXT record at _lexicon.checkmate.blue points to the publishing DID
- Deduplicate SCOPE const between oauth.ts and auth.svelte.ts