docs: Phase 198 GUI sprint IV and v0.8.162 release notes

Document member actions, reaction tabs, channel reorder IPC, pins modal,
and plan Phase 199 in the platform roadmap.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-05-22 21:03:22 -04:00
co-authored by Cursor
parent 0ef36e0e5a
commit f095896880
8 changed files with 53 additions and 14 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
# Pearcord architecture
**Current release:** v0.8.161 (desktop app `apps/pearcord`). Phase history and checklists live in [PLATFORM_ROADMAP.md](./PLATFORM_ROADMAP.md). Gap vs a centralized chat product is tracked in [PEARCORD_PARITY.md](./PEARCORD_PARITY.md).
**Current release:** v0.8.162 (desktop app `apps/pearcord`). Phase history and checklists live in [PLATFORM_ROADMAP.md](./PLATFORM_ROADMAP.md). Gap vs a centralized chat product is tracked in [PEARCORD_PARITY.md](./PEARCORD_PARITY.md).
Pearcord is a **100% peer-to-peer** community chat client on [Pear](https://pear.holepunch.to) / Bare. There is no Pearcord-operated message server: guilds, DMs, discovery listings, and bot events replicate over **Hyperswarm** topics with **protomux** framing.
+5 -1
View File
@@ -508,7 +508,11 @@ Pearcord validates itself without manual QA.
| `npm run test:message-reaction-picker` | Message reaction picker (`MESSAGE_REACTION_PICKER_SMOKE_OK`) |
| `npm run test:category-unread-dot` | Category unread dot (`CATEGORY_UNREAD_DOT_SMOKE_OK`) |
| `npm run test:pinned-bar-layout` | Pinned bar layout (`PINNED_BAR_LAYOUT_SMOKE_OK`) |
| `npm run test:boot` | `pear run` pre-run (`BOOT_OK`) then Phase 124197 smokes + `test:companion-boot` |
| `npm run test:member-profile-actions` | Member popover actions (`MEMBER_PROFILE_ACTIONS_SMOKE_OK`) |
| `npm run test:reaction-picker-guild-tab` | Reaction picker guild tab (`REACTION_PICKER_GUILD_TAB_SMOKE_OK`) |
| `npm run test:channel-drag-reorder` | Channel drag reorder (`CHANNEL_DRAG_REORDER_SMOKE_OK`) |
| `npm run test:pinned-messages-modal` | Pinned messages modal (`PINNED_MESSAGES_MODAL_SMOKE_OK`) |
| `npm run test:boot` | `pear run` pre-run (`BOOT_OK`) then Phase 124198 smokes + `test:companion-boot` |
| `npm run test:server-folder-prefs-mesh` | Live folder prefs mesh (optional; run manually — can exceed 150s on DHT) |
| `npm run test:profile` | Profile update + persist (`PROFILE_SMOKE_OK`) |
| `npm run test:e2e` | Full journey host+guest (`E2E_SMOKE_OK`) |
+1 -1
View File
@@ -1,6 +1,6 @@
# Pearcord documentation index
All project documentation lives in **`pearcord-docs`** (`/Users/raven/dev/pearcord/docs/`). **Release:** v0.8.161.
All project documentation lives in **`pearcord-docs`** (`/Users/raven/dev/pearcord/docs/`). **Release:** v0.8.162.
| Start here | Document |
|------------|----------|
+1
View File
@@ -61,6 +61,7 @@ Smokes: `test:guild-channel-pick-order` (IPC + platform source), `test:guild-unr
| `mark-notification-read` | `notificationId` | Mark one inbox row read |
| `create-category` | `name` | Add category folder + gossip |
| `create-channel` | `name`, `channelType?`, `parentId?` | Add text/voice channel + gossip |
| `reorder-channels` | `parentId?`, `channelIds[]` | Reorder sibling channels (same `parentId`); gossips `CHANNEL_UPDATE` per moved row |
| `create-thread` | `messageId`, `name?` | Thread channel under active text channel |
| `archive-thread` | `threadId`, `archived?` | Archive / unarchive thread |
| `set-threads-panel-archived` | `includeArchived` | Show archived threads in panel |
+13 -4
View File
@@ -4,14 +4,23 @@ Gap analysis between **Pearcord** (P2P Pear app) and a typical **centralized cha
> This is the only doc that compares against an external reference product. All other docs use Pearcord naming only.
## Summary (v0.8.162) — GUI focus
| Area | Reference product | Pearcord | Gap |
|------|-------------------|----------|-----|
| Member list | Profile + actions | Popover with Message/DM + mutual server stub | Real multi-guild mutual list |
| Reactions | Full emoji picker | Quick + Server tabs on toolbar react | Skin tones / search |
| Channels | Drag reorder | Same-parent drag with P2P `CHANNEL_UPDATE` gossip | Category reorder |
| Pins | Pins modal | Full list from bar title / “+N more” | Unpin from modal |
## Summary (v0.8.161) — GUI focus
| Area | Reference product | Pearcord | Gap |
|------|-------------------|----------|-----|
| Member list | Profile card on click | Popover with banner, status, role, bio | DM/message actions (P198) |
| Reactions | Emoji picker on hover | Toolbar grid from `reactionGlyphs` | Guild emoji tab (P198) |
| Channels | Category unread rollup | Unread/mention dot on category header | Drag reorder (P198) |
| Pins | Pinned strip with previews | Count + author + text rows | Full pins modal (P198) |
| Member list | Profile card on click | Popover with banner, status, role, bio | DM/message actions (done P198) |
| Reactions | Emoji picker on hover | Toolbar grid from `reactionGlyphs` | Guild emoji tab (done P198) |
| Channels | Category unread rollup | Unread/mention dot on category header | Drag reorder (done P198) |
| Pins | Pinned strip with previews | Count + author + text rows | Full pins modal (done P198) |
## Summary (v0.8.160) — GUI focus
+20 -6
View File
@@ -1102,16 +1102,29 @@ When completing work, change `[ ]` → `[x]` and add a one-line note under **Cha
---
### Phase 198 — Discord-like GUI sprint IV (planned)
### Phase 198 — Discord-like GUI sprint IV (v0.8.162)
| ID | Item | Status |
|----|------|--------|
| P198-1 | Members: popover DM/message actions + mutual servers stub | [ ] |
| P198-2 | Chat: emoji picker tab in reaction popover (guild emojis) | [ ] |
| P198-3 | Channels: drag-reorder channels within category (visual) | [ ] |
| P198-4 | Chat: pinned messages modal / full list view | [ ] |
| P198-1 | Members: popover DM/message actions + mutual servers stub | [x] |
| P198-2 | Chat: emoji picker tab in reaction popover (guild emojis) | [x] |
| P198-3 | Channels: drag-reorder channels within category (P2P gossip) | [x] |
| P198-4 | Chat: pinned messages modal / full list view | [x] |
**Next:** Popover actions · guild emoji reactions · channel reorder · pins modal.
**Next:** ~~Popover actions · guild emoji reactions · channel reorder · pins modal~~ (Phase 198).
---
### Phase 199 — Discord-like GUI sprint V (planned)
| ID | Item | Status |
|----|------|--------|
| P199-1 | Chat: right-click message context menu (Discord-style) | [ ] |
| P199-2 | Channels: category drag-reorder + collapse all | [ ] |
| P199-3 | Members: role color chips + online grouping headers | [ ] |
| P199-4 | Chat: slowmode / typing indicator in channel header | [ ] |
**Next:** Context menu · category reorder · member groups · header indicators.
---
@@ -2557,6 +2570,7 @@ Micro a11y/guild smokes deferred while GUI sprint is prioritized. See Phase 195
### Changelog
- **2026-05-22** — v0.8.162: Phase 198 GUI — member popover actions, reaction picker guild tab, channel drag reorder, pinned messages modal (`test:member-profile-actions`, `test:reaction-picker-guild-tab`, `test:channel-drag-reorder`, `test:pinned-messages-modal`). Phase 199 planned.
- **2026-05-22** — v0.8.161: Phase 197 GUI — member profile popover, message reaction picker, category unread dots, Discord-style pinned strip (`test:member-profile-popover`, `test:message-reaction-picker`, `test:category-unread-dot`, `test:pinned-bar-layout`). Phase 198 planned.
- **2026-05-22** — v0.8.160: Phase 196 GUI — message toolbar, unread channel bar, user panel voice controls, dynamic empty state (`test:message-toolbar`, `test:channel-unread-styling`, `test:user-panel-voice-controls`, `test:messages-empty-channel`). Phase 197 planned.
- **2026-05-22** — v0.8.159: Phase 195 GUI — message grouping, date dividers, members pane toggle, member avatars (`test:message-grouping`, `test:members-pane-toggle`). Phase 196 planned; Phase 194 deferred.
+1 -1
View File
@@ -2,7 +2,7 @@
Documentation for **[Pearcord](https://git.ssh.surf/pearcord)** — a 100% peer-to-peer community chat app on [Pear](https://pear.holepunch.to). No central message servers.
**Current release:** v0.8.161 (desktop app `apps/pearcord`).
**Current release:** v0.8.162 (desktop app `apps/pearcord`).
---
+11
View File
@@ -78,6 +78,17 @@ Smokes: `npm run test:message-toolbar`, `npm run test:channel-unread-styling`, `
Smokes: `npm run test:member-profile-popover`, `npm run test:message-reaction-picker`, `npm run test:category-unread-dot`, `npm run test:pinned-bar-layout`.
## Desktop GUI (v0.8.162)
| Feature | Behavior |
|---------|----------|
| Member actions | Message (@mention composer) and Send DM from profile popover; mutual server stub |
| Reaction tabs | Quick unicode grid + Server tab for guild emojis |
| Channel reorder | Drag channels within same category/parent (`reorder-channels` IPC + mesh gossip) |
| Pins modal | Click pinned bar title or “+N more” for full scrollable list |
Smokes: `npm run test:member-profile-actions`, `npm run test:reaction-picker-guild-tab`, `npm run test:channel-drag-reorder`, `npm run test:pinned-messages-modal`.
## Related
- [ONBOARDING.md](./ONBOARDING.md) — user-facing steps