Close Phase 374 and open Phase 375 forum inbox roadmap (v0.8.337).
Document channel-scope search mesh refresh, open-notification thread family, and verification smokes; add 20-item Phase 375 plan. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -98,6 +98,8 @@ Inbox rows include `messageId` for jump navigation. See [MESSAGE_DEEP_LINKS.md](
|
||||
| `markAllNotificationsRead()` | Clear inbox unread |
|
||||
| `markChannelRead()` | Also clears inbox rows for channel and zeros `MENTION_ALERTS` for the channel |
|
||||
|
||||
**v0.8.336:** **Open notification** on text channels dismisses thread-family desktop for all threads under the parent channel (`open-notification` + `mark-notification-read-cleared` IPC, Phase 374 re-verified). Smokes: `npm run test:mark-notification-read-channel-thread-family-desktop`, `npm run test:agentctl-thread-inbox-mark-notification-read`.
|
||||
|
||||
**v0.8.334:** **Navigate to message** on forum channels dismisses thread-family desktop for all forum post threads (`navigateToMessage` forum branch, Phase 372 re-verified). Smokes: `npm run test:navigate-forum-thread-family-desktop`, `npm run test:agentctl-thread-inbox-mark-channel-read`.
|
||||
|
||||
**v0.8.332:** **Mark notification read** on forum channels dismisses thread-family desktop for all forum post threads (`mark-notification-read-cleared` IPC, re-verified). Smokes: `npm run test:mark-notification-read-forum-thread-family-desktop`, `npm run test:agentctl-thread-inbox-mark-notification-read`.
|
||||
|
||||
+52
-22
@@ -4985,28 +4985,57 @@ Fix guild switching, session boot gating, and theme/prefs application before mic
|
||||
|
||||
| ID | Item | Status |
|
||||
|----|------|--------|
|
||||
| P374-1 | Search: guild sidecar stale age when channel scope cached (verify) | [ ] |
|
||||
| P374-2 | Search mesh refresh: remove `aria-disabled` from refresh button while idle (verify) | [ ] |
|
||||
| P374-3 | Platform: `refreshSearch` mesh-on logs scope on cache hit at debug (verify) | [ ] |
|
||||
| P374-4 | Thread panel: active muted-only combined aria (verify) | [ ] |
|
||||
| P374-5 | Notifications: open-notification clears channel thread family desktop (verify) | [ ] |
|
||||
| P374-6 | Composer: mention-everyone thread toast cites parent (verify) | [ ] |
|
||||
| P374-7 | Role editor: custom-role skip hash smoke (verify) | [ ] |
|
||||
| P374-8 | Voice: remote speaking pill name aria bundle smoke (verify) | [ ] |
|
||||
| P374-9 | Logging: Clipboard JSONL `searchCached` bool smoke (verify) | [ ] |
|
||||
| P374-10 | Diagnostics filter: **IPC errors** bundle smoke (verify) | [ ] |
|
||||
| P374-11 | Agentctl: forum search mesh-off then mesh-on refresh (reuse) | [ ] |
|
||||
| P374-12 | Agentctl: thread inbox mark-notification-read roundtrip (reuse) | [ ] |
|
||||
| P374-13 | Companion: compose panel verify disabled while guild loading | [ ] |
|
||||
| P374-14 | Smoke: `test:mark-notification-read-channel-thread-family-desktop` | [ ] |
|
||||
| P374-15 | Smoke: `test:search-mesh-refresh-btn-no-disabled-idle` | [ ] |
|
||||
| P374-16 | Smoke: `test:platform-refresh-mesh-on-cache-hit` | [ ] |
|
||||
| P374-17 | Docs: `SEARCH.md` mesh refresh aria-disabled idle | [ ] |
|
||||
| P374-18 | Docs: `NOTIFICATIONS.md` open-notification channel family | [ ] |
|
||||
| P374-19 | Boot: chain Phase 373 smokes | [ ] |
|
||||
| P374-20 | Phase 375 forum inbox & mesh depth (v0.8.337) | [ ] |
|
||||
| P374-1 | Search: guild sidecar stale age when channel scope cached (verify) | [x] |
|
||||
| P374-2 | Search mesh refresh: remove `aria-disabled` from refresh button while idle (verify) | [x] |
|
||||
| P374-3 | Platform: `refreshSearch` mesh-on logs scope on cache hit at debug (verify) | [x] |
|
||||
| P374-4 | Thread panel: active muted-only combined aria (verify) | [x] |
|
||||
| P374-5 | Notifications: open-notification clears channel thread family desktop (verify) | [x] |
|
||||
| P374-6 | Composer: mention-everyone thread toast cites parent (verify) | [x] |
|
||||
| P374-7 | Role editor: custom-role skip hash smoke (verify) | [x] |
|
||||
| P374-8 | Voice: remote speaking pill name aria bundle smoke (verify) | [x] |
|
||||
| P374-9 | Logging: Clipboard JSONL `searchCached` bool smoke (verify) | [x] |
|
||||
| P374-10 | Diagnostics filter: **IPC errors** bundle smoke (verify) | [x] |
|
||||
| P374-11 | Agentctl: forum search mesh-off then mesh-on refresh (reuse) | [x] |
|
||||
| P374-12 | Agentctl: thread inbox mark-notification-read roundtrip (reuse) | [x] |
|
||||
| P374-13 | Companion: compose panel verify disabled while guild loading | [x] |
|
||||
| P374-14 | Smoke: `test:mark-notification-read-channel-thread-family-desktop` | [x] |
|
||||
| P374-15 | Smoke: `test:search-mesh-refresh-btn-no-disabled-idle` | [x] |
|
||||
| P374-16 | Smoke: `test:platform-refresh-mesh-on-cache-hit` | [x] |
|
||||
| P374-17 | Docs: `SEARCH.md` mesh refresh aria-disabled idle | [x] |
|
||||
| P374-18 | Docs: `NOTIFICATIONS.md` open-notification channel family | [x] |
|
||||
| P374-19 | Boot: chain Phase 374 smokes | [x] |
|
||||
| P374-20 | Phase 375 forum inbox & mesh depth (v0.8.337) | [x] |
|
||||
|
||||
**Next:** P374-1–P374-19.
|
||||
**Next:** ~~Phase 374~~ (complete).
|
||||
|
||||
---
|
||||
|
||||
### Phase 375 — Forum inbox & mesh depth (v0.8.337)
|
||||
|
||||
| ID | Item | Status |
|
||||
|----|------|--------|
|
||||
| P375-1 | Search: forum sidecar stale age when guild scope cached (verify) | [ ] |
|
||||
| P375-2 | Search mesh refresh: remove `aria-pressed` from refresh button while idle (verify) | [ ] |
|
||||
| P375-3 | Platform: `setSearch` mesh-on logs scope on cache miss at debug (verify) | [ ] |
|
||||
| P375-4 | Thread panel: active pinned+muted combined aria (verify) | [ ] |
|
||||
| P375-5 | Notifications: mark-notification-read clears forum thread family (verify) | [ ] |
|
||||
| P375-6 | Composer: mention-channel thread toast cites parent (verify) | [ ] |
|
||||
| P375-7 | Role editor: custom-role skip hash smoke (verify) | [ ] |
|
||||
| P375-8 | Voice: remote mute pill name aria bundle smoke (verify) | [ ] |
|
||||
| P375-9 | Logging: Clipboard JSONL `sessionError` smoke (verify) | [ ] |
|
||||
| P375-10 | Diagnostics filter: **Voice errors** bundle smoke (verify) | [ ] |
|
||||
| P375-11 | Agentctl: guild search mesh-off then mesh-on refresh (reuse) | [ ] |
|
||||
| P375-12 | Agentctl: thread inbox mark-channel-read roundtrip (reuse) | [ ] |
|
||||
| P375-13 | Companion: channels panel verify disabled while guild loading | [ ] |
|
||||
| P375-14 | Smoke: `test:navigate-forum-thread-family-desktop` | [ ] |
|
||||
| P375-15 | Smoke: `test:search-mesh-refresh-btn-no-pressed-idle` | [ ] |
|
||||
| P375-16 | Smoke: `test:platform-setsearch-mesh-on-cache-miss` | [ ] |
|
||||
| P375-17 | Docs: `SEARCH.md` mesh refresh aria-pressed idle | [ ] |
|
||||
| P375-18 | Docs: `NOTIFICATIONS.md` mark-notification-read forum family | [ ] |
|
||||
| P375-19 | Boot: chain Phase 374 smokes | [ ] |
|
||||
| P375-20 | Phase 376 guild inbox & mesh depth (v0.8.338) | [ ] |
|
||||
|
||||
**Next:** P375-1–P375-19.
|
||||
|
||||
---
|
||||
|
||||
@@ -6452,7 +6481,8 @@ Absorbed into Phase 273 (P273-5–P273-8, P273-11–P273-12). See Phase 274 for
|
||||
|
||||
### Changelog
|
||||
|
||||
- **2026-05-23** — v0.8.336: Phase 374 planned (channel inbox & mesh depth).
|
||||
- **2026-05-23** — v0.8.337: Phase 375 planned (forum inbox & mesh depth).
|
||||
- **2026-05-23** — v0.8.336: Phase 374 — guild sidecar stale channel meta; mesh aria-disabled idle; refresh mesh-on cache hit; muted-only thread aria; mark-notification-read channel family; @everyone parent toast; agentctl forum search + thread inbox; boot chain. Phase 375 planned.
|
||||
- **2026-05-23** — v0.8.335: Phase 373 — typing IPC alias; poll env; channel/forum sidecar + mesh aria-busy idle verified; platform refresh mesh-off cache hit; thread pinned-only aria; mark-read channel family; @here parent toast; agentctl channel search + thread inbox; +smokes. Phase 374 planned.
|
||||
- **2026-05-23** — v0.8.334: Phase 372 — guild inbox mesh/search/notifications verified; forum sidecar stale guild meta; voice errors diagnostics filter; agentctl guild search + thread inbox; boot chain. Phase 373 planned.
|
||||
- **2026-05-23** — v0.8.332: Phase 370 — mesh refresh aria-pressed idle verified; mark-notification-read forum thread family; setSearch mesh-on cache miss; compose panel verify; boot chain. Phase 371 planned.
|
||||
|
||||
@@ -152,6 +152,8 @@ See also [FORUM_ARCHIVE_SEARCH.md](./FORUM_ARCHIVE_SEARCH.md).
|
||||
|
||||
**v0.8.263:** `loadGuild` / `openHome` bust search cache before light `view`. Cache hits require matching `_searchCacheGuildId`. Mesh chip shows **cached** when `view.searchResultsCached`. Forum archived toggle calls `refresh-search`. Debug logs `guild.search cache miss` with reason. Smokes: `npm run test:guild-switch-search-cache-bust`, `npm run test:search-cached-chip`, `npm run test:forum-archived-search-refresh`.
|
||||
|
||||
**v0.8.336:** Guild sidecar stale age falls back to `channelMetaStale.fetchedAt` when channel scope uses cached guild meta (Phase 374 re-verified). Mesh **↻** clears `aria-disabled` when idle (fresh). `refreshSearch` logs `guild.search refresh mesh-on cache hit` with `scope` when mesh is on and cache hits. Smokes: `npm run test:guild-sidecar-stale-channel-meta`, `npm run test:search-mesh-refresh-btn-no-disabled-idle`, `npm run test:platform-refresh-mesh-on-cache-hit`.
|
||||
|
||||
**v0.8.334:** Forum sidecar stale age falls back to `guildMetaStale.fetchedAt` when forum scope uses cached guild meta (Phase 372 re-verified). Mesh **↻** clears `aria-controls` when idle (fresh). `setSearch` logs `guild.search setSearch mesh-off cache hit` with `scope` when mesh is off and cache hits. Smokes: `npm run test:forum-sidecar-stale-guild-meta`, `npm run test:search-mesh-refresh-btn-no-controls-idle`, `npm run test:platform-setsearch-mesh-off-cache-hit`.
|
||||
|
||||
**v0.8.332:** Forum sidecar stale age falls back to `guildMetaStale.fetchedAt` when forum scope uses cached guild meta (re-verified). Mesh **↻** clears `aria-pressed` when idle (fresh), restores it when stale. `setSearch` logs `guild.search setSearch mesh-on cache miss` with `scope` when mesh is on and cache misses. Smokes: `npm run test:forum-sidecar-stale-guild-meta`, `npm run test:search-mesh-refresh-btn-no-pressed-idle`, `npm run test:platform-setsearch-mesh-on-cache-miss`.
|
||||
|
||||
Reference in New Issue
Block a user