Skip to content

v0.9.0 MATpredict release

Latest

Choose a tag to compare

@hyphaltip hyphaltip released this 12 Nov 20:30
618092e

v0.9.0 re-runs the definitive v0.8.1 run with the detection changes below. It also adds the raw-reads gate causes, a sketch store, and a nearest_reference column in the label tables. Full details: CHANGELOG.

Results of the definitive run

Frozen commit 7d73be5, --preset v0.9.1 --withheld-detail-policy on, no weak-fragment cap. Every report carries the same commit, database hash and preset. The reports of the 372 genomes whose results moved under the tblastn outlier policy come from reruns with that policy off.

Campaign Reports Called Uncalled Loci (high / medium / low)
Ascomycota 19,343 17,618 1,725 20,844 (14,602 / 6,142 / 100)
Basidiomycota 3,263 2,995 268 5,994 (3,620 / 2,364 / 10)
Mucoromycotina 973 868 105 914 (689 / 212 / 13)

Against v0.8.1:

  • Mucoromycotina: 973 of 973 identical.
  • Basidiomycota: 202 loci go from high to medium (#167). 10 loci are marked family_unconfirmed (#170). One extra kept_both locus (GCA_017654745.1). No coordinate changes.
  • Ascomycota: 108 loci become undetermined (#138). 23 loci go from high to medium (#129). One extra kept_both locus (GCA_003706235.2). Three Pneumocystis genomes gain matMi from the corrected record (#302), and GCA_052323795.1 moves its outer span by 16.7 kb from that record. Every other span and gene set equals v0.8.1.
  • A determinism check (60 genomes run twice) agrees as sets. The order of genes_found can differ with the Python hash seed (1 genome in 60); #335 fixes this in this tag.

This tag also contains #335 and the empty-taxonomy record (#339), which are not in the frozen run's code stamp. Neither changes a call.

What changed in detection

  • Preset v0.9: v0.8.1 plus three report-only rules: --cross-family-policy keep_labelled (#255), --idiomorph-margin-policy separate (#145) and --scope-label-policy on (#170).
  • Preset v0.9.1: v0.9 plus three rules that lower a tier or withhold an idiomorph label: --weak-flank-cap-policy on (#129), --short-fragment-vote-policy undetermined (#138) and --single-region-cap-policy on (#167).
  • Opt-in rules in no preset: --weak-fragment-cap-policy (#275), --weak-coverage-noise-policy (#149; acts only on a determined idiomorph with best core-gene coverage of at least 50%), --strong-single-gene-policy and --confidence-cap-policy.
  • Report only: --withheld-detail-policy on lists the genes of each withheld locus (#313). The label tables gain a nearest_reference column (#311). The Basidiomycota defective flag in the clean-run tables becomes a model check (#304).
  • Speed: an opt-in tblastn filtering policy for the slowest genomes (#276, MATPREDICT_TBLASTN_SEG*). The published results do not depend on it. Curated YAML loads with libyaml's C loader, with identical results on 823 genomes (#292).

Raw reads and tools

  • Gate causes (#195, #196): NOT_TYPABLE for homothallic species and silent cassettes, zygosity, and UNVALIDATED:cause_unchecked.
  • Thin-evidence species (one strain or one to three runs) are typed and capped at UNVALIDATED (#327).
  • Clone groups use solid containment (#320).
  • A. fumigatus population report: 4,849 isolates, MAT1-1 in 50.4% of clones (#326).
  • Sketch store: datasets/reads/sketch_store/.
  • The website at https://mat.fungalgenomes.org/ shows the v0.9.0 data: 22,979 NCBI genomes, 20,871 called, 27,105 loci.

Known limits (tracked, not changed in this release)

  • #324: seven Ceratocystis fimbriata genomes stay uncalled in v0.9.0. The cause was a taxonomy cache miss on compute nodes. An offline taxonomy snapshot is planned for v0.10.0 (#342).
  • Some clades have no close reference record, so their MAT genes model short (Pyrenophora, Venturia, Helotiales, Diaporthales and others). Reference curation is tracked in #331.
  • #149: the weak-coverage rule is held out of every preset until a run of its own.
  • #172, #290 and #287 continue in v0.10.0.

Install

  • Docker image ghcr.io/stajichlab/matpredict:0.9.0 (also 0.9 and latest), built when this release is published.
  • Source: this tag. Cite with CITATION.cff (version 0.9.0, released 2026-11-12).

What's Changed

  • Reads typing: PopSeq availability survey, cap 300 expansion, C. albicans zygosity gate, released cassette species, wave 3 setup by @hyphaltip in #282
  • tblastn: opt-in filtering policy for the slowest genomes (#276) by @hyphaltip in #284
  • Docs: reference page for detect options, policies, presets and environment variables by @hyphaltip in #286
  • detect: opt-in weak-fragment tier cap for Ascomycota:MAT (#275) by @hyphaltip in #288
  • Panels: pad short loci with genome flank (Rhodotorula, Mucorales) for wave 3 by @hyphaltip in #283
  • Docs: refresh the options page; record why the polished-vote flag was not built (#275) by @hyphaltip in #289
  • Parse curated YAML with libyaml's C loader; identical results on 823 genomes (#287) by @hyphaltip in #292
  • Cross-family policy keep_labelled: keep a labelled call that an unlabelled one displaced (#255) by @hyphaltip in #293
  • Report a single-candidate identity gap apart from the vote margin (--idiomorph-margin-policy, #145) by @hyphaltip in #294
  • Add CLAUDE.md: working rules for agents and contributors by @hyphaltip in #295
  • Weak-flank cap: a high call whose every flank gene is weak drops to medium (--weak-flank-cap-policy, #129) by @hyphaltip in #296
  • Short-fragment vote: a close vote on short fragments is reported undetermined (--short-fragment-vote-policy, #138) by @hyphaltip in #297
  • Reads results that missed #283: expansion merged into wave1/2, wave 3-4 results, genus rescue, retry safeguards by @hyphaltip in #298
  • Label a Basidiomycota MAT call outside its scope on STE3/PAN6/RPL39 alone as unverified (--scope-label-policy, #170) by @hyphaltip in #299
  • Proposal: the nearest_reference column for the idiomorph labels (#200) by @hyphaltip in #300
  • Landing page: Fola and A. fumigatus read-typing charts, tables and notes (#172) by @hyphaltip in #301
  • db: correct the Pneumocystis carinii B80 matMi span by one base (71 aa ORF) (#135) by @hyphaltip in #302
  • Single-region cap: a high Basidiomycota call on one core region and no polished flank drops to medium (--single-region-cap-policy, #167) by @hyphaltip in #303
  • Tables: the Basidiomycota defective flag is a model check; low-confidence models listed apart (#168) by @hyphaltip in #304
  • Weak-coverage noise: an unpolished gene covering under 30% of its reference no longer caps the tier (--weak-coverage-noise-policy, #149) by @hyphaltip in #306
  • Notes: MAT loci not recovered in the v0.8.1 run, and what could improve them by @hyphaltip in #307
  • Preset v0.9: v0.8.1 plus the three report-only rules by @hyphaltip in #308
  • Notes: the two-stage tblastn search measured: slower and not identical (#287) by @hyphaltip in #309
  • Reads round 3: cap 700, Ophidiomyces panel fix, wave 5 by @hyphaltip in #310
  • Label tables: the nearest_reference column, both core genes listed (#200) by @hyphaltip in #311
  • Candidates: Exophiala dermatitidis MAT1-1 and MAT1-2 (Chaetothyriales); literature note for Orbiliomycetes and Chaetothyriales by @hyphaltip in #312
  • Sketch store: one reusable read sketch per isolate for MAT, target screens and population structure by @hyphaltip in #315
  • Report-only: --withheld-detail-policy lists the genes of each withheld locus by @hyphaltip in #313
  • Notes: the one-polished-gene measurement (edge-case action 5) by @hyphaltip in #314
  • Preset v0.9.1: v0.9 plus the weak-flank cap, the short-fragment vote and the single-region cap by @hyphaltip in #316
  • Reads site: study accessions link to their NCBI BioProject, with the project title on hover by @hyphaltip in #317
  • Release prep v0.9.0: version strings, draft changelog header, browser preset v0.9.1 by @hyphaltip in #318
  • Sketch store: trim a broken ENA stream to whole read pairs; retry partial downloads by @hyphaltip in #319
  • Reads clone groups by solid containment: 202 species, calibrated on same-strain pairs by @hyphaltip in #320
  • Notes: junction-panel and cannot-be-typed design for #195 and #196 (proposal for ruling) by @hyphaltip in #321
  • Reads gate causes for v0.9.0 (#195, #196): not typable, zygosity, unchecked; cause table; site wording by @hyphaltip in #325
  • Reads: A. fumigatus population MAT report (4,849 isolates), MAT frequency, ENA FTP fallback by @hyphaltip in #326
  • Reads gate: type thin-evidence species (one strain or 1-3 runs) as UNVALIDATED instead of holding them by @hyphaltip in #327
  • Thin-evidence species: top-up to cap 700 prepared for after the HPCC shutdown (expand_runs --species-file, append_stage.py, runbook) by @hyphaltip in #328
  • Sketch store: Starship/bafA prevalence, co-occurrence and gain/loss on the tree (starship_dynamics.py) by @hyphaltip in #329
  • baf family screen: bafA beyond the AF293-type allele (baf_family.py), report section 8, bafA wording corrected by @hyphaltip in #330
  • Weak-coverage noise (#149): act only on a determined idiomorph with best core coverage >= 50% by @hyphaltip in #332
  • Strain-set Starship table with the all-alleles bafA class; eAF strains (PRJNA991533) by @hyphaltip in #333
  • CHANGELOG: v0.9.0 definitive-run counts (SEG-off replacement chosen) by @hyphaltip in #334
  • Scoring: genes_found lists optional slot genes in roster order (reproducible report order) by @hyphaltip in #335
  • #290: per-tier FungiDB annotation agreement (script, test, note); no verdict changes v0.8.1 to v0.9.0 by @hyphaltip in #336
  • Exophiala NIH/UT8656 candidate: identification of the MAT1-2-1 gene supported by elimination (doc note only) by @hyphaltip in #338
  • #324: record an empty taxonomy lookup (routing_error); panel warm-up counts it and can stop the job by @hyphaltip in #339
  • Notes: decisions on the six open questions of the junction-panel design (#321) by @hyphaltip in #340
  • v0.9.0 release: results, default release v090, site data, README/About/landing (SEG-off replacement) by @hyphaltip in #337
  • CHANGELOG: v0.9.0 header, fixes moved out of Unreleased, missing entries by @hyphaltip in #346
  • CHANGELOG: date 0.9.0 as 2026-11-12 by @hyphaltip in #347
  • Pre-tag fixes: CITATION date-released, CHANGELOG preset sentence by @hyphaltip in #348

Full Changelog: v0.8.1...v0.9.0