Skip to content

feat(app): add trace stack composer - #52

Merged
nmrtist merged 1 commit into
mainfrom
feat/trace-composer
Aug 8, 2026
Merged

feat(app): add trace stack composer#52
nmrtist merged 1 commit into
mainfrom
feat/trace-composer

Conversation

@nmrtist

@nmrtist nmrtist commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add a Trace Composer for building plots from selected items across compatible trace collections.
  • Resolve trace applicability through field capabilities, concrete line encodings, and compatible unit contracts.
  • Support electrophysiology sweeps and pseudo-2D increments through the same domain-neutral workflow.
  • Preserve the existing immediate workflow for non-trace stacks.

User experience

  • Open the composer from Stack selected data when compatible trace collections are selected.
  • Start with every trace selected while allowing arbitrary subsets.
  • Search by dataset source, semantic trace label, or parameter value.
  • Provide Select all, Clear all, Select filtered, and Clear filtered controls.
  • Show source filenames or custom dataset names, with deterministic disambiguation for duplicate names.
  • Disable stack creation when no traces are selected.
  • Keep cancellation and window dismissal free of document changes.
  • Select and reveal the created plot automatically, fit its page to the workspace, and open its Data inspector section for immediate editing.
  • Keep the composer responsive for narrow windows and large collections, with bounded rows, full-value tooltips, and accessible trace controls.

Data and lifecycle

  • Keep composer drafts in transient session state.
  • Address sources with stable dataset, field, and trace item identities.
  • Revalidate every selected source before creating the plot.
  • Preserve deterministic source ordering, palette colors, unique series IDs, and plot-owned bindings.
  • Create the canvas as one undoable action.
  • Preserve the selected traces through undo/redo and project save/load.
  • Use the currently selected electrophysiology channel.
  • Resolve pseudo-2D increments from the stable stack field even while DOSY or ILT maps are displayed.
  • Keep the project schema fixed at version 1 without compatibility or migration logic.

Documentation

  • Update the English and Simplified Chinese electrophysiology and pseudo-2D guides with the Trace Composer workflow.

Validation

  • cargo pr-check
  • Documentation build

Compose item-addressed traces from compatible datasets before creating a stack. Add provenance-aware search and bulk selection, preserve stable sources and deterministic styling, and reveal the resulting plot for immediate editing. Keep trace compatibility capability-based and document the workflow for electrophysiology and pseudo-2D data.
@nmrtist
nmrtist merged commit 61ee133 into main Aug 8, 2026
11 checks passed
@nmrtist
nmrtist deleted the feat/trace-composer branch August 8, 2026 02:22
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 8, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant