Skip to content

Cytosolic metabolites in mitochondrial non-transport reactions #880

Closed

Description

@pranasag

Current behavior:

I spotted a couple of iffy reactions, where 1 metabolite is cytosolic for reactions that take place in mitochondria. These are MAR08433 and MAR08434. In the future, maybe we can write a small script to find potentially problematic reactions like that.

Suggested curation:

  1. Check the metabolites for which we should swap mito > cyto - whether the reactions were blocked, or will be if we change that metabolite;
  2. Change cytosolic mets into mitochondrial ones.

Activity

  1. edkerk commented on Oct 17, 2024

    @edkerk
    Member

    Well spotted, and thanks for reporting. It would indeed make sense to write a function to identify potential incorrect reactions.

    For those two reactions specifically though, the use of the cytosolic variant was done on purpose (#683, #714), as an intermediate step of a thorough curation of lipoid acid metabolism. The final step (#685) is solved in an open PR (#830), which should be reviewed in the near future.

    I'll leave this Issue open, considering the more general script that can identify such potential problematic reactions.

  2. pranasag commented on Oct 17, 2024

    @pranasag
    CollaboratorAuthor

    Thanks a lot Eduard - I did not cross-check with existing issues/PRs indeed, my bad. Yes, it seems we have quite a body of proposed curation that should be implemented and/or reviewed soon.

  3. added
    wipA pull request for this issue is open
    on Sep 25, 2026
  4. edkerk commented on Sep 25, 2026

    @edkerk
    Member

    #1095 adds the check suggested here and fixes the reactions it finds.

    Why MAR08433 and MAR08434 still looked wrong
    All metabolites in these reactions have IDs ending in m. But MAM00208m ([protein]-N6-(dihydrolipoyl)lysine) had compartment: "c" in the model file. Tools read the compartment field, not the ID, so MAR06403, MAR06404 and MAR08434 still used a cytosolic metabolite. MAM00208m is now set to m.

    New checks

    1. Reactions split across compartments (qc_split_compartments.csv). A metabolite that appears in two compartments of the same reaction is being transported, so it is ignored. If the other metabolites are still in more than one compartment, the reaction is listed. Artificial reactions (biomass, pools) are skipped. Some listed reactions are correct because the enzyme works across a membrane:

      • HGSNAT uses cytosolic acetyl-CoA to modify heparan sulfate inside the lysosome.
      • GPD2 uses cytosolic glycerol-3-phosphate to reduce ubiquinone in the mitochondria.
      • Fatty acids are taken up and turned into acyl-CoA in one step.
      • Hyaluronan synthase pushes the growing chain out of the cell.

      So the check does not fail. It reports the number, and a higher number than on the base branch shows up as a regression. There are 37 on develop and 29 after fix: QC check for reactions split across compartments, and curation of those found #1095.

    2. Metabolite ID and compartment disagree. This is added to the existing annotation-consistency check. It found MAM00208m (above) and MAM20076n, which fix: correct two metabolite compartments and curate the NAAA ceramidase GPRs #1088 fixes. Until fix: correct two metabolite compartments and curate the NAAA ceramidase GPRs #1088 is merged, fix: QC check for reactions split across compartments, and curation of those found #1095's QC comment will show MAM20076n as one new inconsistency.

    Fixed reactions

    • MAR06779 moves phytanoyl-CoA into the peroxisome. Its product was dibenzo[a,l]pyrene-11,12-diol, which has nothing to do with this reaction. The product is now (3S)-phytanic acid, as in the matching reaction MAR03481, and the reaction now balances.
    • MAR01392 (prostaglandin G1 to H1) had its water in the ER and everything else in the cytosol. It is now fully cytosolic and moved from "Transport reactions" to "Prostaglandin biosynthesis".
    • MAR00081 and MAR08317 add galactose to a sugar chain in the Golgi. Their names and gene (B3GNT3) were for an enzyme that adds GlcNAc instead. They now have the same genes as the cytosolic version of this step, MAR00890 (B4GALT1–4), and matching names. MAR08317 made its product in the cytosol; it now makes it in the Golgi, as the new metabolite MAM02186g.
    • MAR08279 was the same reaction as MAR00081 (same MetaNetX ID) apart from its product's compartment. Once fixed, it would be a duplicate, so it is deprecated.

    Duplicate metabolites

    • MAM01915 and MAM01884 are the same glycolipid: same MetaNetX ID and formula. MAM01915 is merged into MAM01884. Three reactions then became duplicates and are deprecated: MAR01340, MAR08300 and MAR09333.
    • MAM03231e and MAM03232e are both 3-(3-hydroxyphenyl)propanoate. MAM03231e is merged into MAM03232e. The exchange reaction MAR10473 became a duplicate and is deprecated. MAR10470 is also deprecated: it let the compound cross the cell membrane on its own, next to MAR10373, which moves it together with H+. Together they would move H+ into the cell for free.
    • Merged IDs are added to the rxnRetired / metRetired column of the kept reaction or metabolite.

    Wrong annotations

    • MAM02186 (iso-nLc8Cer) had ChEBI, HMDB, PubChem, MetaNetX, SMILES and InChI entries for 4-isopropylaniline, an unrelated small molecule. These are removed. KEGG G00078 is correct and kept.

    Growth is unchanged (124.9), and there are no new duplicate reactions, unused metabolites or genes.

  5. edkerk commented on Sep 28, 2026

    @edkerk
    Member

    Follow-up to #1095, in #1105 (open): I-antigen (MAM03584g) is merged into MAM02186g, and MAR08317 (left blocked by #1095) into MAR00082, which now has B4GALT1-4 instead of B3GNT3. The PTGS peroxidase steps (MAR01307, MAR01392, MAR01393) now use NADPH and are irreversible, which fixes their charge. Details and evidence are in the comment on #1095.

  6. added
    fixed in developMerged into develop, will be in the next release
    and removed
    wipA pull request for this issue is open
    on Sep 28, 2026
  7. added this to the 2.1.0 milestone on Sep 28, 2026
  8. edkerk commented on Oct 5, 2026

    @edkerk
    Member

    Fixed in Human 2.1.0.

  9. removed
    fixed in developMerged into develop, will be in the next release
    on Oct 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugThe model or code is wrong

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions