Skip to content

Yeast genomes with loci from two MAT systems: route Ogataea to MATog, re-run 181 phylum-fallback genomes #188

Closed

Description

@hyphaltip

Problem

In the v0.7.0 clean run, 181 Saccharomycotina genomes have loci called by two or more of the families MATsc, MTL, MATog and MATkp. All 181 were routed by phylum_fallback, so every Ascomycota family was tried; none of the lineage- or direct-routed genomes is affected (results/2026-10-28_idiomorph_crosscall_flags/crosscall_genomes.tsv, made by scripts/idiomorph_crosscall_flags.py).

  • 101 genomes have only duplicate calls: the second family's locus has the same contig, start and end as a locus of the first (one locus called by two panels).
  • Pichiales is the main group: 72 of 112 Ogataea genomes and 157 of 158 Pichia genomes are phylum-fallback, although the MATog family (and MATkp for Komagataella) exists.
  • Worked example, Ogataea glucozyma GCA_003706155.2: PPKO02000069.1:20-23514 is called as MATsc MATalpha and as MTL alpha, both high, idiomorph_gene_only, at 30-47% identity; MATog was not tried.

Proposed

  1. Route Ogataea genomes to MATog and give Pichia and relatives a suitable family (or a Pichiales-level route); curator ruling on the routing.
  2. Re-run the 181 genomes and compare calls and counts with v0.7.0.
  3. Until then, the output-level rule scripts/dedupe_family_calls.py marks the duplicate calls (185 loci in 164 genomes in v0.7.0); it changes no pipeline output.

Changes calls, so not for a labelling release. Suggested milestone v0.8.0 (not created). Related: the naming proposal docs/notes/2026-10-28_idiomorph-naming-proposal.md.

Activity

  1. added this to the v0.8.0 milestone on Oct 29, 2026
  2. hyphaltip commented on Oct 29, 2026

    @hyphaltip
    MemberAuthor

    Added after review (2026-10-28)

    Test plan

    • Worked example: Ogataea glucozyma GCA_003706155.2 (PPKO02000069.1:20-23514) must be called by MATog only after the routing change, not by MATsc and MTL at identical coordinates.
    • Re-run the 181 genomes and compare calls and counts with v0.7.0: the 101 duplicate-only genomes should lose the second family's call; the other 80 go to curation (Curate the 80 yeast genomes with a secondary-system MAT locus; Pichia has no reference record #189).
    • Genomes routed by lineage or directly (not phylum-fallback) must stay byte-identical to v0.7.0.
    • Keep units straight: 101 genomes have duplicate-only calls; scripts/dedupe_family_calls.py marks 185 loci in 164 genomes.

    Decision needed first: the routing for Pichia and relatives (a Pichiales-level route or a new family), which depends on the Pichia reference in #189. Milestone set to v0.8.0 (it changes calls).

  3. hyphaltip commented on Oct 29, 2026

    @hyphaltip
    MemberAuthor

    Routing experiment finished on 354 yeast genomes (PR #213). v1 (MTL not searched outside Serinales) removes the cross-call duplicates (181 to 35 genomes with two loci) but loses all 22 MTL-only calls. v2 (v1 plus Ogataea to MATog) moves 44 Ogataea genomes from MATsc to MATog, including 9 in the MATsc-only control. The no-call control stays empty. Needs a ruling on whether the 22 MTL-only calls are genuine; details in results/2026-10-29_yeast_routing/README.md.

  4. hyphaltip commented on Oct 29, 2026

    @hyphaltip
    MemberAuthor

    Rule implemented in PR #214 (--cross-family-policy, off by default). Replay on the 354 genomes: no MTL-only call lost (5 family_confirmed, 17 family_unconfirmed), cross-called genomes with two or more loci 181 to 45, controls unchanged. 22 genomes where MTL wins on score are listed for review in PR #213's README.

  5. added 3 commits that reference this issue on Oct 29, 2026
  6. hyphaltip commented on Oct 30, 2026

    @hyphaltip
    MemberAuthor

    Status for v0.8.0 (2026-10-30).

    Landed (merged): #213 (the routing experiment), #214 (--cross-family-policy {off,on}: cross-calls resolved, out-of-scope MTL calls flagged family_unconfirmed/family_confirmed, MATog cassette flag), #215 (browser examples).

    Open PRs that finish the issue:

    Still to do: the v0.8.0 replay with --preset v0.8 (the 99 Ogataea genomes, the 56 P. kudriavzevii genomes and the other phylum-fallback yeasts), including the lost call in GCA_019232045.1 (Ogataea scope) and the two uncalled P. kudriavzevii genomes (GCA_001879685.1, GCA_029290715.1).

  7. hyphaltip commented on Oct 31, 2026

    @hyphaltip
    MemberAuthor

    Status check on main (6fd981b) against the v0.7.0 baseline, 181 cross-call genomes:

    • v0.7.0: all 181 multi-family, 113 with exact duplicate loci, all routed by phylum fallback.
    • v0.8: 12 multi-family (mostly MATsc + MTL in Saccharomycopsis, Ambrosiozyma, Williopsis, Wickerhamomyces), 0 exact duplicates; routing 9 direct, 44 lineage, 128 phylum fallback; 122 genomes carry the cross_call note.
    • All 29 Ogataea genomes call MATog. 26 of 27 Pichia still call MATsc because there is no Pichia reference record; that is tracked in Curate the 80 yeast genomes with a secondary-system MAT locus; Pichia has no reference record #189 (now v0.8.1).

    Closing as done for v0.8.0.

    🤖 Generated with Claude Code

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions