imbajin opened a new pull request, #855:
URL: https://github.com/apache/hugegraph-toolchain/pull/855

   Labels imported through the Server API without a saved `~style` currently 
share the same blue, so the canvas and legend do not distinguish Person, Team 
and Project. Generate a deterministic palette color from the vertex-label name 
only when `~style` is absent. Default reads remain read-only.
   
   All non-null saved styles keep the existing parsing path, including explicit 
blue, partial styles and historical Hubble-created blue defaults. Those 
historical defaults cannot be distinguished from a user's choice, so they are 
preserved. The palette is finite and does not promise collision-free colors for 
unlimited labels; the existing legend text remains visible.
   
   Validation:
   
   - Three focused JUnit tests pass for stable colors across read order and 
individual reads, no default persistence, complete custom-blue preservation and 
partial saved-style compatibility. The offline JDK 17 reactor compile, 
candidate SDK input guard and Checkstyle passed. An independent static review 
found no further issues.
   - Real Chromium 154 against isolated candidate backend/frontend, using the 
same real graph seeded with 3,000 vertices and 6,000 edges. Three community 
queries each rendered 125 vertices and 250 edges; the second community was 
repeated after a full page reload.
   - Five actual UI schema responses consistently returned Person `#785FC1`, 
Team `#16817D`, Project `#B07724`. The canvas and text-labelled legend were 
visually checked. Direct Server schema readback still had no saved `~style` for 
these labels.
   - No page exceptions or HTTP/business API failures during this browser 
session. Four existing Ant Design Drawer/Table deprecation warnings remain. The 
three measured query action-to-paint times were 1.54 s, 1.23 s and 1.11 s on 
this small local test; these are observations, not a scalability benchmark.
   - Current-head GitHub Module validation [run 
40186956414](https://github.com/hugegraph/hugegraph-toolchain/actions/runs/40186956414)
 passed, including the Hubble candidate job. CodeRabbit reported its review 
quota was exhausted, so its success status is not a substantive completed 
review.
   
   Screenshot comparison: the before and after captures use the same 
`community_01` query and real 125-vertex/250-edge result, captured before a 
separate temporary CRUD probe. The graph has since been restored to exactly 
3,000 vertices and 6,000 edges, with full normalized data hashes and schema 
matching the initial baseline. Before: all three labels blue. After: purple 
Person, teal Team and ochre Project, with readable legend text. A second after 
capture confirms the colors after page reload on `community_02`.
   
   Screenshot binaries, browser receipts and logs remain outside Git under the 
user's explicit instruction. The [regression and screenshot 
record](https://chatgpt.com/space/page_62cf6a23a284819196000f124fdd6990) 
requires Page access; GitHub-native image upload is unavailable in this 
session. The paired before/after captures, page-reload capture and read-only 
verification record are published together in issue **38 · 默认多标签同蓝** on that 
Page (publication read back at revision 108). These are private Page 
attachments, not anonymous GitHub image URLs.
   
   Based on freshly verified org and ASF master 
`8eb5de9009d494842f6b8ee58b83e1f1248c8aff`. Verified source head: 
`6c34884bd9987c5ac02ae6ac5b26e6231dac1efd`. The change is three files, 140 
additions and one deletion.
   
   Source review: https://github.com/hugegraph/hugegraph-toolchain/pull/100
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to