test(communities): Add comprehensive integration and unit tests for V2 fixes master
**NEW TESTS**: 1. **community_credentials_test.go** - Integration tests: - TestCommunityRepository_CredentialPersistence * Verify PDS credentials saved to database * Verify credentials retrievable after creation - TestCommunityRepository_EncryptedCredentials * Verify credentials encrypted in database (not plaintext) * Verify decryption works correctly on retrieval - TestCommunityRepository_V2OwnershipModel * Verify owner_did == did (self-owned) 2. **community_v2_validation_test.go** - Integration tests: - TestCommunityConsumer_V2RKeyValidation * Accept rkey="self" (V2 communities) * Reject rkey with TID pattern (V1 communities) * Reject custom rkeys - TestCommunityConsumer_AtprotoHandleField * Verify handle field handling in consumer 3. **community_service_test.go** - Unit tests: - TestCommunityService_PDSTimeouts * Verify write ops use 30s timeout * Verify read ops use 10s timeout - TestCommunityService_UpdateWithCredentials * Verify UpdateCommunity fetches credentials from DB * Verify error if credentials missing - TestCommunityService_CredentialPersistence * Verify repo.Create() called with credentials 4. **community_e2e_test.go** - Enhanced E2E tests: - Fixed .local TLD issue (changed to .social) - Fixed handle length issue (use shorter test names) - Complete flow: Service → PDS → Jetstream → Consumer → DB → XRPC **TEST COVERAGE**: - ✅ P0 credential persistence bug - ✅ P0 UpdateCommunity authentication bug - ✅ Encryption at rest - ✅ V2 rkey validation - ✅ Dynamic timeout logic - ✅ End-to-end write-forward flow 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>