Aias00 opened a new issue, #2009:
URL: https://github.com/apache/rocketmq-dashboard/issues/2009

   ## Problem
   
   The NameServer configuration drift page starts an instance bootstrap chain 
on mount:
   
   1. load instances;
   2. select the first Apache instance;
   3. load that instance's clusters;
   4. run the first cluster drift check.
   
   Only interactive instance changes are currently guarded by 
`requestSequence`. The bootstrap chain does not own or validate a sequence 
before writing `clusters`, `selectedClusterId`, or starting `runCheck`.
   
   If a user selects another instance while the first instance's cluster 
request is still pending, the late bootstrap response can overwrite the 
clusters and drift result for the newly selected instance.
   
   ## Reproduction
   
   1. Let `listInstances()` return Apache instances A and B.
   2. Keep the bootstrap `listClusters(A)` request pending.
   3. Select instance B and let `listClusters(B)` and its drift check complete.
   4. Resolve the old `listClusters(A)` request.
   
   The page can show instance B in the selector while rendering cluster/drift 
data from instance A.
   
   ## Expected behavior
   
   - Every bootstrap or interactive load must have explicit request ownership.
   - A response may update instance, cluster, loading, or drift state only 
while it is still the latest request.
   - Switching instances must permanently invalidate all earlier bootstrap and 
drift work.
   
   ## Scope
   
   NameServer drift page request ownership and focused frontend regression 
tests only.
   
   ## Track
   
   Track 1 / AI-Native unified control plane.


-- 
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]

Reply via email to