less store 14. emoji, bot, provision#29094
Merged
chrisnojima merged 7 commits intonojima/HOTPOT-next-670-cleanfrom Mar 30, 2026
Merged
less store 14. emoji, bot, provision#29094chrisnojima merged 7 commits intonojima/HOTPOT-next-670-cleanfrom
chrisnojima merged 7 commits intonojima/HOTPOT-next-670-cleanfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR continues the “zustand store pruning” effort by removing several UI- and cache-oriented responsibilities from the chat and provision Zustand stores, shifting state to route params and component-local RPC/hooks to reduce global store surface area.
Changes:
- Remove chat store state for info-panel UI, bot public commands, general-conversation ID cache, and user-emoji cache; re-home these behaviors into route params and local hooks/RPC calls.
- Refactor provisioning error handling to pass error details via navigation params (and move “forgot username” RPC + decoding into the screen).
- Add navigation helper
setChatRootParamsto update split-view chat root params atomically.
Reviewed changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| skill/zustand-store-pruning/references/store-checklist.md | Updates pruning checklist entries for provision and chat. |
| shared/teams/team/rows/index.tsx | Moves “general conversation id” lookup to direct RPC + meta injection (no chat-store cache). |
| shared/stores/tests/provision.test.ts | Updates provisioning tests to match removed store fields. |
| shared/stores/provision.tsx | Removes forgot-username flow + final error from store; navigates to error screen with route params. |
| shared/stores/convostate.tsx | Drives info-panel visibility from navigation (phone stack / split-view params) instead of chat-store flags. |
| shared/stores/chat.tsx | Prunes chat store fields and dispatchers (emoji cache, bot commands cache, info panel UI state, general conv cache, etc.). |
| shared/provision/forgot-username.tsx | Uses component-local RPC + local state for forgot-username instead of provision store. |
| shared/provision/error.tsx | Reads provisioning error from route params instead of provision store. |
| shared/constants/strings.tsx | Removes waiting key constant for emoji-loading that’s no longer used. |
| shared/constants/router.tsx | Adds setChatRootParams and reuses it from navToThread for split-view navigation. |
| shared/constants/init/shared.tsx | Removes the chat “updateInfoPanel” subscription hook-up. |
| shared/common-adapters/wave-button.tsx | Moves “wave DM” logic to direct RPC + storeRegistry message send (no chat-store wrapper). |
| shared/chat/user-emoji.tsx | Adds useUserEmoji hook to load/flatten custom emoji without using chat store. |
| shared/chat/inbox-and-conversation.tsx | Renders info panel based on chatRoot route params instead of chat store. |
| shared/chat/inbox-and-conversation-header.tsx | Reads info-panel visibility from chatRoot route params. |
| shared/chat/emoji-picker/container.tsx | Switches custom emoji loading to useUserEmoji. |
| shared/chat/conversation/input-area/suggestors/emoji.tsx | Switches emoji suggestor data source to useUserEmoji. |
| shared/chat/conversation/input-area/normal/index.tsx | Uses route params (chatRoot) for info-panel layout decisions. |
| shared/chat/conversation/info-panel/index.tsx | Makes tab selection controlled via props (route param) rather than persisted in chat store. |
| shared/chat/conversation/bot/install.tsx | Moves bot public command loading + general conv lookup to component-local RPC/state. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
125aaec to
f833bc9
Compare
cdd7e4a to
f2d4149
Compare
f833bc9 to
27e1b13
Compare
Base automatically changed from
nojima/ZCLIENT-less-store-13
to
nojima/HOTPOT-next-670-clean
March 30, 2026 19:37
f2d4149 to
85edafc
Compare
80cda2d
into
nojima/HOTPOT-next-670-clean
1 check was pending
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.