Skip to content

Add TMT 10plex modifications - #378

Merged
GeorgWa merged 6 commits into
mainfrom
tmt-mods
Dec 29, 2025
Merged

GeorgWa merged 6 commits into
mainfrom
tmt-mods

Conversation

@GeorgWa

@GeorgWa GeorgWa commented Dec 27, 2025

Copy link
Copy Markdown
Collaborator

Adds full smiles support for tmt 10plex modifications

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds SMILES structure support for TMT 10plex and TMTpro modifications to enable full chemical structure representation of these isotopic labels.

  • Adds SMILES notation to TMT10plex@Any_N-term and TMT10plex@K modifications
  • Adds SMILES notation to TMTpro@Any_N-term and TMTpro@K modifications
  • Adds TMTpro modification mappings to the PSM reader configuration

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
alphabase/constants/const_files/modification.tsv Adds SMILES structures to TMT10plex and TMTpro modifications, populating previously empty structure fields
alphabase/constants/const_files/psm_reader.yaml Adds TMTpro@K and TMTpro@Any_N-term modification mappings for PSM reader

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

TMT10plex@H 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 0.0
TMT10plex@Protein_N-term 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 0.0
TMT10plex@Any_N-term 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 C(=O)CCCNC(=O)CN1C(C)CCC1C 0.0
TMT10plex@K 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 CC1N(CC(NCCC(NCCCC[C@H](N)C(=O)O)=O)=O)C(C)CCC1 0.0

Copilot AI Dec 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The modification name 'TMT10plex' is inconsistent with the existing 'TMT6plex' naming pattern. Based on the PR title mentioning 'TMT 10plex', this should likely be 'TMT10plex' throughout, but verify this matches the expected naming convention for 10-plex TMT modifications in the codebase.

Copilot uses AI. Check for mistakes.
TMTpro@Any_N-term 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 0.0
TMTpro@K 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 0.0
TMTpro@Any_N-term 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 C(=O)CCCNC(=O)CCCNC(=O)C1N(CC(C)C)CCC1 0.0
TMTpro@K 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 CC(CN1C(C(NCCC(NCCC(NCCCC[C@H](N)C(=O)O)=O)=O)=O)CCC1)C 0.0

Copilot AI Dec 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SMILES structures added for TMT10plex@K and TMTpro@K contain embedded lysine residues (NCCCCC@HC(=O)O). Verify these represent the modification attachment to lysine correctly, as including the full amino acid in the SMILES may cause issues with mass calculations or structure interpretation depending on how these are processed downstream.

Suggested change
TMTpro@K 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 CC(CN1C(C(NCCC(NCCC(NCCCC[C@H](N)C(=O)O)=O)=O)=O)CCC1)C 0.0
TMTpro@K 304.207146 304.3127 H(25)C(8)13C(7)N(1)15N(2)O(3) 0.0 Isotopic label 2016 C(=O)CCCNC(=O)CCCNC(=O)C1N(CC(C)C)CCC1 0.0

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is intended

@lucas-diedrich lucas-diedrich left a comment •

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checked masses, IDs + composition based on unimod reference: https://www.unimod.org/modifications_view.php?editid1=737

a) Is the smiles string for the TMT10plex@Any_N-term modification correct?
b) Would it make sense to add the smiles strings to the other entries as well?

TMT10plex@S 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 0.0
TMT10plex@H 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 0.0
TMT10plex@Protein_N-term 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 0.0
TMT10plex@Any_N-term 229.162932 229.2634 H(20)C(8)13C(4)N(1)15N(1)O(2) 0.0 Isotopic label 737 C(=O)CCCNC(=O)CN1C(C)CCC1C 0.0

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using this product sheet as reference, I think the smiles string is incorrect

The smiles currently evaluates to:
Image

  1. Currently Pyrrolidine ring instead of Piperidine ring
  2. Currently 3-C tail between amide bond and terminal aldehyde instead of 2-C tail

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested edit:

C1(C)CCCC(C)N1CC(=O)NCCC(=O)
Image

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching this! I'm a bit confused tbh. I reviewed this quite thoroughly

Base automatically changed from mtraq-mods to main December 29, 2025 17:25
GeorgWa and others added 2 commits December 29, 2025 18:28
The SMILES were missing [Fl] (N-term) and [Ts] (C-term) placeholders
required by modify_amino_acid validation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@GeorgWa
GeorgWa merged commit 710283a into main Dec 29, 2025
3 checks passed
@GeorgWa
GeorgWa deleted the tmt-mods branch December 29, 2025 18:23
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.

3 participants