RockteMQ-AI commented on issue #4781:
URL: 
https://github.com/apache/rocketmq-dashboard/issues/4781#issuecomment-5764509955

   ## Evaluation
   
   **Classification:** Bug (MEDIUM) — Studio MetricsExplorer UI rendering
   
   **Verification:** Code references confirmed against `4c697f0` (current 
studio master).
   
   - `metricSeriesLabel` in `metricsExplorerDiagnostics.ts:146-154` indeed 
applies `.slice(0, 3)` after filtering `__name__`, producing a truncated label 
string.
   - `MetricsExplorer.tsx:220,256,264` uses `series.label` (the truncated 
string) as:
     1. React `key` for `<polyline>` elements (line 220)
     2. React `key` for legend `<Flex>` entries (line 256)
     3. Tooltip content via `ellipsis={{ tooltip: series.label }}` (line 264)
   
   Two series differing only in the 4th+ label will collide on all three uses.
   
   **Impact:** Operators cannot visually distinguish series that share the 
first 3 sorted labels. React duplicate-key warnings may also mask real 
reconciliation issues. No data loss — complete labels remain in the Drawer and 
raw response.
   
   **Suggested fix direction:**
   1. Use `stableLabelsText(series.labels)` (already exported from the same 
file) as the React key — it is a full deterministic serialization.
   2. Keep the compact 3-label string for visible legend text, but set the 
hover tooltip to the full label set (e.g. `stableLabelsText` or a multi-line 
format of all `key=value` pairs).
   3. This preserves the compact UI while restoring distinct identity and hover 
detail.
   
   **Priority:** MEDIUM — rendering correctness issue affecting observability 
in multi-series scenarios.


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