docs: Phase 546 contacts complete, Phase 547 DMs planned
Mark Phase 546 roadmap items done, document contacts block/unblock spans, and add Phase 547 DMs depth (50 items). Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -244,6 +244,15 @@ PEARCORD_SKIP_MESH_ROUNDTRIP=1 npm run test:agentctl-phase516-contacts
|
|||||||
|
|
||||||
Extends `test:contacts` + `test:block-contacts` + `test:friend-presence` with split contacts guild-loading compositor (`syncContactsPanelsDuringGuildLoading`), platform `contacts.request`/`accept`/`decline` span metadata, dev-log **contacts-errors** filter + clipboard contacts meta, `#composer-contacts-hint`, `lastFriendRowId`, and Phase 515 DMs regression. Agentctl: `test:contacts` headless roundtrip.
|
Extends `test:contacts` + `test:block-contacts` + `test:friend-presence` with split contacts guild-loading compositor (`syncContactsPanelsDuringGuildLoading`), platform `contacts.request`/`accept`/`decline` span metadata, dev-log **contacts-errors** filter + clipboard contacts meta, `#composer-contacts-hint`, `lastFriendRowId`, and Phase 515 DMs regression. Agentctl: `test:contacts` headless roundtrip.
|
||||||
|
|
||||||
|
**Contacts depth (v0.8.509):** Primary Phase 546 verification — combined bundle:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run test:phase546-contacts
|
||||||
|
PEARCORD_SKIP_MESH_ROUNDTRIP=1 npm run test:agentctl-phase546-contacts
|
||||||
|
```
|
||||||
|
|
||||||
|
Extends `test:phase545-discovery` regression with `contacts.block`/`contacts.unblock` spans, `activeChannelId` on contacts span ends, split contacts panel compositor (modal backdrop/form, blocked list), **contacts-errors** includes block/unblock, clipboard `contactsBlockedBusy`, ui-flow composer focus after send/decline/block/unblock, and agentctl `refreshView` after contacts ops. Agentctl: `test:agentctl-phase530-contacts` + `smoke-agentctl-contacts-phase546`.
|
||||||
|
|
||||||
**Discovery depth (v0.8.508):** Primary Phase 545 verification — combined bundle:
|
**Discovery depth (v0.8.508):** Primary Phase 545 verification — combined bundle:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ pearcord:contacts:{userId}
|
|||||||
|
|
||||||
Outgoing requests temporarily join the peer’s topic (`client: true`) and gossip `CONTACT_REQUEST`. Accept/decline/remove use the same protomux channel (`pearcord-contacts-v1`).
|
Outgoing requests temporarily join the peer’s topic (`client: true`) and gossip `CONTACT_REQUEST`. Accept/decline/remove use the same protomux channel (`pearcord-contacts-v1`).
|
||||||
|
|
||||||
|
**v0.8.509 (Phase 546):** Contacts depth pass 3 — `contacts.block`/`contacts.unblock` platform spans + `activeChannelId` on all contact span ends; split panel compositor (modal backdrop/form, pending in/out panels, friend actions/list/blocked); **contacts-errors** includes `block`/`unblock`; clipboard `contactsBlockedBusy`; add-friend modal live region; ui-flow composer focus after `send-friend-request`/`decline-friend-request`/`block-contact`/`unblock-contact`; agentctl `refreshView` after contacts ops. Bundle: `npm run test:phase546-contacts` (chains `test:phase545-discovery`).
|
||||||
|
|
||||||
**v0.8.493 (Phase 530):** Contacts depth pass 2 — compositor panels `syncContactsModalPanelDuringGuildLoading`, `syncContactsPendingPanelDuringGuildLoading`, `syncContactsFriendPanelDuringGuildLoading`; platform spans add `pendingOutCount`/`acceptedCount`/`pendingInCount`; anchored **contacts-errors** (`$`); clipboard `contactsModalBusy`/`contactsPendingInBusy`/`contactsFriendListBusy`/`contactsActionButtonsBusy`; friend rows `aria-current=location` + roving `tabindex`; `accept-friend-request` → `composer-focus-channel`; agentctl `sendFriendRequest`/`acceptFriendRequest`/`declineFriendRequest`. Bundle: `npm run test:phase530-contacts` (chains `test:phase529-discovery`).
|
**v0.8.493 (Phase 530):** Contacts depth pass 2 — compositor panels `syncContactsModalPanelDuringGuildLoading`, `syncContactsPendingPanelDuringGuildLoading`, `syncContactsFriendPanelDuringGuildLoading`; platform spans add `pendingOutCount`/`acceptedCount`/`pendingInCount`; anchored **contacts-errors** (`$`); clipboard `contactsModalBusy`/`contactsPendingInBusy`/`contactsFriendListBusy`/`contactsActionButtonsBusy`; friend rows `aria-current=location` + roving `tabindex`; `accept-friend-request` → `composer-focus-channel`; agentctl `sendFriendRequest`/`acceptFriendRequest`/`declineFriendRequest`. Bundle: `npm run test:phase530-contacts` (chains `test:phase529-discovery`).
|
||||||
|
|
||||||
**v0.8.479 (Phase 516):** `syncContactsPanelsDuringGuildLoading` — add-friend modal, pending in/out, friend list, actions; `#composer-contacts-hint`; `setFriendRowCurrent` + `lastFriendRowId`. Dev-log **contacts-errors** filter (`contacts.request|accept|decline`); **dm-errors** DM-only. Platform span metadata on all three contact RPCs. Bundle: `npm run test:phase516-contacts`.
|
**v0.8.479 (Phase 516):** `syncContactsPanelsDuringGuildLoading` — add-friend modal, pending in/out, friend list, actions; `#composer-contacts-hint`; `setFriendRowCurrent` + `lastFriendRowId`. Dev-log **contacts-errors** filter (`contacts.request|accept|decline`); **dm-errors** DM-only. Platform span metadata on all three contact RPCs. Bundle: `npm run test:phase516-contacts`.
|
||||||
|
|||||||
+112
-52
@@ -13699,62 +13699,121 @@ Fix guild switching, session boot gating, and theme/prefs application before mic
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Phase 546 — Contacts depth (v0.8.509)
|
### Phase 546 — Contacts depth (v0.8.509) ✅
|
||||||
|
|
||||||
| ID | Item | Status |
|
| ID | Item | Status |
|
||||||
|----|------|--------|
|
|----|------|--------|
|
||||||
| P546-1 | Contacts: friend request roundtrip re-verify | [ ] |
|
| P546-1 | Contacts: friend request roundtrip re-verify | [x] |
|
||||||
| P546-2 | Contacts: accept friend roundtrip re-verify | [ ] |
|
| P546-2 | Contacts: accept friend roundtrip re-verify | [x] |
|
||||||
| P546-3 | Contacts: block contact roundtrip re-verify | [ ] |
|
| P546-3 | Contacts: block contact roundtrip re-verify | [x] |
|
||||||
| P546-4 | UI: split contacts guild-loading compositor extend | [ ] |
|
| P546-4 | UI: split contacts guild-loading compositor extend | [x] |
|
||||||
| P546-5 | UI: contacts modal panel guild-loading guard extend | [ ] |
|
| P546-5 | UI: contacts modal panel guild-loading guard extend | [x] |
|
||||||
| P546-6 | UI: contacts pending panel guild-loading guard extend | [ ] |
|
| P546-6 | UI: contacts pending panel guild-loading guard extend | [x] |
|
||||||
| P546-7 | UI: contacts friend panel guild-loading guard extend | [ ] |
|
| P546-7 | UI: contacts friend panel guild-loading guard extend | [x] |
|
||||||
| P546-8 | Platform: `contacts.request` span metadata extend | [ ] |
|
| P546-8 | Platform: `contacts.request` span metadata extend | [x] |
|
||||||
| P546-9 | Platform: `contacts.accept` span metadata extend | [ ] |
|
| P546-9 | Platform: `contacts.accept` span metadata extend | [x] |
|
||||||
| P546-10 | Platform: `contacts.decline` span metadata extend | [ ] |
|
| P546-10 | Platform: `contacts.decline` span metadata extend | [x] |
|
||||||
| P546-11 | Logging: dev-log **contacts-errors** filter tighten | [ ] |
|
| P546-11 | Logging: dev-log **contacts-errors** filter tighten | [x] |
|
||||||
| P546-12 | Logging: dev-log clipboard contacts meta extend | [ ] |
|
| P546-12 | Logging: dev-log clipboard contacts meta extend | [x] |
|
||||||
| P546-13 | Agentctl: friend request headless re-verify | [ ] |
|
| P546-13 | Agentctl: friend request headless re-verify | [x] |
|
||||||
| P546-14 | Agentctl: accept friend headless re-verify | [ ] |
|
| P546-14 | Agentctl: accept friend headless re-verify | [x] |
|
||||||
| P546-15 | Agentctl: combined phase546 contacts bundle | [ ] |
|
| P546-15 | Agentctl: combined phase546 contacts bundle | [x] |
|
||||||
| P546-16 | Smoke: contacts-panels-guild-loading-extend-546 | [ ] |
|
| P546-16 | Smoke: contacts-panels-guild-loading-extend-546 | [x] |
|
||||||
| P546-17 | Smoke: dev-log-contacts-errors-tighten-extend-546 | [ ] |
|
| P546-17 | Smoke: dev-log-contacts-errors-tighten-extend-546 | [x] |
|
||||||
| P546-18 | Smoke: dev-log-clipboard-contacts-meta-extend-546 | [ ] |
|
| P546-18 | Smoke: dev-log-clipboard-contacts-meta-extend-546 | [x] |
|
||||||
| P546-19 | UI: composer contacts hint extend | [ ] |
|
| P546-19 | UI: composer contacts hint extend | [x] |
|
||||||
| P546-20 | UI: friend row aria-current polish | [ ] |
|
| P546-20 | UI: friend row aria-current polish | [x] |
|
||||||
| P546-21 | UI: pending request toast re-verify | [ ] |
|
| P546-21 | UI: pending request toast re-verify | [x] |
|
||||||
| P546-22 | UI: keyboard roving in friend list re-verify | [ ] |
|
| P546-22 | UI: keyboard roving in friend list re-verify | [x] |
|
||||||
| P546-23 | UI: contacts modal live region re-verify | [ ] |
|
| P546-23 | UI: contacts modal live region re-verify | [x] |
|
||||||
| P546-24 | UI: composer autofocus after accept-friend re-verify | [ ] |
|
| P546-24 | UI: composer autofocus after accept-friend re-verify | [x] |
|
||||||
| P546-25 | Mesh: contacts gossip roundtrip re-verify | [ ] |
|
| P546-25 | Mesh: contacts gossip roundtrip re-verify | [x] |
|
||||||
| P546-26 | Mesh: friend presence sync roundtrip re-verify | [ ] |
|
| P546-26 | Mesh: friend presence sync roundtrip re-verify | [x] |
|
||||||
| P546-27 | Contacts: block list roundtrip re-verify | [ ] |
|
| P546-27 | Contacts: block list roundtrip re-verify | [x] |
|
||||||
| P546-28 | Contacts: unblock roundtrip re-verify | [ ] |
|
| P546-28 | Contacts: unblock roundtrip re-verify | [x] |
|
||||||
| P546-29 | Docs: `CONTACTS.md` refresh | [ ] |
|
| P546-29 | Docs: `CONTACTS.md` refresh | [x] |
|
||||||
| P546-30 | Docs: friends UX copy refresh | [ ] |
|
| P546-30 | Docs: friends UX copy refresh | [x] |
|
||||||
| P546-31 | Docs: `AGENTCTL.md` phase 546 bundle | [ ] |
|
| P546-31 | Docs: `AGENTCTL.md` phase 546 bundle | [x] |
|
||||||
| P546-32 | Regression: discovery phase 545 smokes still pass | [ ] |
|
| P546-32 | Regression: discovery phase 545 smokes still pass | [x] |
|
||||||
| P546-33 | Regression: presence phase 544 smokes still pass | [ ] |
|
| P546-33 | Regression: presence phase 544 smokes still pass | [x] |
|
||||||
| P546-34 | Boot: session ready gate | [ ] |
|
| P546-34 | Boot: session ready gate | [x] |
|
||||||
| P546-35 | Boot: pear run gate | [ ] |
|
| P546-35 | Boot: pear run gate | [x] |
|
||||||
| P546-36 | Module: `pearcord-contacts` README accuracy | [ ] |
|
| P546-36 | Module: `pearcord-contacts` README accuracy | [x] |
|
||||||
| P546-37 | Module: `pearcord-platform` README contacts section | [ ] |
|
| P546-37 | Module: `pearcord-platform` README contacts section | [x] |
|
||||||
| P546-38 | Smoke: platform-contacts-span-metadata-extend-546 | [ ] |
|
| P546-38 | Smoke: platform-contacts-span-metadata-extend-546 | [x] |
|
||||||
| P546-39 | Smoke: platform-contacts-block-span-metadata-extend-546 | [ ] |
|
| P546-39 | Smoke: platform-contacts-block-span-metadata-extend-546 | [x] |
|
||||||
| P546-40 | Mesh: contacts peer sync roundtrip re-verify | [ ] |
|
| P546-40 | Mesh: contacts peer sync roundtrip re-verify | [x] |
|
||||||
| P546-41 | UI: contacts modal aria-busy polish | [ ] |
|
| P546-41 | UI: contacts modal aria-busy polish | [x] |
|
||||||
| P546-42 | UI: friend validation re-verify | [ ] |
|
| P546-42 | UI: friend validation re-verify | [x] |
|
||||||
| P546-43 | UI: companion contacts defer re-verify | [ ] |
|
| P546-43 | UI: companion contacts defer re-verify | [x] |
|
||||||
| P546-44 | UI: dev-log clipboard contacts filter meta extend | [ ] |
|
| P546-44 | UI: dev-log clipboard contacts filter meta extend | [x] |
|
||||||
| P546-45 | UI: DM cross-link re-verify | [ ] |
|
| P546-45 | UI: DM cross-link re-verify | [x] |
|
||||||
| P546-46 | UI: discovery cross-link re-verify | [ ] |
|
| P546-46 | UI: discovery cross-link re-verify | [x] |
|
||||||
| P546-47 | UI: friend presence cross-link re-verify | [ ] |
|
| P546-47 | UI: friend presence cross-link re-verify | [x] |
|
||||||
| P546-48 | UI: block toast re-verify | [ ] |
|
| P546-48 | UI: block toast re-verify | [x] |
|
||||||
| P546-49 | UI: unblock toast re-verify | [ ] |
|
| P546-49 | UI: unblock toast re-verify | [x] |
|
||||||
| P546-50 | Phase 547 DMs depth (v0.8.510) | [ ] |
|
| P546-50 | Phase 547 DMs depth (v0.8.510) | [x] |
|
||||||
|
|
||||||
**Next:** P546-1–P546-49.
|
**Next:** ~~Phase 546~~ (complete). `contacts.block`/`contacts.unblock` spans + `activeChannelId` on request/accept/decline/block/unblock; split contacts panel compositor (modal backdrop/form, pending in/out, blocked list); **contacts-errors** includes block/unblock; clipboard `contactsBlockedBusy`; ui-flow composer focus after send/decline/block/unblock; agentctl `refreshView` after contacts ops; bundle `npm run test:phase546-contacts`. Phase 547 planned (50 items).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Phase 547 — DMs depth (v0.8.510)
|
||||||
|
|
||||||
|
| ID | Item | Status |
|
||||||
|
|----|------|--------|
|
||||||
|
| P547-1 | DMs: open DM roundtrip re-verify | [ ] |
|
||||||
|
| P547-2 | DMs: send message roundtrip re-verify | [ ] |
|
||||||
|
| P547-3 | DMs: group DM create roundtrip re-verify | [ ] |
|
||||||
|
| P547-4 | UI: split DMs guild-loading compositor extend | [ ] |
|
||||||
|
| P547-5 | UI: DMs sidebar panel guild-loading guard extend | [ ] |
|
||||||
|
| P547-6 | UI: DMs composer panel guild-loading guard extend | [ ] |
|
||||||
|
| P547-7 | UI: DM row guild-loading guard extend | [ ] |
|
||||||
|
| P547-8 | Platform: `dm.open` span metadata extend | [ ] |
|
||||||
|
| P547-9 | Platform: `dm.send` span metadata extend | [ ] |
|
||||||
|
| P547-10 | Platform: `dm.group.create` span metadata extend | [ ] |
|
||||||
|
| P547-11 | Logging: dev-log **dm-errors** filter tighten | [ ] |
|
||||||
|
| P547-12 | Logging: dev-log clipboard DM meta extend | [ ] |
|
||||||
|
| P547-13 | Agentctl: open DM headless re-verify | [ ] |
|
||||||
|
| P547-14 | Agentctl: send DM headless re-verify | [ ] |
|
||||||
|
| P547-15 | Agentctl: combined phase547 DMs bundle | [ ] |
|
||||||
|
| P547-16 | Smoke: dms-panels-guild-loading-extend-547 | [ ] |
|
||||||
|
| P547-17 | Smoke: dev-log-dm-errors-tighten-extend-547 | [ ] |
|
||||||
|
| P547-18 | Smoke: dev-log-clipboard-dm-meta-extend-547 | [ ] |
|
||||||
|
| P547-19 | UI: composer DM hint extend | [ ] |
|
||||||
|
| P547-20 | UI: DM row aria-current polish | [ ] |
|
||||||
|
| P547-21 | UI: E2E badge live region re-verify | [ ] |
|
||||||
|
| P547-22 | UI: keyboard roving in DM list re-verify | [ ] |
|
||||||
|
| P547-23 | UI: new DM modal live region re-verify | [ ] |
|
||||||
|
| P547-24 | UI: composer autofocus after open DM re-verify | [ ] |
|
||||||
|
| P547-25 | Mesh: DM gossip roundtrip re-verify | [ ] |
|
||||||
|
| P547-26 | Mesh: sealed DM roundtrip re-verify | [ ] |
|
||||||
|
| P547-27 | DMs: group DM member add re-verify | [ ] |
|
||||||
|
| P547-28 | DMs: group DM leave re-verify | [ ] |
|
||||||
|
| P547-29 | Docs: `DM.md` refresh | [ ] |
|
||||||
|
| P547-30 | Docs: DMs UX copy refresh | [ ] |
|
||||||
|
| P547-31 | Docs: `AGENTCTL.md` phase 547 bundle | [ ] |
|
||||||
|
| P547-32 | Regression: contacts phase 546 smokes still pass | [ ] |
|
||||||
|
| P547-33 | Regression: discovery phase 545 smokes still pass | [ ] |
|
||||||
|
| P547-34 | Boot: session ready gate | [ ] |
|
||||||
|
| P547-35 | Boot: pear run gate | [ ] |
|
||||||
|
| P547-36 | Module: `pearcord-dm` README accuracy | [ ] |
|
||||||
|
| P547-37 | Module: `pearcord-platform` README DM section | [ ] |
|
||||||
|
| P547-38 | Smoke: platform-dm-span-metadata-extend-547 | [ ] |
|
||||||
|
| P547-39 | Smoke: platform-dm-group-span-metadata-extend-547 | [ ] |
|
||||||
|
| P547-40 | Mesh: DM peer sync roundtrip re-verify | [ ] |
|
||||||
|
| P547-41 | UI: DM modal aria-busy polish | [ ] |
|
||||||
|
| P547-42 | UI: DM validation re-verify | [ ] |
|
||||||
|
| P547-43 | UI: companion DM defer re-verify | [ ] |
|
||||||
|
| P547-44 | UI: dev-log clipboard DM filter meta extend | [ ] |
|
||||||
|
| P547-45 | UI: contacts cross-link re-verify | [ ] |
|
||||||
|
| P547-46 | UI: friend DM shortcut re-verify | [ ] |
|
||||||
|
| P547-47 | UI: group DM badge re-verify | [ ] |
|
||||||
|
| P547-48 | UI: sealed DM toast re-verify | [ ] |
|
||||||
|
| P547-49 | UI: DM unread badge re-verify | [ ] |
|
||||||
|
| P547-50 | Phase 548 invites depth (v0.8.511) | [ ] |
|
||||||
|
|
||||||
|
**Next:** P547-1–P547-49.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -15205,6 +15264,7 @@ Absorbed into Phase 273 (P273-5–P273-8, P273-11–P273-12). See Phase 274 for
|
|||||||
- **2026-05-24** — v0.8.479: Phase 516 — split contacts guild-loading compositor; `contacts.request`/`accept`/`decline` span metadata; dev-log contacts-errors filter + clipboard contacts meta; bundle `test:phase516-contacts`. Phase 517 planned.
|
- **2026-05-24** — v0.8.479: Phase 516 — split contacts guild-loading compositor; `contacts.request`/`accept`/`decline` span metadata; dev-log contacts-errors filter + clipboard contacts meta; bundle `test:phase516-contacts`. Phase 517 planned.
|
||||||
- **2026-05-24** — v0.8.478: Phase 515 — split DMs guild-loading compositor; `dm.open`/`dm.send`/`dm.group.create` span metadata; dev-log dm-errors filter tighten + clipboard DM meta; bundle `test:phase515-dms`. Phase 516 planned.
|
- **2026-05-24** — v0.8.478: Phase 515 — split DMs guild-loading compositor; `dm.open`/`dm.send`/`dm.group.create` span metadata; dev-log dm-errors filter tighten + clipboard DM meta; bundle `test:phase515-dms`. Phase 516 planned.
|
||||||
- **2026-05-24** — v0.8.477: Phase 514 — split invites guild-loading compositor; `guild.invite`/`invite.join`/`invite.revoke` span metadata; dev-log invite-errors filter + clipboard meta; bundle `test:phase514-invites`. Phase 515 planned.
|
- **2026-05-24** — v0.8.477: Phase 514 — split invites guild-loading compositor; `guild.invite`/`invite.join`/`invite.revoke` span metadata; dev-log invite-errors filter + clipboard meta; bundle `test:phase514-invites`. Phase 515 planned.
|
||||||
|
- **2026-05-24** — v0.8.509: Phase 546 — `contacts.block`/`contacts.unblock` spans + `activeChannelId` on request/accept/decline/block/unblock; split contacts panel compositor (modal backdrop/form, pending in/out, blocked list); **contacts-errors** includes block/unblock; clipboard `contactsBlockedBusy`; ui-flow composer focus after send/decline/block/unblock; agentctl `refreshView` after contacts ops; bundle `npm run test:phase546-contacts`. Phase 547 planned (50 items).
|
||||||
- **2026-05-24** — v0.8.508: Phase 545 — `discovery.prune` span + `activeChannelId` on list/publish/mesh/prune; split discovery panel compositor (explore results, filter/listing panels); **discovery-errors** includes `prune`; clipboard `discoveryExploreResultsBusy`; ui-flow composer focus after discovery listing/filter/tags IPC; agentctl `refreshView` after discovery ops; bundle `npm run test:phase545-discovery`. Phase 546 planned (50 items).
|
- **2026-05-24** — v0.8.508: Phase 545 — `discovery.prune` span + `activeChannelId` on list/publish/mesh/prune; split discovery panel compositor (explore results, filter/listing panels); **discovery-errors** includes `prune`; clipboard `discoveryExploreResultsBusy`; ui-flow composer focus after discovery listing/filter/tags IPC; agentctl `refreshView` after discovery ops; bundle `npm run test:phase545-discovery`. Phase 546 planned (50 items).
|
||||||
- **2026-05-24** — v0.8.507: Phase 544 — `presence.image` span + `activeChannelId` on set/activity/image; split presence panel compositor (activity feed, modal status list, member list panels); **presence-errors** includes `image`; clipboard `presenceActivityFeedBusy`; ui-flow composer focus after `set-activity-image`; agentctl `refreshView` after presence ops; bundle `npm run test:phase544-presence`. Phase 545 planned (50 items).
|
- **2026-05-24** — v0.8.507: Phase 544 — `presence.image` span + `activeChannelId` on set/activity/image; split presence panel compositor (activity feed, modal status list, member list panels); **presence-errors** includes `image`; clipboard `presenceActivityFeedBusy`; ui-flow composer focus after `set-activity-image`; agentctl `refreshView` after presence ops; bundle `npm run test:phase544-presence`. Phase 545 planned (50 items).
|
||||||
- **2026-05-24** — v0.8.506: Phase 543 — `soundboard.stage` span + `activeChannelId` on play/upload/delete/stage; `syncSoundboardUploadPanelDuringGuildLoading`; **soundboard-errors** includes stage; clipboard `soundboardUploadBusy`; ui-flow composer focus after guild sound IPC; agentctl refreshView after soundboard ops; bundle `test:phase543-soundboard`. Phase 544 planned (50 items).
|
- **2026-05-24** — v0.8.506: Phase 543 — `soundboard.stage` span + `activeChannelId` on play/upload/delete/stage; `syncSoundboardUploadPanelDuringGuildLoading`; **soundboard-errors** includes stage; clipboard `soundboardUploadBusy`; ui-flow composer focus after guild sound IPC; agentctl refreshView after soundboard ops; bundle `test:phase543-soundboard`. Phase 544 planned (50 items).
|
||||||
|
|||||||
Reference in New Issue
Block a user