chore: pmultiqc 0.0.46 and quantms-rescoring 0.0.24 (incorporates #714) - #719
Conversation
pmultiqc 0.0.45 -> 0.0.46 #714 bumped to 0.0.45, which fails every test_dda_id_* profile: ValueError: No pmultiqc plugin selected; skipping. AttributeError: module 'rich' has no attribute 'panel' Those profiles do not export an mzTab, so `--quantms-plugin` is never added and 0.0.45 raises instead of degrading. pmultiqc 0.0.46 is exactly the fix: "Allow successful execution without mzTab file" (bigbio/pmultiqc#688), "gracefully handle plugin execution errors" (#689) and "Support pmultiqc without mzTab" (#690). quantms-rescoring 0.0.21 -> 0.0.22 (8 references: 4 docker, 4 singularity) 0.0.21 is broken for multi-engine runs. On a comet+msgf merge it collapsed the Percolator feature table to four raw scores with a single global imputation constant; ~80% of PSMs in such a run are single-engine and those are ~45% decoy, so protein-level FDR never cleared 1% and EPIFANY returned "No proteins left after FDR filtering" (exit 8). 0.0.22 feeds Percolator the union of every engine's features with orientation-aware per-feature imputation and engine-source indicators. Validated on MSV000085836 (552 TMT fractions): ISOBARIC_WORKFLOW merged 41,391 proteins where 0.0.21 produced zero, and the full run yields +4.4% peptides / +0.6% protein groups at 1% FDR vs the comet-only reference. It also generalises to SAGE (comet+sage, msgf+sage, comet+msgf+sage), with the Sage feature set verified against a real SageAdapter idparquet. Single-engine runs are unchanged: the consensus path only activates for multi-engine merges, and the default remains search_engines=comet. CAVEAT: multi-engine consensus feeds Percolator explicit engine-source indicators, and engine source correlates strongly with decoy status. There is no stratified or entrapment calibration evidence yet that protein-level FDR stays calibrated under that mixture, so multi-engine should stay opt-in and be validated per dataset. This bump does not change any default.
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Heads-up on the rescoring pin here: 0.0.22 has a bug in the multi-engine path — Fix is up as quantms-rescoring#90 and should go out as 0.0.23. This does not block merging this PR for default usage: the failing code path only runs for multi-engine merges, and the quantms default remains |
|
Incorporates #714 by @yueqixuan (commit cherry-picked with authorship intact) and adds the two version bumps.
Why not just merge #714
#714 is currently red: it bumps pmultiqc to 0.0.45, which fails every
test_dda_id_*profile on both Nextflow versions:Those profiles don't export an mzTab, so
--quantms-pluginis never added, and 0.0.45 raises instead of degrading gracefully.pmultiqc 0.0.46 is precisely the fix — "Allow successful execution without mzTab file" (pmultiqc#688), "gracefully handle plugin execution errors" (#689), "Support pmultiqc without mzTab" (#690). So this PR keeps @yueqixuan's work (the bigbio MSGF jar path fix and the underscore→hyphen CLI flags, both correct) and moves the pin to 0.0.46 so CI can go green.
quantms-rescoring 0.0.21 → 0.0.22
8 references (4 docker, 4 singularity).
0.0.21 is broken for multi-engine runs. On a
comet,msgfmerge it collapsed the Percolator feature table to four raw scores with one global imputation constant. ~80% of PSMs in such a run are single-engine and those are ~45% decoy (vs ~8% for both-engine), so Percolator couldn't separate the decoy flood, protein FDR never cleared 1%, and EPIFANY returned "No proteins left after FDR filtering" (exit 8).0.0.22 feeds Percolator the union of every engine's numeric features with orientation-aware per-feature worst-case imputation and always-defined
CONSENSUS:<engine>indicators.Validated on MSV000085836 (552 TMT fractions):
ISOBARIC_WORKFLOWEnd-to-end vs the comet-only reference: +4.4% peptides, +0.6% protein groups at 1% FDR (323,198 → 337,494 peptides; 14,015 → 14,101 groups).
It also generalises to SAGE (
comet+sage,msgf+sage,comet+msgf+sage), with the Sage feature set verified against a real SageAdapter idparquet rather than inferred.Scope of risk
Single-engine runs are completely unaffected — the consensus path only activates for multi-engine merges, and the default stays
search_engines=comet. This PR changes no defaults.Caveat worth recording
Multi-engine consensus gives Percolator explicit engine-source indicators, and engine source correlates strongly with decoy status. There is no stratified or entrapment calibration evidence yet that protein-level FDR stays calibrated under that source-dependent mixture — an adversarial review flagged it as the one open concern. Multi-engine should stay opt-in and be validated per dataset before being relied on for production protein-level FDR.
Note on CI timing
ghcr.io/bigbio/quantms-rescoring:0.0.22is published; the-sifvariant was still building when this was opened. If a singularity job fails on a missing image, re-run it once the container sync completes.