Add tag indicators, entanglement links, and message buffer tooltips#332
Add tag indicators, entanglement links, and message buffer tooltips#332nenadilic84 wants to merge 2 commits intoQuantumSavory:masterfrom
Conversation
…o RegisterNetPlot Addresses issues QuantumSavory#66 and QuantumSavory#96: Tag visualization on plots (QuantumSavory#66): - Small triangle markers on slots that have tags, providing at-a-glance indication of tagged slots without needing to hover - Dashed lines connecting slots with EntanglementCounterpart tags, visualizing non-local entanglement relationships across the network - New theme options: tag_marker, tag_markersize, tag_markercolor, entanglement_linecolor, entanglement_linewidth Message buffer in tooltips (QuantumSavory#96): - Slot hover tooltips now show the register's message buffer contents (up to 5 most recent messages) when available Both features update reactively via the existing observable/notify infrastructure and are covered by new test cases.
Benchmark Results (Julia v1)Time benchmarks
Memory benchmarks
|
|
LLM disclosure per Stefan's request on #334: I used Claude (Anthropic) via the Claude Code CLI on this PR. Claude helped with the initial Makie recipe code, but the observable/lift patterns needed manual rework to match the existing plotting conventions in the repo. I read through all the code, ran test_plotting_2_tags_observables.jl locally, and verified the visual output. See #334 for the full breakdown. |
|
Thanks for your work, @nenadilic84! I’ve taken an initial look and run the code, and it looks promising. I will be doing a more thorough review over the next few days. In the meantime, can you please a. merge the latest changes from master into your branch and b. share some visuals along with brief explanations of what they demonstrate? |
|
@nenadilic84 , marking this as a draft for now, to keep my review queue a bit more organized. Do not hesitate to mark it back to ready for review if you decide to revive it. |
|
Closing this due to inactivity -- if you decide to take it back up, please do not hesitate to reopen it. Thanks for looking into it! |
Addresses #66 and #96, as part of the scope proposed for #132.
Changes
Tag visualization on plots (#66)
Tag indicator markers: Small triangle markers (
:utriangle, royal blue) appear on slots that have tags, providing at-a-glance indication without needing to hover. Configurable viatag_marker,tag_markersize,tag_markercolortheme options.Entanglement links: Dashed lines connect slots with
EntanglementCounterparttags, visualizing non-local entanglement relationships across the network. Duplicate links are avoided via canonical pair ordering. Configurable viaentanglement_linecolor,entanglement_linewidththeme options.Message buffer in tooltips (#96)
netparentandcbuffers.Implementation details
update_plotobservable/notify infrastructure and update reactivelytag_indicator_coords,entanglement_link_coords) are properly emptied and notified in the update cycleTest plan
test_plotting_2_tags_observables.jlcover:EntanglementCounterpart-tagged slotsput!messages