Emit composer-focus-channel when guild mode retains activeChannelId after
create/update custom role or channel permission overwrite changes.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when guild mode retains an active channel after
delete-channel or reorder-channels IPC.
Co-authored-by: Cursor <[email protected]>
Phase 525 adds approve-stage-speaker and demote-stage-speaker handlers plus composer-focus-channel after join, request, and approve.
Co-authored-by: Cursor <[email protected]>
Phase 524 restores text channel composer autofocus when voice state changes, matching messaging and reaction handlers.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when stage-attachment completes in guild
mode so file uploads restore composer autofocus like Discord.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when toggle-reaction completes in guild
mode so reaction toggles restore composer autofocus like Discord.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when messaging IPC completes in guild
mode so composer autofocus matches Discord after send and edits.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when jump-to-message resolves in guild
mode so search and pin jumps restore composer autofocus like Discord.
Co-authored-by: Cursor <[email protected]>
Emit composer-focus-channel when join-public-discovery selects a channel
so the message composer receives focus after an explore listing join.
Co-authored-by: Cursor <[email protected]>
After install-bot-token and slash send-message, notify the Pear UI with
structured sidecar messages for confirmation toasts and composer autofocus.
Co-authored-by: Cursor <[email protected]>
When two guilds are merged via drag, assign both servers to the newly created folder in one create-server-folder handler pass.
Co-authored-by: Cursor <[email protected]>
Route mark-notification-read through platform.markNotificationRead.
Send composer-focus-channel after mark-all and open-notification.
Co-authored-by: Cursor <[email protected]>
Send composer-focus-channel IPC after create-thread and create-forum-post
so the message composer autofocuses in the new thread.
Co-authored-by: Cursor <[email protected]>
Return IPC error toasts for no-permission and listen-only join failures
on join-voice, join-voice-listen, and join-stage handlers.
Co-authored-by: Cursor <[email protected]>
Emits parent channelId for batch dismiss and notificationChannelId for
thread-family desktop clearing on thread notifications.
Co-authored-by: Cursor <[email protected]>
After markRead, push mark-notification-read-cleared with guild and channel ids
so desktop can dismiss channel unread desktop notifications.
Co-authored-by: Cursor <[email protected]>
format-settings-deep-link includes guildId in URL; export-diagnostics-jsonl forwards meta to platform writer.
Co-authored-by: Cursor <[email protected]>
Track rolling bytesPerSec in voice-capture trace logs and reset capture
counters when the user leaves voice.
Co-authored-by: Cursor <[email protected]>
Aggregate voice-capture bytes and display-capture frame counts at trace
when PEARCORD_LOG_VOICE_CAPTURE_TRACE=1, and surface request-stage-speak
capacity errors to the UI like join-stage.
Co-authored-by: Cursor <[email protected]>
Handle join-stage like join-voice for full channels, forward no-viewable guild
warnings to diagnostics, and sample voice-capture chunks at trace when enabled.
Co-authored-by: Cursor <[email protected]>
Return UI error toast instead of ipc dispatch failed when voice
channel is at capacity for listen-only joins.
Co-authored-by: Cursor <[email protected]>
Avoid ipc dispatch failed errors after disconnect races and forward
emoji-image-miss as a debug log record for the diagnostics panel.
Co-authored-by: Cursor <[email protected]>
Wire guild settings IPC to platform.updateGuildSettings so the desktop UI can
toggle the server-wide NSFW acknowledgement gate.
Co-authored-by: Cursor <[email protected]>
Support channel mark-read from context menus and pass through upload
local ids on attachment-staged for composer progress UI.
Co-authored-by: Cursor <[email protected]>
Route sidebar drag-reorder to platform.reorderChannelsInParent and
refresh view state after sibling positions update.
Co-authored-by: Cursor <[email protected]>
Phase 144 (v0.8.109): create-guild forwards publicListing to
platform.createGuild so the create-server modal listing checkbox is honored.
Co-authored-by: Cursor <[email protected]>
Wire discovery-explore-opened to platform.markDiscoveryExploreOpened so the
Pear UI can reset the discovery listing baseline whenever Explore opens.
Co-authored-by: Cursor <[email protected]>
Wire guild-scope threads panel parent channel filter through the UI
flow bridge so desktop can limit Active Threads to one parent channel.
Co-authored-by: Cursor <[email protected]>
Wire refresh-search to platform.refreshSearch() and pushState so the
desktop ↻ control can refresh guild/forum mesh hits on demand.
Co-authored-by: Cursor <[email protected]>
After create-server-folder (with optional initialGuildId assign), emit
server-folder-created so the desktop UI can show an undo toast that
deletes the folder and unassigns the guild.
Co-authored-by: Cursor <[email protected]>
device-pair-code IPC now includes qrSvg from pearcord-qr renderQrSvg
for the pearcord://pair URL beside the raw pcdv_ invite.
create-server-folder assigns initialGuildId to the new folder after
create (drag guild onto rail folder button flow).
Add file:../pearcord-qr dependency for Bare smokes and desktop IPC.
Co-authored-by: Cursor <[email protected]>
Add runAuditModalFilterDoubleRefreshScenario to exercise set-audit-log-export-filter
followed by two refresh IPC cycles, asserting user prefs and guild schedule filter
remain stable — matching audit modal close/reopen without a live renderer.
Co-authored-by: Cursor <[email protected]>
Expose dry-run-digest-webhook-relay, refresh-archive-peer-health, and
set-archive-health-prefs sidecar channels for server settings UI.
Co-authored-by: Cursor <[email protected]>
Wire UI button to platform.ensureModDigestGroupDmChannel and emit
mod-digest-group-dm-ready after channel creation.
Co-authored-by: Cursor <[email protected]>
Handle get-automation-health-dashboard and set-automation-digest-notify-prefs
worker messages for server settings automation panel.
Co-authored-by: Cursor <[email protected]>
Bridge UI fetch-automation-digest-snapshot to platform.fetchAutomationDigestSnapshotFromMesh
with timeout and optional targetMemberId; emit body or error events to the renderer.
Co-authored-by: Cursor <[email protected]>
Add set-automation-digest-export-schedule and run-automation-digest-export-now
for scheduled email-style digest bundle exports in server settings.
Co-authored-by: Cursor <[email protected]>