add e2e tests for community lifecycle and publishing
Two new test files exercising the community module end-to-end against the
local devnet stack:
- community-lifecycle.test.ts: mint → bootstrap reserved spaces → grant →
list → setAccessLevel → revoke → ownership handoff. Pins the missing
last-owner guard with two it.fails probes that flip to passing once the
guard lands.
- community-publishing.test.ts: caller JWT → encrypted app-password decrypt
→ PDS session → com.atproto.repo.createRecord with the community DID as
repo → Jetstream → indexer. Each published record gets a 4-way check
(200 from putRecord, exists at PDS, indexed, indexed did is the community
DID). Plus authz (non-publisher 403), delete roundtrip, and minted
community returns NotSupported.
Shared infrastructure (login, callAs factory, jsonOr, app-password mint,
devnet-rewrite fetch, getRecordFromPds) lives in helpers.ts so each new
test file imports rather than copying.