Skip to content

feat(protein): add persistent manual peak assignments - #167

Merged
nmrtist merged 1 commit into
mainfrom
feature/manual-protein-assignments
Nov 4, 2026
Merged

nmrtist merged 1 commit into
mainfrom
feature/manual-protein-assignments

Conversation

@nmrtist

@nmrtist nmrtist commented Nov 4, 2026

Copy link
Copy Markdown
Owner

Summary

Assign 3D NMR peaks to protein residues and atoms, and keep those assignments when the project is reopened.

  • Import multi-chain FASTA, bind spectra to a molecule, and use the Protein assignments panel to edit candidates and locate peaks from residues across spectra.
  • Save partial and alternative assignments, validate atoms against peptide position and axis nucleus, and distinguish an unresolved member from a shared resonance in atom groups. Confirmation is explicit.
  • Keep assignments tied to stable peak IDs through slicing, phase changes, and undo/redo. Share editing and paginated inspection across the desktop, CLI, and MCP, with JSON export for observations and provenance.

Validation

  • cargo pr-check — passed. Regression tests cover project and recovery round trips, peak identity across undo branches, atom group semantics, and CLI/MCP editing and export.
  • Desktop widget tests — passed. They cover candidate editing, scrolling to Save in the task card, cross-spectrum navigation, and confirming a clear against the original spectrum.
  • npm run build in docs/ — passed.

UI display logic

  • New or changed actions go through the command catalog (CommandId + describe) and are searchable in the command palette.
  • Hiding happens only at Ribbon-group level (dataset kind or width budget); transient states disable with a disabled_reason that says how to unblock.
  • No layout changes from background events; panels are never auto-closed.
  • New panels or empty regions show an empty state with a next step.
  • Docs updated in docs/ (English and zh-CN) for user-visible behavior.

@nmrtist
nmrtist merged commit 7043042 into main Nov 4, 2026
11 checks passed
@nmrtist
nmrtist deleted the feature/manual-protein-assignments branch November 4, 2026 08:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant