feat(chart): draw every same-exchange Auto Overview core's trades - #696
Merged
Merged
Conversation
In Auto workspace mode, the Full summary state shows the whole group at once, but the chart's closed-trade history stayed pinned to the single core the coin was opened on. A trade the same account made on another core was simply absent from the picture, with nothing on screen to say so. A toggle on the chart strip and the detached header now widens the history to every Overview core trading on the SAME exchange as the chart's own core; the hover card names the core each trade came from. Another venue is excluded deliberately - its prices are a different market and its arrows would land beside the candles - and so is a core whose venue cannot be named. Default off, per chart tab, so an untouched chart behaves exactly as before. One function resolves the admitted core set and both the durable query and the per-pane draw filter consume that same vector, so the read and the drawing cannot disagree. The order-lines layer keeps its own single-core gate: a foreign record is forced "not lined" and keeps its arrows rather than widening that layer. The multi-core read sends NO_MATCH_CORE_UID for an empty admitted set, since an empty core list means "all cores" to the report filter.
The toggle shipped inside the run of settings-popup icons, where it read as a sixth popup rather than as what it is: a mode switch that changes which trades the chart draws. It now stands in its own section between the coin field and the icon run, with the strip's own rule beside it - next to the other control that answers "what am I looking at". Section and divider share one Option, so a chart outside Auto Overview, where the toggle does not exist, gains neither an empty group nor a second rule. Both toolbars move together: the docked strip and the detached chart header. The new section is deliberately left out of the pair of groups that dismiss an open coin search on press - that contract stays at exactly two listeners.
With the all-cores toggle on, the chart drew the closed trades of every Full summary core on the exchange, while its corner caption still named the one core the coin was opened on - so the picture read as that core's trades alone. The caption now reads "<exchange> · all cores (<n>)" whenever the pane draws more than its own core, decided by the same owner-and-size test the draw filter applies, so a compare pane that does not own the request keeps its own name. It is substituted at the one place the caption's inputs are assembled, beside the screenshot substitution, and wins over it: that one hides account labels and this string carries none. Installing or clearing the admitted set now forces the order sync that rebuilds the caption, so the name moves with the arrows instead of waiting for an unrelated order revision.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
In Auto workspace mode, the Full summary shows the whole group at once, but the chart's
closed-trade history stayed pinned to the one core the coin was opened on. Trades the same
account made on other cores were absent from the picture, with nothing on screen to say so.
Full summary core trading on the same exchange as the chart's own core. Another venue is
excluded on purpose — its prices are a different market — and so is a core whose venue cannot
be named. Default off, per chart tab; visible only in Auto + Full summary.
it changes what the chart shows, it is not a setting.
<exchange> · all cores (<n>)while the pane draws more than its owncore, decided by the same test the draw filter uses; the hover card names each trade's core.
filter consume that same vector, so the read and the drawing cannot disagree. An empty set
sends
NO_MATCH_CORE_UID, since an empty core list means "all cores" to the report filter.How to verify
cargo test --workspace;cargo test -p moon-ui-gpui --test theme_contract.same-exchange cores appear, the caption switches to the exchange and count, and toggling off
restores the single core's name at once.
Known gap: the same-exchange boundary is verified by review only;
admitted_history_corestakes a
Backend, which has no test seam today.