Repository navigation
Share epoch viewers, local tag filters, and single-epoch export - #3
Merged
Merged
Conversation
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.
Search predicate and pinned protocol inspection previously assembled separate pane layouts, so fixes to one viewer did not reach the other. Both now use shared tree panes, resizing geometry, focused-epoch headers, and export controls. The tree editor uses the same pane layout. Protocol navigation and inspection controls share one compact header; Collapse all, Epochs, Split tree, and Edit tree sit above a divider.
Epoch and split-tree rows use consistent inclusion controls and highlighting. Collapsing a selected branch no longer reopens it through focus navigation. Cell selection keeps its trace visible while exposing cell tags in the metadata panel. Redundant selection actions and explanatory footers are removed.
Pinned protocols support local exact-tag filters with All/Any, is/is not, cell/epoch/effective scopes, and a visible Clear filter action. Summary, paging, trees, and export use the same filtered membership without changing the saved query or annotations.
Both viewers offer direct single-epoch SQLite or MATLAB exports by immutable UUID. Pinned exports retain active filters and reject excluded or out-of-view epochs before creating artifacts. Search exports intersect the current predicate with the selected UUID. Export receipts require exactly one epoch and refresh the saved-export badge. The disposable disk index is rebuilt to support the new identity field.
Validation: 215 frontend tests, production build, and 639 backend tests passed (5 native-only tests skipped). Live browser checks covered both viewers, Search predicate split-tree collapse, cell focus/trace, relocated filters, and both single-epoch export dialogs. Synthetic export tests verify exact UUID membership and rejection without new artifacts.