A community based topic aggregation platform built on atproto

docs: update PRD to reflect .community. handle format

Update Product Requirements Document to document the singular
.community. naming convention.

Changes:
- Update handle format examples
- Document identifier resolution features
- Update API examples with new handle format

This ensures documentation matches the implemented handle format
and provides clear examples for developers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

Changed files
+4 -4
docs
+4 -4
docs/PRD_COMMUNITIES.md
···
- [ ] **Security Checklist:** Pre-launch security audit
### Infrastructure & DNS
-
- [ ] **DNS Wildcard Setup:** Configure `*.communities.coves.social` for community handle resolution
-
- [ ] **Well-Known Endpoint:** Implement `.well-known/atproto-did` handler for `*.communities.coves.social` subdomains
+
- [ ] **DNS Wildcard Setup:** Configure `*.community.coves.social` for community handle resolution
+
- [ ] **Well-Known Endpoint:** Implement `.well-known/atproto-did` handler for `*.community.coves.social` subdomains
---
···
**Status:** ✅ Implemented and tested
**Required Fields:**
-
- `handle` - atProto handle (DNS-resolvable, e.g., `gaming.communities.coves.social`)
+
- `handle` - atProto handle (DNS-resolvable, e.g., `gaming.community.coves.social`)
- `name` - Short community name for !mentions (e.g., `gaming`)
- `createdBy` - DID of user who created community
- `hostedBy` - DID of hosting instance
···
- Follows separation of concerns: protocol layer uses DNS handles, UI layer formats for display
**Implementation:**
-
- Lexicon: `handle` = `gaming.communities.coves.social` (DNS-resolvable)
+
- Lexicon: `handle` = `gaming.community.coves.social` (DNS-resolvable)
- Client derives display: `!${name}@${instance}` from `name` + parsed instance
- Rich text facets can encode community mentions with `!` prefix for UX