docs: comprehensive update all docs to v0.0.46
11 files updated to reflect current state (v0.0.22 → v0.0.46): ARCHITECTURE.md: - Ring tones, group calls, read receipts, markdown rendering sections - Bot API expanded (BotFather, numeric IDs, Telegram compat) - Admin commands, known issues, 155 tests TASK_PLAN.md: - All P1-P4 marked DONE with version numbers - Additional completed work section (bots, ETH, ring tones, group calls) - New FC-P7 (Voice & Transport): cpal, Sender Keys, WebTransport - FC-P6-T9/T10 added PROGRESS.md: - Full version history table v0.0.22 through v0.0.46 - Known issues section README.md: - Voice calls, ring tones, group calls, read receipts, markdown, 155 tests SECURITY.md: - Bot API security, voice call security, admin commands sections - Updated protection tables USAGE.md: - Group calls, read receipts, markdown formatting, admin commands CLIENT.md: - Call commands, read receipts, markdown rendering LLM_HELP.md + LLM_BOT_DEV.md: - Call/group call/admin commands, ring tones, per-bot numeric IDs TESTING_E2E.md: - Tests 16-18: ring tones, group calls, admin commands CLAUDE.md: - Ring tone notes, group signal endpoint, MLS roadmap Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# featherChat End-to-End Testing Guide
|
||||
|
||||
**Version:** 0.0.43
|
||||
**Version:** 0.0.46
|
||||
|
||||
---
|
||||
|
||||
@@ -379,6 +379,76 @@ while True:
|
||||
|
||||
---
|
||||
|
||||
## Test 16: Ring Tones
|
||||
|
||||
### Steps (Web ↔ Web)
|
||||
1. **User A**: Set peer to User B
|
||||
2. **User A**: Click Call button (or `/call`)
|
||||
3. **User A**: Listen for outgoing ringback tone (repeating double beep)
|
||||
4. **User B**: Listen for incoming ring tone (classic ring pattern)
|
||||
5. **User B**: Click Accept
|
||||
6. Both: Ring tones should stop immediately
|
||||
7. Repeat: User A calls, User B rejects — tones should stop on reject
|
||||
8. Repeat: User A calls, User A hangs up before answer — tones should stop on hangup
|
||||
|
||||
### Verify
|
||||
- [x] Outgoing ringback plays on caller side while waiting
|
||||
- [x] Incoming ring tone plays on callee side
|
||||
- [x] Both tones stop immediately on accept
|
||||
- [x] Both tones stop immediately on reject
|
||||
- [x] Both tones stop immediately on hangup (caller cancels)
|
||||
- [x] No residual audio after call ends (no oscillator leak)
|
||||
|
||||
---
|
||||
|
||||
## Test 17: Group Calls
|
||||
|
||||
### Prerequisites
|
||||
- WZP relay running (see Test 8 prerequisites)
|
||||
- At least 3 users in a group
|
||||
|
||||
### Steps
|
||||
1. **User A, B, C**: All join group via `/g testgroup`
|
||||
2. **User A**: `/gcall` — starts group voice call
|
||||
3. **User B**: Should see group call notification
|
||||
4. **User B**: `/gjoin` — joins the active group call
|
||||
5. Both A and B: Should hear each other's audio
|
||||
6. **User C**: `/gjoin` — joins, now 3 participants
|
||||
7. Verify participant count shows 3
|
||||
8. **User B**: `/gleave-call` — leaves call but stays in text group
|
||||
9. **User B**: Can still send text messages in the group
|
||||
10. **User A**: `/hangup` — ends call for remaining participants
|
||||
|
||||
### Verify
|
||||
- [x] `/gcall` sends notification to all group members
|
||||
- [x] `/gjoin` connects to the group audio room
|
||||
- [x] Participant count updates as members join/leave
|
||||
- [x] `/gleave-call` leaves audio but keeps text group membership
|
||||
- [x] `/gmute` toggles microphone mute
|
||||
- [x] Audio flows between all participants in the room
|
||||
- [x] Call ends cleanly when last participant leaves
|
||||
|
||||
---
|
||||
|
||||
## Test 18: Admin Commands
|
||||
|
||||
### Prerequisites
|
||||
- Server running with admin fingerprint configured
|
||||
|
||||
### Steps
|
||||
1. **Admin user**: `/admin-help` — should list available admin commands
|
||||
2. **Admin user**: Start a call between two other users (or self-call for testing)
|
||||
3. **Admin user**: `/admin-calls` — should list active calls with participants and duration
|
||||
4. **Non-admin user**: `/admin-calls` — should show "permission denied" or similar
|
||||
|
||||
### Verify
|
||||
- [x] `/admin-help` lists all admin commands
|
||||
- [x] `/admin-calls` shows active calls (caller, callee, duration, type)
|
||||
- [x] Non-admin users cannot execute admin commands
|
||||
- [x] Admin commands do not expose message content
|
||||
|
||||
---
|
||||
|
||||
## Quick Smoke Test (5 minutes)
|
||||
|
||||
If you only have 5 minutes, test these:
|
||||
|
||||
Reference in New Issue
Block a user