Problem
Issue #2: DIA-NN parameters are generated in two different places:
- OpenMS parameters: generated by sdrf-pipelines (
parse_sdrf convert-openms)
- DIA-NN parameters: generated by quantms-utils (
quantmsutilsc dianncfg)
SDRF metadata like scan windows and per-run tolerances exists in the SDRF but must still be passed as command-line parameters.
Solution: Consolidate to sdrf-pipelines
Migrate all DIA-NN config generation to parse_sdrf convert-diann. This provides:
- Unified config flow: SDRF ->
parse_sdrf convert-diann -> diann_config.cfg + diann_filemap.tsv
- Per-run tolerance support:
diann_filemap.tsv contains per-file precursor/fragment tolerances
- plexDIA integration: Channel definitions generated from SDRF labels automatically
- Immunopeptidomics detection: Enzyme parsing detects unspecific cleavage
- Single source of truth: All parameter generation in one place
Tasks
- Commit and release sdrf-pipelines converter (Phase 1, #TBD_1)
- Update
GENERATE_CFG module to call parse_sdrf convert-diann instead of quantmsutilsc dianncfg
- Wire
diann_filemap.tsv into per-file processes (per-run tolerances)
- Deprecate
quantmsutilsc dianncfg with backwards compatibility period
- Update quantms-utils container to include sdrf-pipelines
Per-Run Mass Accuracy Support
Current: mass accuracy is either automatic or global.
New: diann_filemap.tsv provides per-file PrecursorMassTolerance and FragmentMassTolerance.
def mass_acc = meta.fragmentmasstolerance ? "--mass-acc ${meta.fragmentmasstolerance}" : ""
def mass_acc_ms1 = meta.precursormasstolerance ? "--mass-acc-ms1 ${meta.precursormasstolerance}" : ""
Test Plan
Dataset: PXD026600 (existing CI/CD), PXD039578 (plexDIA)
Problem
Issue #2: DIA-NN parameters are generated in two different places:
parse_sdrf convert-openms)quantmsutilsc dianncfg)SDRF metadata like scan windows and per-run tolerances exists in the SDRF but must still be passed as command-line parameters.
Solution: Consolidate to sdrf-pipelines
Migrate all DIA-NN config generation to
parse_sdrf convert-diann. This provides:parse_sdrf convert-diann->diann_config.cfg+diann_filemap.tsvdiann_filemap.tsvcontains per-file precursor/fragment tolerancesTasks
GENERATE_CFGmodule to callparse_sdrf convert-dianninstead ofquantmsutilsc dianncfgdiann_filemap.tsvinto per-file processes (per-run tolerances)quantmsutilsc dianncfgwith backwards compatibility periodPer-Run Mass Accuracy Support
Current: mass accuracy is either automatic or global.
New:
diann_filemap.tsvprovides per-filePrecursorMassToleranceandFragmentMassTolerance.Test Plan
parse_sdrf convert-diann— verify identical output toquantmsutilsc dianncfgdiann_filemap.tsvapplied in INDIVIDUAL_ANALYSISDataset: PXD026600 (existing CI/CD), PXD039578 (plexDIA)