Loyal-Young opened a new issue, #5777: URL: https://github.com/apache/rocketmq-dashboard/issues/5777
### Before Creating the Bug Report - [x] Searched existing issues and pull requests. #4631/#4632 cover disabled and overlapping loads; they do not invalidate a load when the hook unmounts. ### Studio Version `rocketmq-studio` at `c99b9ad50b79467546997e51f3401d57ceebea5f`. ### Describe the Bug `useLlmRuntime` increments its request generation on a new load, but its mounting effect has no cleanup. If the configuration request completes after leaving the AI page, it still invokes `onEngine` and starts the model-catalog request. In `pages/ai/index.tsx`, `onEngine` writes the global persisted engine preference. A response belonging to a page that is no longer open can therefore overwrite a more recent engine choice elsewhere. A late failure similarly invokes the obsolete page's error callback. ### Steps to Reproduce 1. Delay `getLlmConfig` while opening the AI page. 2. Navigate away and choose another engine on the home page. 3. Resolve the old configuration request with a different engine. 4. Observe that the old callback updates the shared engine store and starts `getLlmModels` after unmount. ### Expected Behavior Invalidate the current runtime-load generation on unmount. Late configuration/model responses must not publish callbacks or start dependent requests. Existing enabled-toggle and latest-request guards should continue to work. ### Verification Plan Add deferred hook regressions covering successful configuration completion and request rejection after unmount, alongside the existing disabled/overlapping-load tests. ### Are You Willing to Submit a Pull Request? Yes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
