diff --git a/build.gradle.kts b/build.gradle.kts index 3978007c1..ab2c18e58 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -130,7 +130,7 @@ val toObfuscate: Configuration by configurations.creating { val obfuscationLibs: Configuration by configurations.creating -val mixcrAlgoVersion = "4.3.0-215-tiny-things" +val mixcrAlgoVersion = "4.3.0-220-develop" val milibVersion = "3.0.0-1-master" val mitoolVersion = "" val repseqioVersion = "" diff --git a/regression/cli-help/align.txt b/regression/cli-help/align.txt index 2c56154c8..19958044a 100644 --- a/regression/cli-help/align.txt +++ b/regression/cli-help/align.txt @@ -6,8 +6,8 @@ Usage: mixcr align --preset [--strict-sample-sheet-matching] [--trimmin [--not-aligned-R2 ] [--not-parsed-I1 ] [--not-parsed-I2 ] [--not-parsed-R1 ] [--not-parsed-R2 ] [--species ] [--library ] - [--split-by-sample] [--dont-split-by-sample] [--sample-table sample_table.tsv] - [--sample-table-strict sample_table.tsv] [--dna] [--rna] + [--split-by-sample] [--dont-split-by-sample] [--sample-sheet sample_sheet.tsv] + [--sample-sheet-strict sample_sheet.tsv] [--dna] [--rna] [--floating-left-alignment-boundary []] [--rigid-left-alignment-boundary []] [--floating-right-alignment-boundary (|)] @@ -97,10 +97,10 @@ Builds alignments with V,D,J and C genes for input sequencing reads. library is used. One can also use external libraries --split-by-sample Split output alignments files by sample. --dont-split-by-sample Don't split output alignments files by sample. - --sample-table sample_table.tsv + --sample-sheet sample_sheet.tsv Loads sample table from a tab separated file (one substitution will be allowed during matching) - --sample-table-strict sample_table.tsv + --sample-sheet-strict sample_sheet.tsv Loads sample table from a tab separated file (strict matching will be used). --dna For DNA starting material. Setups V gene feature to align to diff --git a/regression/cli-help/analyze.txt b/regression/cli-help/analyze.txt index 47af65690..e2e8f9321 100644 --- a/regression/cli-help/analyze.txt +++ b/regression/cli-help/analyze.txt @@ -1,6 +1,6 @@ Usage: mixcr analyze [--add-step ] [--remove-step ] [-s ] [-b ] - [--split-by-sample] [--dont-split-by-sample] [--sample-table sample_table.tsv] - [--sample-table-strict sample_table.tsv] [--dna] [--rna] + [--split-by-sample] [--dont-split-by-sample] [--sample-sheet sample_sheet.tsv] + [--sample-sheet-strict sample_sheet.tsv] [--dna] [--rna] [--floating-left-alignment-boundary []] [--rigid-left-alignment-boundary []] [--floating-right-alignment-boundary (|)] @@ -61,10 +61,10 @@ Params for align command: library is used. One can also use external libraries --split-by-sample Split output alignments files by sample. --dont-split-by-sample Don't split output alignments files by sample. - --sample-table sample_table.tsv + --sample-sheet sample_sheet.tsv Loads sample table from a tab separated file (one substitution will be allowed during matching) - --sample-table-strict sample_table.tsv + --sample-sheet-strict sample_sheet.tsv Loads sample table from a tab separated file (strict matching will be used). --dna For DNA starting material. Setups V gene feature to align to diff --git a/regression/cli-help/exportPreset.txt b/regression/cli-help/exportPreset.txt index 090171910..f8a0ab9a5 100644 --- a/regression/cli-help/exportPreset.txt +++ b/regression/cli-help/exportPreset.txt @@ -1,6 +1,6 @@ Usage: mixcr exportPreset [--no-validation] [--add-step ] [--remove-step ] [-s ] [-b ] [--split-by-sample] [--dont-split-by-sample] - [--sample-table sample_table.tsv] [--sample-table-strict sample_table. + [--sample-sheet sample_sheet.tsv] [--sample-sheet-strict sample_sheet. tsv] [--dna] [--rna] [--floating-left-alignment-boundary []] [--rigid-left-alignment-boundary []] [--floating-right-alignment-boundary (|)] @@ -44,10 +44,10 @@ Params for align command: library is used. One can also use external libraries --split-by-sample Split output alignments files by sample. --dont-split-by-sample Don't split output alignments files by sample. - --sample-table sample_table.tsv + --sample-sheet sample_sheet.tsv Loads sample table from a tab separated file (one substitution will be allowed during matching) - --sample-table-strict sample_table.tsv + --sample-sheet-strict sample_sheet.tsv Loads sample table from a tab separated file (strict matching will be used). --dna For DNA starting material. Setups V gene feature to align to diff --git a/regression/presets/analyze/10x-5gex-cdr3.yaml b/regression/presets/analyze/10x-5gex-cdr3.yaml index 72a52d79f..66072d560 100644 --- a/regression/presets/analyze/10x-5gex-cdr3.yaml +++ b/regression/presets/analyze/10x-5gex-cdr3.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-5gex-full-length.yaml b/regression/presets/analyze/10x-5gex-full-length.yaml index a1ba5decb..5eb018c1b 100644 --- a/regression/presets/analyze/10x-5gex-full-length.yaml +++ b/regression/presets/analyze/10x-5gex-full-length.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-5gex.yaml b/regression/presets/analyze/10x-5gex.yaml index 72a52d79f..66072d560 100644 --- a/regression/presets/analyze/10x-5gex.yaml +++ b/regression/presets/analyze/10x-5gex.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-bcr-full-length.yaml b/regression/presets/analyze/10x-vdj-bcr-full-length.yaml index 0e93173bd..0d6d6ac77 100644 --- a/regression/presets/analyze/10x-vdj-bcr-full-length.yaml +++ b/regression/presets/analyze/10x-vdj-bcr-full-length.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-bcr.yaml b/regression/presets/analyze/10x-vdj-bcr.yaml index d7ba53773..5c5891d8a 100644 --- a/regression/presets/analyze/10x-vdj-bcr.yaml +++ b/regression/presets/analyze/10x-vdj-bcr.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-tcr-alias-multi-barcode-test.yaml b/regression/presets/analyze/10x-vdj-tcr-alias-multi-barcode-test.yaml index 5aa457fc6..9a0d9b73c 100644 --- a/regression/presets/analyze/10x-vdj-tcr-alias-multi-barcode-test.yaml +++ b/regression/presets/analyze/10x-vdj-tcr-alias-multi-barcode-test.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-tcr-full-length.yaml b/regression/presets/analyze/10x-vdj-tcr-full-length.yaml index 0e93173bd..0d6d6ac77 100644 --- a/regression/presets/analyze/10x-vdj-tcr-full-length.yaml +++ b/regression/presets/analyze/10x-vdj-tcr-full-length.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-tcr-multi-barcode-test.yaml b/regression/presets/analyze/10x-vdj-tcr-multi-barcode-test.yaml index f6dc7b8d5..74964f59b 100644 --- a/regression/presets/analyze/10x-vdj-tcr-multi-barcode-test.yaml +++ b/regression/presets/analyze/10x-vdj-tcr-multi-barcode-test.yaml @@ -21,6 +21,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-tcr-qc-test.yaml b/regression/presets/analyze/10x-vdj-tcr-qc-test.yaml index e6cf555bb..4e7f948e5 100644 --- a/regression/presets/analyze/10x-vdj-tcr-qc-test.yaml +++ b/regression/presets/analyze/10x-vdj-tcr-qc-test.yaml @@ -8,9 +8,6 @@ pipeline: - assemble - assembleContigs - exportClones -validation: -- type: TagPatternShouldContainsTagType - tagType: Cell align: species: "" libraryName: default @@ -26,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustContainTagType + tagType: Cell splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj-tcr.yaml b/regression/presets/analyze/10x-vdj-tcr.yaml index d7ba53773..5c5891d8a 100644 --- a/regression/presets/analyze/10x-vdj-tcr.yaml +++ b/regression/presets/analyze/10x-vdj-tcr.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/10x-vdj.yaml b/regression/presets/analyze/10x-vdj.yaml index d7ba53773..5c5891d8a 100644 --- a/regression/presets/analyze/10x-vdj.yaml +++ b/regression/presets/analyze/10x-vdj.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/abhelix-human-bcr-cdr3.yaml b/regression/presets/analyze/abhelix-human-bcr-cdr3.yaml index b301551ee..c919cafd3 100644 --- a/regression/presets/analyze/abhelix-human-bcr-cdr3.yaml +++ b/regression/presets/analyze/abhelix-human-bcr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/abhelix-human-bcr-full-length.yaml b/regression/presets/analyze/abhelix-human-bcr-full-length.yaml index 318240592..756e1ddbf 100644 --- a/regression/presets/analyze/abhelix-human-bcr-full-length.yaml +++ b/regression/presets/analyze/abhelix-human-bcr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/abhelix-human-tcr-cdr3.yaml b/regression/presets/analyze/abhelix-human-tcr-cdr3.yaml index b301551ee..c919cafd3 100644 --- a/regression/presets/analyze/abhelix-human-tcr-cdr3.yaml +++ b/regression/presets/analyze/abhelix-human-tcr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/abhelix-human-tcr-full-length.yaml b/regression/presets/analyze/abhelix-human-tcr-full-length.yaml index 318240592..756e1ddbf 100644 --- a/regression/presets/analyze/abhelix-human-tcr-full-length.yaml +++ b/regression/presets/analyze/abhelix-human-tcr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/abhelix-human.yaml b/regression/presets/analyze/abhelix-human.yaml index 318240592..756e1ddbf 100644 --- a/regression/presets/analyze/abhelix-human.yaml +++ b/regression/presets/analyze/abhelix-human.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ampliseq-tcrb-plus-cdr3.yaml b/regression/presets/analyze/ampliseq-tcrb-plus-cdr3.yaml index 04c4a1615..126cb4788 100644 --- a/regression/presets/analyze/ampliseq-tcrb-plus-cdr3.yaml +++ b/regression/presets/analyze/ampliseq-tcrb-plus-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ampliseq-tcrb-plus-full-length.yaml b/regression/presets/analyze/ampliseq-tcrb-plus-full-length.yaml index e4f7b0a26..30549f47e 100644 --- a/regression/presets/analyze/ampliseq-tcrb-plus-full-length.yaml +++ b/regression/presets/analyze/ampliseq-tcrb-plus-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ampliseq-tcrb-plus.yaml b/regression/presets/analyze/ampliseq-tcrb-plus.yaml index 04c4a1615..126cb4788 100644 --- a/regression/presets/analyze/ampliseq-tcrb-plus.yaml +++ b/regression/presets/analyze/ampliseq-tcrb-plus.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ampliseq-tcrb-sr-cdr3.yaml b/regression/presets/analyze/ampliseq-tcrb-sr-cdr3.yaml index e4f7b0a26..30549f47e 100644 --- a/regression/presets/analyze/ampliseq-tcrb-sr-cdr3.yaml +++ b/regression/presets/analyze/ampliseq-tcrb-sr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ampliseq-tcrb-sr.yaml b/regression/presets/analyze/ampliseq-tcrb-sr.yaml index e4f7b0a26..30549f47e 100644 --- a/regression/presets/analyze/ampliseq-tcrb-sr.yaml +++ b/regression/presets/analyze/ampliseq-tcrb-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-bcr-full-length.yaml b/regression/presets/analyze/bd-rhapsody-human-bcr-full-length.yaml index 2497e7b70..fc3cda3c0 100644 --- a/regression/presets/analyze/bd-rhapsody-human-bcr-full-length.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-bcr-full-length.yaml @@ -22,6 +22,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-bcr-v1.yaml b/regression/presets/analyze/bd-rhapsody-human-bcr-v1.yaml index 488dc993b..219b8ff5d 100644 --- a/regression/presets/analyze/bd-rhapsody-human-bcr-v1.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-bcr-v1.yaml @@ -27,6 +27,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-bcr-v2.yaml b/regression/presets/analyze/bd-rhapsody-human-bcr-v2.yaml index 50839cc4e..195375598 100644 --- a/regression/presets/analyze/bd-rhapsody-human-bcr-v2.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-bcr-v2.yaml @@ -30,6 +30,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-tcr-full-length.yaml b/regression/presets/analyze/bd-rhapsody-human-tcr-full-length.yaml index a6737ab5c..80884aab2 100644 --- a/regression/presets/analyze/bd-rhapsody-human-tcr-full-length.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-tcr-full-length.yaml @@ -22,6 +22,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-tcr-v1.yaml b/regression/presets/analyze/bd-rhapsody-human-tcr-v1.yaml index c9c884eb7..aecd3501b 100644 --- a/regression/presets/analyze/bd-rhapsody-human-tcr-v1.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-tcr-v1.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-human-tcr-v2.yaml b/regression/presets/analyze/bd-rhapsody-human-tcr-v2.yaml index 48da56d53..c8d7a4ae2 100644 --- a/regression/presets/analyze/bd-rhapsody-human-tcr-v2.yaml +++ b/regression/presets/analyze/bd-rhapsody-human-tcr-v2.yaml @@ -27,6 +27,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-bcr-full-length.yaml b/regression/presets/analyze/bd-rhapsody-mouse-bcr-full-length.yaml index e8c0cd065..a5d1d9b87 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-bcr-full-length.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-bcr-full-length.yaml @@ -22,6 +22,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-bcr-v1.yaml b/regression/presets/analyze/bd-rhapsody-mouse-bcr-v1.yaml index 39e18cb85..7806cd57e 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-bcr-v1.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-bcr-v1.yaml @@ -31,6 +31,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-bcr-v2.yaml b/regression/presets/analyze/bd-rhapsody-mouse-bcr-v2.yaml index f51ef8df0..8f29dd33f 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-bcr-v2.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-bcr-v2.yaml @@ -34,6 +34,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-tcr-full-length.yaml b/regression/presets/analyze/bd-rhapsody-mouse-tcr-full-length.yaml index 238b19516..886ca38cf 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-tcr-full-length.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-tcr-full-length.yaml @@ -22,6 +22,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-tcr-v1.yaml b/regression/presets/analyze/bd-rhapsody-mouse-tcr-v1.yaml index 658fb9178..df8c7a053 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-tcr-v1.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-tcr-v1.yaml @@ -25,6 +25,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/bd-rhapsody-mouse-tcr-v2.yaml b/regression/presets/analyze/bd-rhapsody-mouse-tcr-v2.yaml index 5d2a439ec..795f8ab1a 100644 --- a/regression/presets/analyze/bd-rhapsody-mouse-tcr-v2.yaml +++ b/regression/presets/analyze/bd-rhapsody-mouse-tcr-v2.yaml @@ -28,6 +28,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/biomed2-human-bcr-cdr3.yaml b/regression/presets/analyze/biomed2-human-bcr-cdr3.yaml index 9c1bbe189..6d3ea431c 100644 --- a/regression/presets/analyze/biomed2-human-bcr-cdr3.yaml +++ b/regression/presets/analyze/biomed2-human-bcr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/biomed2-human-bcr-full-length.yaml b/regression/presets/analyze/biomed2-human-bcr-full-length.yaml index ba1c4e8c5..342b5e662 100644 --- a/regression/presets/analyze/biomed2-human-bcr-full-length.yaml +++ b/regression/presets/analyze/biomed2-human-bcr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/biomed2-human-igh.yaml b/regression/presets/analyze/biomed2-human-igh.yaml index ba1c4e8c5..342b5e662 100644 --- a/regression/presets/analyze/biomed2-human-igh.yaml +++ b/regression/presets/analyze/biomed2-human-igh.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/biomed2-human-igl-igk.yaml b/regression/presets/analyze/biomed2-human-igl-igk.yaml index deb370d4e..2b4ced102 100644 --- a/regression/presets/analyze/biomed2-human-igl-igk.yaml +++ b/regression/presets/analyze/biomed2-human-igl-igk.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/biomed2-human-tcr.yaml b/regression/presets/analyze/biomed2-human-tcr.yaml index deb370d4e..2b4ced102 100644 --- a/regression/presets/analyze/biomed2-human-tcr.yaml +++ b/regression/presets/analyze/biomed2-human-tcr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/cellecta-air-human.yaml b/regression/presets/analyze/cellecta-air-human.yaml index e15e6e00b..66675886a 100644 --- a/regression/presets/analyze/cellecta-air-human.yaml +++ b/regression/presets/analyze/cellecta-air-human.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/exome-seq.yaml b/regression/presets/analyze/exome-seq.yaml index 91b37c45f..a1d54ff98 100644 --- a/regression/presets/analyze/exome-seq.yaml +++ b/regression/presets/analyze/exome-seq.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/flairr-seq.yaml b/regression/presets/analyze/flairr-seq.yaml index a45773921..d6928bf6c 100644 --- a/regression/presets/analyze/flairr-seq.yaml +++ b/regression/presets/analyze/flairr-seq.yaml @@ -5,9 +5,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: "" libraryName: default @@ -24,6 +21,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: true limit: null parameters: diff --git a/regression/presets/analyze/generic-amplicon-with-umi.yaml b/regression/presets/analyze/generic-amplicon-with-umi.yaml index 7fda0bec7..f27209050 100644 --- a/regression/presets/analyze/generic-amplicon-with-umi.yaml +++ b/regression/presets/analyze/generic-amplicon-with-umi.yaml @@ -9,9 +9,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: "" libraryName: default @@ -27,6 +24,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-amplicon.yaml b/regression/presets/analyze/generic-amplicon.yaml index dde57855b..bdbf2bc63 100644 --- a/regression/presets/analyze/generic-amplicon.yaml +++ b/regression/presets/analyze/generic-amplicon.yaml @@ -22,6 +22,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-bcr-amplicon-umi.yaml b/regression/presets/analyze/generic-bcr-amplicon-umi.yaml index 7fda0bec7..f27209050 100644 --- a/regression/presets/analyze/generic-bcr-amplicon-umi.yaml +++ b/regression/presets/analyze/generic-bcr-amplicon-umi.yaml @@ -9,9 +9,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: "" libraryName: default @@ -27,6 +24,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-bcr-amplicon.yaml b/regression/presets/analyze/generic-bcr-amplicon.yaml index dde57855b..bdbf2bc63 100644 --- a/regression/presets/analyze/generic-bcr-amplicon.yaml +++ b/regression/presets/analyze/generic-bcr-amplicon.yaml @@ -22,6 +22,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-ht-single-cell-amplicon-with-umi.yaml b/regression/presets/analyze/generic-ht-single-cell-amplicon-with-umi.yaml index 23f84826f..383d2df4a 100644 --- a/regression/presets/analyze/generic-ht-single-cell-amplicon-with-umi.yaml +++ b/regression/presets/analyze/generic-ht-single-cell-amplicon-with-umi.yaml @@ -23,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-ht-single-cell-amplicon.yaml b/regression/presets/analyze/generic-ht-single-cell-amplicon.yaml index 346af5f4c..6aa60230d 100644 --- a/regression/presets/analyze/generic-ht-single-cell-amplicon.yaml +++ b/regression/presets/analyze/generic-ht-single-cell-amplicon.yaml @@ -23,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-ht-single-cell-fragmented-with-umi.yaml b/regression/presets/analyze/generic-ht-single-cell-fragmented-with-umi.yaml index cbe1af52e..215d41dc5 100644 --- a/regression/presets/analyze/generic-ht-single-cell-fragmented-with-umi.yaml +++ b/regression/presets/analyze/generic-ht-single-cell-fragmented-with-umi.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-ht-single-cell-fragmented.yaml b/regression/presets/analyze/generic-ht-single-cell-fragmented.yaml index 84a7fd480..6ef312abe 100644 --- a/regression/presets/analyze/generic-ht-single-cell-fragmented.yaml +++ b/regression/presets/analyze/generic-ht-single-cell-fragmented.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-lt-single-cell-amplicon-with-umi.yaml b/regression/presets/analyze/generic-lt-single-cell-amplicon-with-umi.yaml index 65dd96c3f..c33e91abc 100644 --- a/regression/presets/analyze/generic-lt-single-cell-amplicon-with-umi.yaml +++ b/regression/presets/analyze/generic-lt-single-cell-amplicon-with-umi.yaml @@ -23,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-lt-single-cell-amplicon.yaml b/regression/presets/analyze/generic-lt-single-cell-amplicon.yaml index 29195c942..ae1bd2f5a 100644 --- a/regression/presets/analyze/generic-lt-single-cell-amplicon.yaml +++ b/regression/presets/analyze/generic-lt-single-cell-amplicon.yaml @@ -23,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-lt-single-cell-fragmented-with-umi.yaml b/regression/presets/analyze/generic-lt-single-cell-fragmented-with-umi.yaml index f3fce6fbc..fdda5bf2c 100644 --- a/regression/presets/analyze/generic-lt-single-cell-fragmented-with-umi.yaml +++ b/regression/presets/analyze/generic-lt-single-cell-fragmented-with-umi.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-lt-single-cell-fragmented.yaml b/regression/presets/analyze/generic-lt-single-cell-fragmented.yaml index 6e11cadb6..0fc15595c 100644 --- a/regression/presets/analyze/generic-lt-single-cell-fragmented.yaml +++ b/regression/presets/analyze/generic-lt-single-cell-fragmented.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-single-cell-gex-with-umi.yaml b/regression/presets/analyze/generic-single-cell-gex-with-umi.yaml index da04433f9..26c995ad9 100644 --- a/regression/presets/analyze/generic-single-cell-gex-with-umi.yaml +++ b/regression/presets/analyze/generic-single-cell-gex-with-umi.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-single-cell-gex.yaml b/regression/presets/analyze/generic-single-cell-gex.yaml index 2f6b7766c..83103903b 100644 --- a/regression/presets/analyze/generic-single-cell-gex.yaml +++ b/regression/presets/analyze/generic-single-cell-gex.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-tcr-amplicon-separate-samples-umi.yaml b/regression/presets/analyze/generic-tcr-amplicon-separate-samples-umi.yaml index 62ce9b11b..53a8aedea 100644 --- a/regression/presets/analyze/generic-tcr-amplicon-separate-samples-umi.yaml +++ b/regression/presets/analyze/generic-tcr-amplicon-separate-samples-umi.yaml @@ -9,9 +9,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: "" libraryName: default @@ -27,6 +24,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: true limit: null parameters: diff --git a/regression/presets/analyze/generic-tcr-amplicon-umi.yaml b/regression/presets/analyze/generic-tcr-amplicon-umi.yaml index 7fda0bec7..f27209050 100644 --- a/regression/presets/analyze/generic-tcr-amplicon-umi.yaml +++ b/regression/presets/analyze/generic-tcr-amplicon-umi.yaml @@ -9,9 +9,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: "" libraryName: default @@ -27,6 +24,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/generic-tcr-amplicon.yaml b/regression/presets/analyze/generic-tcr-amplicon.yaml index dde57855b..bdbf2bc63 100644 --- a/regression/presets/analyze/generic-tcr-amplicon.yaml +++ b/regression/presets/analyze/generic-tcr-amplicon.yaml @@ -22,6 +22,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/han-et-al-2014.yaml b/regression/presets/analyze/han-et-al-2014.yaml index f7552ed94..3a6d91a1c 100644 --- a/regression/presets/analyze/han-et-al-2014.yaml +++ b/regression/presets/analyze/han-et-al-2014.yaml @@ -23,6 +23,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-dna-igh-lr.yaml b/regression/presets/analyze/irepertoire-human-dna-igh-lr.yaml index 477095cdb..b0f087a45 100644 --- a/regression/presets/analyze/irepertoire-human-dna-igh-lr.yaml +++ b/regression/presets/analyze/irepertoire-human-dna-igh-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-dna-igh-sr.yaml b/regression/presets/analyze/irepertoire-human-dna-igh-sr.yaml index 2eff35d61..a954c22c4 100644 --- a/regression/presets/analyze/irepertoire-human-dna-igh-sr.yaml +++ b/regression/presets/analyze/irepertoire-human-dna-igh-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-dna-trb-lr.yaml b/regression/presets/analyze/irepertoire-human-dna-trb-lr.yaml index 477095cdb..b0f087a45 100644 --- a/regression/presets/analyze/irepertoire-human-dna-trb-lr.yaml +++ b/regression/presets/analyze/irepertoire-human-dna-trb-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-dna-trb-sr.yaml b/regression/presets/analyze/irepertoire-human-dna-trb-sr.yaml index 2eff35d61..a954c22c4 100644 --- a/regression/presets/analyze/irepertoire-human-dna-trb-sr.yaml +++ b/regression/presets/analyze/irepertoire-human-dna-trb-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-rna-bcr-lr.yaml b/regression/presets/analyze/irepertoire-human-rna-bcr-lr.yaml index ec1a75f40..8c9f9cc79 100644 --- a/regression/presets/analyze/irepertoire-human-rna-bcr-lr.yaml +++ b/regression/presets/analyze/irepertoire-human-rna-bcr-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-rna-bcr-sr.yaml b/regression/presets/analyze/irepertoire-human-rna-bcr-sr.yaml index b301551ee..c919cafd3 100644 --- a/regression/presets/analyze/irepertoire-human-rna-bcr-sr.yaml +++ b/regression/presets/analyze/irepertoire-human-rna-bcr-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-rna-tcr-lr.yaml b/regression/presets/analyze/irepertoire-human-rna-tcr-lr.yaml index ec1a75f40..8c9f9cc79 100644 --- a/regression/presets/analyze/irepertoire-human-rna-tcr-lr.yaml +++ b/regression/presets/analyze/irepertoire-human-rna-tcr-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-human-rna-tcr-sr.yaml b/regression/presets/analyze/irepertoire-human-rna-tcr-sr.yaml index b301551ee..c919cafd3 100644 --- a/regression/presets/analyze/irepertoire-human-rna-tcr-sr.yaml +++ b/regression/presets/analyze/irepertoire-human-rna-tcr-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-mouse-rna-bcr-lr.yaml b/regression/presets/analyze/irepertoire-mouse-rna-bcr-lr.yaml index 25516df70..8b11bad73 100644 --- a/regression/presets/analyze/irepertoire-mouse-rna-bcr-lr.yaml +++ b/regression/presets/analyze/irepertoire-mouse-rna-bcr-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-mouse-rna-bcr-sr.yaml b/regression/presets/analyze/irepertoire-mouse-rna-bcr-sr.yaml index b13f67e45..137568335 100644 --- a/regression/presets/analyze/irepertoire-mouse-rna-bcr-sr.yaml +++ b/regression/presets/analyze/irepertoire-mouse-rna-bcr-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-mouse-rna-tcr-lr.yaml b/regression/presets/analyze/irepertoire-mouse-rna-tcr-lr.yaml index 25516df70..8b11bad73 100644 --- a/regression/presets/analyze/irepertoire-mouse-rna-tcr-lr.yaml +++ b/regression/presets/analyze/irepertoire-mouse-rna-tcr-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-mouse-rna-tcr-sr.yaml b/regression/presets/analyze/irepertoire-mouse-rna-tcr-sr.yaml index b13f67e45..137568335 100644 --- a/regression/presets/analyze/irepertoire-mouse-rna-tcr-sr.yaml +++ b/regression/presets/analyze/irepertoire-mouse-rna-tcr-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-human-dna-lr.yaml b/regression/presets/analyze/irepertoire-repseq-human-dna-lr.yaml index 477095cdb..b0f087a45 100644 --- a/regression/presets/analyze/irepertoire-repseq-human-dna-lr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-human-dna-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-human-dna-sr.yaml b/regression/presets/analyze/irepertoire-repseq-human-dna-sr.yaml index 2eff35d61..a954c22c4 100644 --- a/regression/presets/analyze/irepertoire-repseq-human-dna-sr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-human-dna-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-human-lr.yaml b/regression/presets/analyze/irepertoire-repseq-human-lr.yaml index ec1a75f40..8c9f9cc79 100644 --- a/regression/presets/analyze/irepertoire-repseq-human-lr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-human-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-human-sr.yaml b/regression/presets/analyze/irepertoire-repseq-human-sr.yaml index b301551ee..c919cafd3 100644 --- a/regression/presets/analyze/irepertoire-repseq-human-sr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-human-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-mouse-lr.yaml b/regression/presets/analyze/irepertoire-repseq-mouse-lr.yaml index 25516df70..8b11bad73 100644 --- a/regression/presets/analyze/irepertoire-repseq-mouse-lr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-mouse-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-mouse-sr.yaml b/regression/presets/analyze/irepertoire-repseq-mouse-sr.yaml index b13f67e45..137568335 100644 --- a/regression/presets/analyze/irepertoire-repseq-mouse-sr.yaml +++ b/regression/presets/analyze/irepertoire-repseq-mouse-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-plus-human.yaml b/regression/presets/analyze/irepertoire-repseq-plus-human.yaml index ec1a75f40..8c9f9cc79 100644 --- a/regression/presets/analyze/irepertoire-repseq-plus-human.yaml +++ b/regression/presets/analyze/irepertoire-repseq-plus-human.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/irepertoire-repseq-plus-mouse.yaml b/regression/presets/analyze/irepertoire-repseq-plus-mouse.yaml index 25516df70..8b11bad73 100644 --- a/regression/presets/analyze/irepertoire-repseq-plus-mouse.yaml +++ b/regression/presets/analyze/irepertoire-repseq-plus-mouse.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/mikelov-et-al-2021.yaml b/regression/presets/analyze/mikelov-et-al-2021.yaml index 0295843dd..f7dafa147 100644 --- a/regression/presets/analyze/mikelov-et-al-2021.yaml +++ b/regression/presets/analyze/mikelov-et-al-2021.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -48,6 +45,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-7genes-dna-multiplex.yaml b/regression/presets/analyze/milab-human-7genes-dna-multiplex.yaml index fb6cc0888..b76d33511 100644 --- a/regression/presets/analyze/milab-human-7genes-dna-multiplex.yaml +++ b/regression/presets/analyze/milab-human-7genes-dna-multiplex.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-bcr-multiplex-cdr3.yaml b/regression/presets/analyze/milab-human-bcr-multiplex-cdr3.yaml index fdb403075..4551ecdfb 100644 --- a/regression/presets/analyze/milab-human-bcr-multiplex-cdr3.yaml +++ b/regression/presets/analyze/milab-human-bcr-multiplex-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-bcr-multiplex-full-length.yaml b/regression/presets/analyze/milab-human-bcr-multiplex-full-length.yaml index 66ad0d806..0fac1e649 100644 --- a/regression/presets/analyze/milab-human-bcr-multiplex-full-length.yaml +++ b/regression/presets/analyze/milab-human-bcr-multiplex-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-ig-rna-multiplex.yaml b/regression/presets/analyze/milab-human-ig-rna-multiplex.yaml index 66ad0d806..0fac1e649 100644 --- a/regression/presets/analyze/milab-human-ig-rna-multiplex.yaml +++ b/regression/presets/analyze/milab-human-ig-rna-multiplex.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-dna-multiplex-cdr3.yaml b/regression/presets/analyze/milab-human-tcr-dna-multiplex-cdr3.yaml index fb6cc0888..b76d33511 100644 --- a/regression/presets/analyze/milab-human-tcr-dna-multiplex-cdr3.yaml +++ b/regression/presets/analyze/milab-human-tcr-dna-multiplex-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-dna-multiplex.yaml b/regression/presets/analyze/milab-human-tcr-dna-multiplex.yaml index fb6cc0888..b76d33511 100644 --- a/regression/presets/analyze/milab-human-tcr-dna-multiplex.yaml +++ b/regression/presets/analyze/milab-human-tcr-dna-multiplex.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-rna-multiplex-cdr3.yaml b/regression/presets/analyze/milab-human-tcr-rna-multiplex-cdr3.yaml index 7663e2c30..4bb0a58f4 100644 --- a/regression/presets/analyze/milab-human-tcr-rna-multiplex-cdr3.yaml +++ b/regression/presets/analyze/milab-human-tcr-rna-multiplex-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-rna-multiplex.yaml b/regression/presets/analyze/milab-human-tcr-rna-multiplex.yaml index 7663e2c30..4bb0a58f4 100644 --- a/regression/presets/analyze/milab-human-tcr-rna-multiplex.yaml +++ b/regression/presets/analyze/milab-human-tcr-rna-multiplex.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-rna-race-cdr3.yaml b/regression/presets/analyze/milab-human-tcr-rna-race-cdr3.yaml index c7cc67290..801d8ca5d 100644 --- a/regression/presets/analyze/milab-human-tcr-rna-race-cdr3.yaml +++ b/regression/presets/analyze/milab-human-tcr-rna-race-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-rna-race-full-length.yaml b/regression/presets/analyze/milab-human-tcr-rna-race-full-length.yaml index 8f23da82d..733759bae 100644 --- a/regression/presets/analyze/milab-human-tcr-rna-race-full-length.yaml +++ b/regression/presets/analyze/milab-human-tcr-rna-race-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-human-tcr-rna-race.yaml b/regression/presets/analyze/milab-human-tcr-rna-race.yaml index 8f23da82d..733759bae 100644 --- a/regression/presets/analyze/milab-human-tcr-rna-race.yaml +++ b/regression/presets/analyze/milab-human-tcr-rna-race.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-mouse-tcr-rna-race-cdr3.yaml b/regression/presets/analyze/milab-mouse-tcr-rna-race-cdr3.yaml index ff6c8f164..a78d1c9eb 100644 --- a/regression/presets/analyze/milab-mouse-tcr-rna-race-cdr3.yaml +++ b/regression/presets/analyze/milab-mouse-tcr-rna-race-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-mouse-tcr-rna-race-full-length.yaml b/regression/presets/analyze/milab-mouse-tcr-rna-race-full-length.yaml index 988bbffe5..2a3e0b98a 100644 --- a/regression/presets/analyze/milab-mouse-tcr-rna-race-full-length.yaml +++ b/regression/presets/analyze/milab-mouse-tcr-rna-race-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/milab-mouse-tcr-rna-race.yaml b/regression/presets/analyze/milab-mouse-tcr-rna-race.yaml index 988bbffe5..2a3e0b98a 100644 --- a/regression/presets/analyze/milab-mouse-tcr-rna-race.yaml +++ b/regression/presets/analyze/milab-mouse-tcr-rna-race.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-bcr-cdr3.yaml b/regression/presets/analyze/nebnext-human-bcr-cdr3.yaml index 16d0726d8..820ce11eb 100644 --- a/regression/presets/analyze/nebnext-human-bcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-human-bcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-bcr-full-length.yaml b/regression/presets/analyze/nebnext-human-bcr-full-length.yaml index 2bebac740..79ff3c0a7 100644 --- a/regression/presets/analyze/nebnext-human-bcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-human-bcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-immune-sequencing.yaml b/regression/presets/analyze/nebnext-human-immune-sequencing.yaml index 2bebac740..79ff3c0a7 100644 --- a/regression/presets/analyze/nebnext-human-immune-sequencing.yaml +++ b/regression/presets/analyze/nebnext-human-immune-sequencing.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-tcr-bcr-cdr3.yaml b/regression/presets/analyze/nebnext-human-tcr-bcr-cdr3.yaml index 16d0726d8..820ce11eb 100644 --- a/regression/presets/analyze/nebnext-human-tcr-bcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-human-tcr-bcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-tcr-bcr-full-length.yaml b/regression/presets/analyze/nebnext-human-tcr-bcr-full-length.yaml index 2bebac740..79ff3c0a7 100644 --- a/regression/presets/analyze/nebnext-human-tcr-bcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-human-tcr-bcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-tcr-cdr3.yaml b/regression/presets/analyze/nebnext-human-tcr-cdr3.yaml index 16d0726d8..820ce11eb 100644 --- a/regression/presets/analyze/nebnext-human-tcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-human-tcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-human-tcr-full-length.yaml b/regression/presets/analyze/nebnext-human-tcr-full-length.yaml index 2bebac740..79ff3c0a7 100644 --- a/regression/presets/analyze/nebnext-human-tcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-human-tcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-bcr-cdr3.yaml b/regression/presets/analyze/nebnext-mouse-bcr-cdr3.yaml index fd3a58ad2..853a84f61 100644 --- a/regression/presets/analyze/nebnext-mouse-bcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-mouse-bcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-bcr-full-length.yaml b/regression/presets/analyze/nebnext-mouse-bcr-full-length.yaml index ad3b7dcbd..8ca2b787c 100644 --- a/regression/presets/analyze/nebnext-mouse-bcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-mouse-bcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-immune-sequencing.yaml b/regression/presets/analyze/nebnext-mouse-immune-sequencing.yaml index ad3b7dcbd..8ca2b787c 100644 --- a/regression/presets/analyze/nebnext-mouse-immune-sequencing.yaml +++ b/regression/presets/analyze/nebnext-mouse-immune-sequencing.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-tcr-bcr-cdr3.yaml b/regression/presets/analyze/nebnext-mouse-tcr-bcr-cdr3.yaml index fd3a58ad2..853a84f61 100644 --- a/regression/presets/analyze/nebnext-mouse-tcr-bcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-mouse-tcr-bcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-tcr-bcr-full-length.yaml b/regression/presets/analyze/nebnext-mouse-tcr-bcr-full-length.yaml index ad3b7dcbd..8ca2b787c 100644 --- a/regression/presets/analyze/nebnext-mouse-tcr-bcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-mouse-tcr-bcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-tcr-cdr3.yaml b/regression/presets/analyze/nebnext-mouse-tcr-cdr3.yaml index fd3a58ad2..853a84f61 100644 --- a/regression/presets/analyze/nebnext-mouse-tcr-cdr3.yaml +++ b/regression/presets/analyze/nebnext-mouse-tcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/nebnext-mouse-tcr-full-length.yaml b/regression/presets/analyze/nebnext-mouse-tcr-full-length.yaml index ad3b7dcbd..8ca2b787c 100644 --- a/regression/presets/analyze/nebnext-mouse-tcr-full-length.yaml +++ b/regression/presets/analyze/nebnext-mouse-tcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-bcr-ihg-lr-cdr3.yaml b/regression/presets/analyze/oncomine-human-bcr-ihg-lr-cdr3.yaml index 7c06d7b14..805a59e7b 100644 --- a/regression/presets/analyze/oncomine-human-bcr-ihg-lr-cdr3.yaml +++ b/regression/presets/analyze/oncomine-human-bcr-ihg-lr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-bcr-ihg-lr-full-length.yaml b/regression/presets/analyze/oncomine-human-bcr-ihg-lr-full-length.yaml index 820ae76ee..9cf88f5af 100644 --- a/regression/presets/analyze/oncomine-human-bcr-ihg-lr-full-length.yaml +++ b/regression/presets/analyze/oncomine-human-bcr-ihg-lr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-bcr-pan-clonality-cdr3.yaml b/regression/presets/analyze/oncomine-human-bcr-pan-clonality-cdr3.yaml index 06ee8d4b6..c22a859cb 100644 --- a/regression/presets/analyze/oncomine-human-bcr-pan-clonality-cdr3.yaml +++ b/regression/presets/analyze/oncomine-human-bcr-pan-clonality-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-bcr-pan-clonality.yaml b/regression/presets/analyze/oncomine-human-bcr-pan-clonality.yaml index 06ee8d4b6..c22a859cb 100644 --- a/regression/presets/analyze/oncomine-human-bcr-pan-clonality.yaml +++ b/regression/presets/analyze/oncomine-human-bcr-pan-clonality.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-fr1-j.yaml b/regression/presets/analyze/oncomine-human-igh-fr1-j.yaml index bf70c44c3..79f85e812 100644 --- a/regression/presets/analyze/oncomine-human-igh-fr1-j.yaml +++ b/regression/presets/analyze/oncomine-human-igh-fr1-j.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-fr2-j.yaml b/regression/presets/analyze/oncomine-human-igh-fr2-j.yaml index 2e9ba1d1e..371e33bf2 100644 --- a/regression/presets/analyze/oncomine-human-igh-fr2-j.yaml +++ b/regression/presets/analyze/oncomine-human-igh-fr2-j.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-fr3-j.yaml b/regression/presets/analyze/oncomine-human-igh-fr3-j.yaml index 06ee8d4b6..c22a859cb 100644 --- a/regression/presets/analyze/oncomine-human-igh-fr3-j.yaml +++ b/regression/presets/analyze/oncomine-human-igh-fr3-j.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-leader-j.yaml b/regression/presets/analyze/oncomine-human-igh-leader-j.yaml index 1f4c1367e..e5f183121 100644 --- a/regression/presets/analyze/oncomine-human-igh-leader-j.yaml +++ b/regression/presets/analyze/oncomine-human-igh-leader-j.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-lr.yaml b/regression/presets/analyze/oncomine-human-igh-lr.yaml index 820ae76ee..9cf88f5af 100644 --- a/regression/presets/analyze/oncomine-human-igh-lr.yaml +++ b/regression/presets/analyze/oncomine-human-igh-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-igh-sr.yaml b/regression/presets/analyze/oncomine-human-igh-sr.yaml index deb370d4e..2b4ced102 100644 --- a/regression/presets/analyze/oncomine-human-igh-sr.yaml +++ b/regression/presets/analyze/oncomine-human-igh-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcr-pan-clonality-cdr3.yaml b/regression/presets/analyze/oncomine-human-tcr-pan-clonality-cdr3.yaml index 06ee8d4b6..c22a859cb 100644 --- a/regression/presets/analyze/oncomine-human-tcr-pan-clonality-cdr3.yaml +++ b/regression/presets/analyze/oncomine-human-tcr-pan-clonality-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcr-pan-clonality.yaml b/regression/presets/analyze/oncomine-human-tcr-pan-clonality.yaml index 06ee8d4b6..c22a859cb 100644 --- a/regression/presets/analyze/oncomine-human-tcr-pan-clonality.yaml +++ b/regression/presets/analyze/oncomine-human-tcr-pan-clonality.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcrb-lr-cdr3.yaml b/regression/presets/analyze/oncomine-human-tcrb-lr-cdr3.yaml index 7c06d7b14..805a59e7b 100644 --- a/regression/presets/analyze/oncomine-human-tcrb-lr-cdr3.yaml +++ b/regression/presets/analyze/oncomine-human-tcrb-lr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcrb-lr-full-length.yaml b/regression/presets/analyze/oncomine-human-tcrb-lr-full-length.yaml index 820ae76ee..9cf88f5af 100644 --- a/regression/presets/analyze/oncomine-human-tcrb-lr-full-length.yaml +++ b/regression/presets/analyze/oncomine-human-tcrb-lr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcrb-lr.yaml b/regression/presets/analyze/oncomine-human-tcrb-lr.yaml index 820ae76ee..9cf88f5af 100644 --- a/regression/presets/analyze/oncomine-human-tcrb-lr.yaml +++ b/regression/presets/analyze/oncomine-human-tcrb-lr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcrb-sr-cdr3.yaml b/regression/presets/analyze/oncomine-human-tcrb-sr-cdr3.yaml index deb370d4e..2b4ced102 100644 --- a/regression/presets/analyze/oncomine-human-tcrb-sr-cdr3.yaml +++ b/regression/presets/analyze/oncomine-human-tcrb-sr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/oncomine-human-tcrb-sr.yaml b/regression/presets/analyze/oncomine-human-tcrb-sr.yaml index deb370d4e..2b4ced102 100644 --- a/regression/presets/analyze/oncomine-human-tcrb-sr.yaml +++ b/regression/presets/analyze/oncomine-human-tcrb-sr.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ont-rna-seq-vdj-full-length.yaml b/regression/presets/analyze/ont-rna-seq-vdj-full-length.yaml index 7d9f08abf..f48e4aa28 100644 --- a/regression/presets/analyze/ont-rna-seq-vdj-full-length.yaml +++ b/regression/presets/analyze/ont-rna-seq-vdj-full-length.yaml @@ -20,6 +20,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/ont-rna-seq-vdj.yaml b/regression/presets/analyze/ont-rna-seq-vdj.yaml index 7d9f08abf..f48e4aa28 100644 --- a/regression/presets/analyze/ont-rna-seq-vdj.yaml +++ b/regression/presets/analyze/ont-rna-seq-vdj.yaml @@ -20,6 +20,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/parse-bio-3gex-wt-mega.yaml b/regression/presets/analyze/parse-bio-3gex-wt-mega.yaml index e8609ddaf..18c027d34 100644 --- a/regression/presets/analyze/parse-bio-3gex-wt-mega.yaml +++ b/regression/presets/analyze/parse-bio-3gex-wt-mega.yaml @@ -832,6 +832,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/parse-bio-3gex-wt-mini.yaml b/regression/presets/analyze/parse-bio-3gex-wt-mini.yaml index ef9808d33..48ca7c3d1 100644 --- a/regression/presets/analyze/parse-bio-3gex-wt-mini.yaml +++ b/regression/presets/analyze/parse-bio-3gex-wt-mini.yaml @@ -496,6 +496,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/parse-bio-3gex-wt.yaml b/regression/presets/analyze/parse-bio-3gex-wt.yaml index ae610b27c..fc9429dde 100644 --- a/regression/presets/analyze/parse-bio-3gex-wt.yaml +++ b/regression/presets/analyze/parse-bio-3gex-wt.yaml @@ -640,6 +640,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/parse-bio-vdj-3gex.yaml b/regression/presets/analyze/parse-bio-vdj-3gex.yaml index e8609ddaf..18c027d34 100644 --- a/regression/presets/analyze/parse-bio-vdj-3gex.yaml +++ b/regression/presets/analyze/parse-bio-vdj-3gex.yaml @@ -832,6 +832,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/pereshlop-test.yaml b/regression/presets/analyze/pereshlop-test.yaml index 3ee5dd16c..90be7c5a9 100644 --- a/regression/presets/analyze/pereshlop-test.yaml +++ b/regression/presets/analyze/pereshlop-test.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: true sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-human-tcr-cdr3.yaml b/regression/presets/analyze/qiaseq-human-tcr-cdr3.yaml index 7abf655fc..11bb9f91f 100644 --- a/regression/presets/analyze/qiaseq-human-tcr-cdr3.yaml +++ b/regression/presets/analyze/qiaseq-human-tcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-human-tcr-full-length.yaml b/regression/presets/analyze/qiaseq-human-tcr-full-length.yaml index 44c2069d7..6d2d41a96 100644 --- a/regression/presets/analyze/qiaseq-human-tcr-full-length.yaml +++ b/regression/presets/analyze/qiaseq-human-tcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-human-tcr-panel.yaml b/regression/presets/analyze/qiaseq-human-tcr-panel.yaml index 44c2069d7..6d2d41a96 100644 --- a/regression/presets/analyze/qiaseq-human-tcr-panel.yaml +++ b/regression/presets/analyze/qiaseq-human-tcr-panel.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-mouse-tcr-cdr3.yaml b/regression/presets/analyze/qiaseq-mouse-tcr-cdr3.yaml index cfbfea625..da7e7d229 100644 --- a/regression/presets/analyze/qiaseq-mouse-tcr-cdr3.yaml +++ b/regression/presets/analyze/qiaseq-mouse-tcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-mouse-tcr-full-length.yaml b/regression/presets/analyze/qiaseq-mouse-tcr-full-length.yaml index 2b9fcd9d0..6e548a424 100644 --- a/regression/presets/analyze/qiaseq-mouse-tcr-full-length.yaml +++ b/regression/presets/analyze/qiaseq-mouse-tcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/qiaseq-mouse-tcr-panel.yaml b/regression/presets/analyze/qiaseq-mouse-tcr-panel.yaml index 2b9fcd9d0..6e548a424 100644 --- a/regression/presets/analyze/qiaseq-mouse-tcr-panel.yaml +++ b/regression/presets/analyze/qiaseq-mouse-tcr-panel.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: mmu libraryName: default @@ -37,6 +34,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/rna-seq.yaml b/regression/presets/analyze/rna-seq.yaml index 4c3e8abb7..e6bc1fd60 100644 --- a/regression/presets/analyze/rna-seq.yaml +++ b/regression/presets/analyze/rna-seq.yaml @@ -23,6 +23,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/seqwell-vdj-cdr3.yaml b/regression/presets/analyze/seqwell-vdj-cdr3.yaml index c058854b5..64d694413 100644 --- a/regression/presets/analyze/seqwell-vdj-cdr3.yaml +++ b/regression/presets/analyze/seqwell-vdj-cdr3.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/seqwell-vdj.yaml b/regression/presets/analyze/seqwell-vdj.yaml index c058854b5..64d694413 100644 --- a/regression/presets/analyze/seqwell-vdj.yaml +++ b/regression/presets/analyze/seqwell-vdj.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/single-cell-as-sample-no-split.yaml b/regression/presets/analyze/single-cell-as-sample-no-split.yaml index 59d7d2cb9..63326cfa0 100644 --- a/regression/presets/analyze/single-cell-as-sample-no-split.yaml +++ b/regression/presets/analyze/single-cell-as-sample-no-split.yaml @@ -39,6 +39,7 @@ align: matchVariantId: null sample: - sample2 + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/single-cell-as-sample-split.yaml b/regression/presets/analyze/single-cell-as-sample-split.yaml index e153f98db..0d827df70 100644 --- a/regression/presets/analyze/single-cell-as-sample-split.yaml +++ b/regression/presets/analyze/single-cell-as-sample-split.yaml @@ -39,6 +39,7 @@ align: matchVariantId: null sample: - sample2 + tagsValidations: [] splitBySample: true limit: null parameters: diff --git a/regression/presets/analyze/singleron-2.0.1-vdj-cdr3.yaml b/regression/presets/analyze/singleron-2.0.1-vdj-cdr3.yaml index a4b708a19..65b10923e 100644 --- a/regression/presets/analyze/singleron-2.0.1-vdj-cdr3.yaml +++ b/regression/presets/analyze/singleron-2.0.1-vdj-cdr3.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/singleron-gexscope-single-cell-vdj.yaml b/regression/presets/analyze/singleron-gexscope-single-cell-vdj.yaml index a4b708a19..65b10923e 100644 --- a/regression/presets/analyze/singleron-gexscope-single-cell-vdj.yaml +++ b/regression/presets/analyze/singleron-gexscope-single-cell-vdj.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/smartseq2-vdj-full-length.yaml b/regression/presets/analyze/smartseq2-vdj-full-length.yaml index 41fb33fe0..f308178b7 100644 --- a/regression/presets/analyze/smartseq2-vdj-full-length.yaml +++ b/regression/presets/analyze/smartseq2-vdj-full-length.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/smartseq2-vdj.yaml b/regression/presets/analyze/smartseq2-vdj.yaml index 41fb33fe0..f308178b7 100644 --- a/regression/presets/analyze/smartseq2-vdj.yaml +++ b/regression/presets/analyze/smartseq2-vdj.yaml @@ -24,6 +24,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/split-seq-3gex.yaml b/regression/presets/analyze/split-seq-3gex.yaml index fe6746a74..d57cbd0f1 100644 --- a/regression/presets/analyze/split-seq-3gex.yaml +++ b/regression/presets/analyze/split-seq-3gex.yaml @@ -638,6 +638,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/split-seq-vdj-3gex.yaml b/regression/presets/analyze/split-seq-vdj-3gex.yaml index fe6746a74..d57cbd0f1 100644 --- a/regression/presets/analyze/split-seq-vdj-3gex.yaml +++ b/regression/presets/analyze/split-seq-vdj-3gex.yaml @@ -638,6 +638,7 @@ align: separator: _ destinationTag: CELL sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-bcr-cdr3.yaml b/regression/presets/analyze/takara-human-bcr-cdr3.yaml index 441634423..2491966d8 100644 --- a/regression/presets/analyze/takara-human-bcr-cdr3.yaml +++ b/regression/presets/analyze/takara-human-bcr-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-bcr-full-length.yaml b/regression/presets/analyze/takara-human-bcr-full-length.yaml index 127979801..55909b7de 100644 --- a/regression/presets/analyze/takara-human-bcr-full-length.yaml +++ b/regression/presets/analyze/takara-human-bcr-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-bcr-profiling.yaml b/regression/presets/analyze/takara-human-bcr-profiling.yaml index 127979801..55909b7de 100644 --- a/regression/presets/analyze/takara-human-bcr-profiling.yaml +++ b/regression/presets/analyze/takara-human-bcr-profiling.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-V1-cdr3.yaml b/regression/presets/analyze/takara-human-tcr-V1-cdr3.yaml index 9335ad292..67187be0b 100644 --- a/regression/presets/analyze/takara-human-tcr-V1-cdr3.yaml +++ b/regression/presets/analyze/takara-human-tcr-V1-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-V1-full-length.yaml b/regression/presets/analyze/takara-human-tcr-V1-full-length.yaml index 8dd06c5ef..236e6551f 100644 --- a/regression/presets/analyze/takara-human-tcr-V1-full-length.yaml +++ b/regression/presets/analyze/takara-human-tcr-V1-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-V2-cdr3.yaml b/regression/presets/analyze/takara-human-tcr-V2-cdr3.yaml index 895a2a6eb..9d37a6fe9 100644 --- a/regression/presets/analyze/takara-human-tcr-V2-cdr3.yaml +++ b/regression/presets/analyze/takara-human-tcr-V2-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-V2-full-length.yaml b/regression/presets/analyze/takara-human-tcr-V2-full-length.yaml index 9680f8823..1bcb45353 100644 --- a/regression/presets/analyze/takara-human-tcr-V2-full-length.yaml +++ b/regression/presets/analyze/takara-human-tcr-V2-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-profiling.yaml b/regression/presets/analyze/takara-human-tcr-profiling.yaml index 8dd06c5ef..236e6551f 100644 --- a/regression/presets/analyze/takara-human-tcr-profiling.yaml +++ b/regression/presets/analyze/takara-human-tcr-profiling.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-human-tcr-v2-profiling.yaml b/regression/presets/analyze/takara-human-tcr-v2-profiling.yaml index 9680f8823..1bcb45353 100644 --- a/regression/presets/analyze/takara-human-tcr-v2-profiling.yaml +++ b/regression/presets/analyze/takara-human-tcr-v2-profiling.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-bcr-cdr3.yaml b/regression/presets/analyze/takara-mouse-bcr-cdr3.yaml index dd75e0fef..7fbde1dca 100644 --- a/regression/presets/analyze/takara-mouse-bcr-cdr3.yaml +++ b/regression/presets/analyze/takara-mouse-bcr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-bcr-full-length.yaml b/regression/presets/analyze/takara-mouse-bcr-full-length.yaml index 9a0eb070f..e9bcdb017 100644 --- a/regression/presets/analyze/takara-mouse-bcr-full-length.yaml +++ b/regression/presets/analyze/takara-mouse-bcr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-bcr-profiling.yaml b/regression/presets/analyze/takara-mouse-bcr-profiling.yaml index 9a0eb070f..e9bcdb017 100644 --- a/regression/presets/analyze/takara-mouse-bcr-profiling.yaml +++ b/regression/presets/analyze/takara-mouse-bcr-profiling.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-tcr-cdr3.yaml b/regression/presets/analyze/takara-mouse-tcr-cdr3.yaml index dd75e0fef..7fbde1dca 100644 --- a/regression/presets/analyze/takara-mouse-tcr-cdr3.yaml +++ b/regression/presets/analyze/takara-mouse-tcr-cdr3.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-tcr-full-length.yaml b/regression/presets/analyze/takara-mouse-tcr-full-length.yaml index 9a0eb070f..e9bcdb017 100644 --- a/regression/presets/analyze/takara-mouse-tcr-full-length.yaml +++ b/regression/presets/analyze/takara-mouse-tcr-full-length.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-mouse-tcr-profiling.yaml b/regression/presets/analyze/takara-mouse-tcr-profiling.yaml index 9a0eb070f..e9bcdb017 100644 --- a/regression/presets/analyze/takara-mouse-tcr-profiling.yaml +++ b/regression/presets/analyze/takara-mouse-tcr-profiling.yaml @@ -18,6 +18,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-smartseq-human-bcr.yaml b/regression/presets/analyze/takara-smartseq-human-bcr.yaml index 127979801..55909b7de 100644 --- a/regression/presets/analyze/takara-smartseq-human-bcr.yaml +++ b/regression/presets/analyze/takara-smartseq-human-bcr.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/takara-smartseq-human-tcr.yaml b/regression/presets/analyze/takara-smartseq-human-tcr.yaml index 9680f8823..1bcb45353 100644 --- a/regression/presets/analyze/takara-smartseq-human-tcr.yaml +++ b/regression/presets/analyze/takara-smartseq-human-tcr.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-airr-long-ig-base.yaml b/regression/presets/analyze/test-airr-long-ig-base.yaml index 3bc0a058f..4dfec534e 100644 --- a/regression/presets/analyze/test-airr-long-ig-base.yaml +++ b/regression/presets/analyze/test-airr-long-ig-base.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-generic.yaml b/regression/presets/analyze/test-generic.yaml index 6f584dc92..e6662335e 100644 --- a/regression/presets/analyze/test-generic.yaml +++ b/regression/presets/analyze/test-generic.yaml @@ -20,6 +20,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-gf-intersection.yaml b/regression/presets/analyze/test-gf-intersection.yaml index 1f985a89d..70b70367e 100644 --- a/regression/presets/analyze/test-gf-intersection.yaml +++ b/regression/presets/analyze/test-gf-intersection.yaml @@ -5,9 +5,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -23,6 +20,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-mikelov-et-al-2021-with-contigs.yaml b/regression/presets/analyze/test-mikelov-et-al-2021-with-contigs.yaml index f20de6b15..fd42bff5b 100644 --- a/regression/presets/analyze/test-mikelov-et-al-2021-with-contigs.yaml +++ b/regression/presets/analyze/test-mikelov-et-al-2021-with-contigs.yaml @@ -5,9 +5,6 @@ pipeline: - assemble - assembleContigs - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -49,6 +46,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-mikelov-et-al-2021-without-contigs.yaml b/regression/presets/analyze/test-mikelov-et-al-2021-without-contigs.yaml index 0295843dd..f7dafa147 100644 --- a/regression/presets/analyze/test-mikelov-et-al-2021-without-contigs.yaml +++ b/regression/presets/analyze/test-mikelov-et-al-2021-without-contigs.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hs libraryName: default @@ -48,6 +45,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-subCloningRegions.yaml b/regression/presets/analyze/test-subCloningRegions.yaml index 3847c0c87..85ea705fe 100644 --- a/regression/presets/analyze/test-subCloningRegions.yaml +++ b/regression/presets/analyze/test-subCloningRegions.yaml @@ -21,6 +21,9 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/test-tcr-shotgun.yaml b/regression/presets/analyze/test-tcr-shotgun.yaml index ac6203028..46d1c5beb 100644 --- a/regression/presets/analyze/test-tcr-shotgun.yaml +++ b/regression/presets/analyze/test-tcr-shotgun.yaml @@ -22,6 +22,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/umi-guided-consensus-test.yaml b/regression/presets/analyze/umi-guided-consensus-test.yaml index 4c3519157..9ef886463 100644 --- a/regression/presets/analyze/umi-guided-consensus-test.yaml +++ b/regression/presets/analyze/umi-guided-consensus-test.yaml @@ -21,6 +21,7 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: [] splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/vergani-et-al-2017-cdr3.yaml b/regression/presets/analyze/vergani-et-al-2017-cdr3.yaml index 484f7cb5d..ff09ec8a3 100644 --- a/regression/presets/analyze/vergani-et-al-2017-cdr3.yaml +++ b/regression/presets/analyze/vergani-et-al-2017-cdr3.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/presets/analyze/vergani-et-al-2017-full-length.yaml b/regression/presets/analyze/vergani-et-al-2017-full-length.yaml index 16de69d25..7d7bd76e5 100644 --- a/regression/presets/analyze/vergani-et-al-2017-full-length.yaml +++ b/regression/presets/analyze/vergani-et-al-2017-full-length.yaml @@ -4,9 +4,6 @@ pipeline: - refineTagsAndSort - assemble - exportClones -validation: -- type: TagPatternShouldContainsTagName - tagName: UMI align: species: hsa libraryName: default @@ -22,6 +19,11 @@ align: tagMaxBudget: 10.0 readIdAsCellTag: false sampleTable: null + tagsValidations: + - type: MustNotContainTagType + tagType: Sample + - type: MustContainTagType + tagType: Molecule splitBySample: false limit: null parameters: diff --git a/regression/schemas/analyzeBundle/mixins/AddTagsValidation.schema.yaml b/regression/schemas/analyzeBundle/mixins/AddTagsValidation.schema.yaml new file mode 100644 index 000000000..db8ebce72 --- /dev/null +++ b/regression/schemas/analyzeBundle/mixins/AddTagsValidation.schema.yaml @@ -0,0 +1,64 @@ +$schema: https://json-schema.org/draft/2020-12/schema +$defs: + TagType: + type: string + enum: + - Sample + - Cell + - Molecule + - Technical +allOf: +- type: object + properties: + validation: + anyOf: + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustContainTagType + required: + - type + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustNotContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustNotContainTagType + required: + - type +- type: object + properties: + type: + const: AddTagsValidation + required: + - type diff --git a/regression/schemas/analyzeBundle/mixins/RemoveTagsValidation.schema.yaml b/regression/schemas/analyzeBundle/mixins/RemoveTagsValidation.schema.yaml new file mode 100644 index 000000000..4f902f12d --- /dev/null +++ b/regression/schemas/analyzeBundle/mixins/RemoveTagsValidation.schema.yaml @@ -0,0 +1,64 @@ +$schema: https://json-schema.org/draft/2020-12/schema +$defs: + TagType: + type: string + enum: + - Sample + - Cell + - Molecule + - Technical +allOf: +- type: object + properties: + validation: + anyOf: + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustContainTagType + required: + - type + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustNotContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustNotContainTagType + required: + - type +- type: object + properties: + type: + const: RemoveTagsValidation + required: + - type diff --git a/regression/schemas/analyzeBundle/mixins/SetSampleSheet.schema.yaml b/regression/schemas/analyzeBundle/mixins/SetSampleSheet.schema.yaml new file mode 100644 index 000000000..27160f6a5 --- /dev/null +++ b/regression/schemas/analyzeBundle/mixins/SetSampleSheet.schema.yaml @@ -0,0 +1,16 @@ +$schema: https://json-schema.org/draft/2020-12/schema +allOf: +- type: object + properties: + allowOneMismatch: + type: boolean + body: + type: string + file: + type: string +- type: object + properties: + type: + const: SetSampleSheet + required: + - type diff --git a/regression/schemas/analyzeBundle/parameters/align.schema.yaml b/regression/schemas/analyzeBundle/parameters/align.schema.yaml index 0747a384c..29eff54a8 100644 --- a/regression/schemas/analyzeBundle/parameters/align.schema.yaml +++ b/regression/schemas/analyzeBundle/parameters/align.schema.yaml @@ -154,6 +154,13 @@ $defs: - Collinear - CollinearDirect - Unknown + TagType: + type: string + enum: + - Sample + - Cell + - Molecule + - Technical type: object properties: bamDropNonVDJ: @@ -347,6 +354,54 @@ properties: - type tagUnstranded: type: boolean + tagsValidations: + type: array + items: + anyOf: + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustContainTagType + required: + - type + - allOf: + - type: object + properties: + tagName: + type: string + - type: object + properties: + type: + const: MustNotContainTagName + required: + - type + - allOf: + - type: object + properties: + tagType: + $ref: '#/$defs/TagType' + - type: object + properties: + type: + const: MustNotContainTagType + required: + - type trimmingQualityThreshold: type: string trimmingWindowSize: diff --git a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlign.kt b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlign.kt index eb19bb9d6..239dbc3a6 100644 --- a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlign.kt +++ b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlign.kt @@ -998,6 +998,10 @@ object CommandAlign { // Tags val tagsExtractor = getTagsExtractor(cmdParams, inputFileGroups) + // Validating output tags if required + for (tagsValidation in cmdParams.tagsValidations) + tagsValidation.validate(tagsExtractor.tagsInfo) + // true if final NSQTuple will have two reads, false otherwise val pairedPayload = tagsExtractor.pairedPatternPayload ?: inputFileGroups.inputType.pairedRecords diff --git a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlignPipeline.kt b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlignPipeline.kt index 931507f6b..4012ec94d 100644 --- a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlignPipeline.kt +++ b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandAlignPipeline.kt @@ -183,24 +183,6 @@ object CommandAlignPipeline { ) } - // fun inferSampleTable(fileGroups: CommandAlign.InputFileGroups): CommandAlignParams.SampleTable { - // val sampleTagNames = fileGroups.tags.filter { TagType.detectByTagName(it) == TagType.Sample } - // return CommandAlignParams.SampleTable( - // sampleTagNames, - // fileGroups.fileGroups - // .map { fg -> sampleTagNames.map { fg.getTag(it) } } - // .toSortedSet(listComparator()) - // .map { sample -> - // CommandAlignParams.SampleTable.Row( - // matchTags = sampleTagNames - // .mapIndexed { i, tn -> tn to sample[i] } - // .toMap(TreeMap()), - // sample = sample - // ) - // } - // ) - // } - sealed interface TagExtractor { fun extract( originalReadId: Long, diff --git a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandListPresets.kt b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandListPresets.kt index 63af8c8c4..73600a3aa 100644 --- a/src/main/kotlin/com/milaboratory/mixcr/cli/CommandListPresets.kt +++ b/src/main/kotlin/com/milaboratory/mixcr/cli/CommandListPresets.kt @@ -57,6 +57,6 @@ private val flagOptions = mapOf( "${AlignMixins.AlignmentBoundaryConstants.RIGHT_RIGID_CMD_OPTION} [(${Labels.GENE_TYPE}|${Labels.ANCHOR_POINT})])", Flags.TagPattern to "${AlignMixins.SetTagPattern.CMD_OPTION} ", Flags.SampleTable to - "${AlignMixins.SetSampleTable.CMD_OPTION_FUZZY} sample_table.tsv\n" + - "${AlignMixins.SetSampleTable.CMD_OPTION_STRICT} sample_table.tsv", + "${AlignMixins.SetSampleSheet.CMD_OPTION_FUZZY} sample_table.tsv\n" + + "${AlignMixins.SetSampleSheet.CMD_OPTION_STRICT} sample_table.tsv", ) diff --git a/src/main/kotlin/com/milaboratory/mixcr/cli/MiXCRParamsResolver.kt b/src/main/kotlin/com/milaboratory/mixcr/cli/MiXCRParamsResolver.kt index 15339c54e..f00c0f8c6 100644 --- a/src/main/kotlin/com/milaboratory/mixcr/cli/MiXCRParamsResolver.kt +++ b/src/main/kotlin/com/milaboratory/mixcr/cli/MiXCRParamsResolver.kt @@ -84,13 +84,13 @@ val presetFlagsMessages = mapOf( Flags.TagPattern to "This preset requires to specify tag pattern, \n" + "please use ${AlignMixins.SetTagPattern.CMD_OPTION} mix-in to set it, alternatively " + - "tag pattern can be provided with sample table using ${AlignMixins.SetSampleTable.CMD_OPTION_FUZZY} or " + - "${AlignMixins.SetSampleTable.CMD_OPTION_STRICT} mixin.", + "tag pattern can be provided with sample table using ${AlignMixins.SetSampleSheet.CMD_OPTION_FUZZY} or " + + "${AlignMixins.SetSampleSheet.CMD_OPTION_STRICT} mixin.", Flags.SampleTable to "This preset requires to specify sample table, \n" + - "please use ${AlignMixins.SetSampleTable.CMD_OPTION_FUZZY} or " + - "${AlignMixins.SetSampleTable.CMD_OPTION_STRICT} mix-in.", + "please use ${AlignMixins.SetSampleSheet.CMD_OPTION_FUZZY} or " + + "${AlignMixins.SetSampleSheet.CMD_OPTION_STRICT} mix-in.", ) diff --git a/src/main/kotlin/com/milaboratory/mixcr/cli/Mixins.kt b/src/main/kotlin/com/milaboratory/mixcr/cli/Mixins.kt index dfde1e2a3..4b723d35d 100644 --- a/src/main/kotlin/com/milaboratory/mixcr/cli/Mixins.kt +++ b/src/main/kotlin/com/milaboratory/mixcr/cli/Mixins.kt @@ -183,23 +183,51 @@ class AlignMiXCRMixins : MiXCRMixinCollector() { @Option( description = ["Loads sample table from a tab separated file (one substitution will be allowed during matching)"], - names = [AlignMixins.SetSampleTable.CMD_OPTION_FUZZY], + names = [AlignMixins.SetSampleSheet.OLD_CMD_OPTION_FUZZY], arity = "1", paramLabel = "sample_table.tsv", - order = OptionsOrder.mixins.align + 330 + hidden = true ) - fun sampleTableFuzzy(arg: String) = - mixIn(AlignMixins.SetSampleTable(arg, null, true)) + fun sampleTableFuzzy(arg: String) { + println( + "Option ${AlignMixins.SetSampleSheet.OLD_CMD_OPTION_FUZZY}is deprecated. Use ${AlignMixins.SetSampleSheet.CMD_OPTION_FUZZY} instead." + ) + mixIn(AlignMixins.SetSampleSheet(arg, null, true)) + } + + @Option( + description = ["Loads sample table from a tab separated file (one substitution will be allowed during matching)"], + names = [AlignMixins.SetSampleSheet.CMD_OPTION_FUZZY], + arity = "1", + paramLabel = "sample_sheet.tsv", + order = OptionsOrder.mixins.align + 330, + ) + fun sampleSheetFuzzy(arg: String) = + mixIn(AlignMixins.SetSampleSheet(arg, null, true)) @Option( description = ["Loads sample table from a tab separated file (strict matching will be used)."], - names = [AlignMixins.SetSampleTable.CMD_OPTION_STRICT], + names = [AlignMixins.SetSampleSheet.OLD_CMD_OPTION_STRICT], arity = "1", paramLabel = "sample_table.tsv", - order = OptionsOrder.mixins.align + 331 + hidden = true + ) + fun sampleTableStrict(arg: String) { + println( + "Option ${AlignMixins.SetSampleSheet.OLD_CMD_OPTION_STRICT}is deprecated. Use ${AlignMixins.SetSampleSheet.CMD_OPTION_STRICT} instead." + ) + mixIn(AlignMixins.SetSampleSheet(arg, null, false)) + } + + @Option( + description = ["Loads sample table from a tab separated file (strict matching will be used)."], + names = [AlignMixins.SetSampleSheet.CMD_OPTION_STRICT], + arity = "1", + paramLabel = "sample_sheet.tsv", + order = OptionsOrder.mixins.align + 335 ) - fun sampleTableStrict(arg: String) = - mixIn(AlignMixins.SetSampleTable(arg, null, false)) + fun sampleSheetStrict(arg: String) = + mixIn(AlignMixins.SetSampleSheet(arg, null, false)) // // Material type diff --git a/src/main/resources/presets/blocks/01-align.yaml b/src/main/resources/presets/blocks/01-align.yaml index 7c08d4f41..10b2152cc 100644 --- a/src/main/resources/presets/blocks/01-align.yaml +++ b/src/main/resources/presets/blocks/01-align.yaml @@ -17,6 +17,13 @@ align-amplicon: tagUnstranded: false tagMaxBudget: 10 splitBySample: false + tagsValidations: + # Note: the following validation is applicable to all built-in presets in all cases. + # Validation is performed on the set of output tags. When sample tags are employed and splitBySample is set + # to true, these tags are used within the alignment step and don't appear in the output files. Therefore, + # the validation remains relevant and valid. + - type: MustNotContainTagType + tagType: Sample parameters: fixSeed: true libraryStructure: Unknown diff --git a/src/main/resources/presets/protocols/generic-amplicon.yaml b/src/main/resources/presets/protocols/generic-amplicon.yaml index 4fb4e2c8d..076af7d10 100644 --- a/src/main/resources/presets/protocols/generic-amplicon.yaml +++ b/src/main/resources/presets/protocols/generic-amplicon.yaml @@ -45,6 +45,11 @@ generic-amplicon: upper: 0.05 generic-amplicon-with-umi: + mixins: + - type: AddTagsValidation + validation: + type: MustContainTagType + tagType: Molecule inheritFrom: bundle-base flags: - species @@ -57,9 +62,6 @@ generic-amplicon-with-umi: - refineTagsAndSort - assemble - exportClones - validation: - - type: TagPatternShouldContainsTagName - tagName: UMI align: inheritFrom: align-amplicon refineTagsAndSort: diff --git a/src/main/resources/presets/test.yaml b/src/main/resources/presets/test.yaml index c7b4355c5..f12dde56e 100644 --- a/src/main/resources/presets/test.yaml +++ b/src/main/resources/presets/test.yaml @@ -174,9 +174,11 @@ "10x-vdj-tcr-qc-test": inheritFrom: 10x-vdj-tcr deprecation: "This preset is only for tests" - validation: - - type: TagPatternShouldContainsTagType - tagType: Cell + mixins: + - type: AddTagsValidation + validation: + type: MustContainTagType + tagType: Cell qc: checks: - type: OffTargetReads diff --git a/src/test/kotlin/com/milaboratory/mixcr/MixinsTest.kt b/src/test/kotlin/com/milaboratory/mixcr/MixinsTest.kt index 983bf7ade..0fe8da163 100644 --- a/src/test/kotlin/com/milaboratory/mixcr/MixinsTest.kt +++ b/src/test/kotlin/com/milaboratory/mixcr/MixinsTest.kt @@ -26,7 +26,7 @@ class MixinsTest { "S2\t^attagaca \\ ^attacaca(CELL1:NNNN)\tACCC\n" + "S3\t^attagaca \\ ^gacatata(CELL1:NNNN)\tATTG\n" + "S4\t^attagaca \\ ^gacatata(CELL1:NNNN)\tACCC\n" - val slMixin = AlignMixins.SetSampleTable(null, sampleList) + val slMixin = AlignMixins.SetSampleSheet(null, sampleList) Assert.assertTrue(slMixin.packed) TestUtil.assertJson(K_YAML_OM, slMixin, false) val parsed = slMixin.parse()