From 8fb2677821a29a7a9a0e4ba8a3505ff81efb6ae8 Mon Sep 17 00:00:00 2001 From: jpuerto-psc <68066250+jpuerto-psc@users.noreply.github.com> Date: Thu, 29 Aug 2024 10:50:45 -0400 Subject: [PATCH 1/9] Update testing_rule_chain.json --- src/routes/assayclassifier/testing_rule_chain.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 1e7940e1..f7914b3d 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -506,13 +506,13 @@ { "type": "match", "match": "is_dcwg and is_primary and dataset_type == 'Visium (no probes)'", - "value": "{'assaytype': 'visium-no-probes', 'vitessce-hints': [], 'dir-schema': 'visium-no-probes-v2', 'description': 'Visium (no probes)', 'contains-pii': true, 'primary': true, 'dataset-type': 'Visium (no probes)', 'must-contain': ['Histology','RNAseq'], 'is-multi-assay': true}", + "value": "{'assaytype': 'visium-no-probes', 'vitessce-hints': [], 'dir-schema': 'visium-no-probes-v3', 'description': 'Visium (no probes)', 'contains-pii': true, 'primary': true, 'dataset-type': 'Visium (no probes)', 'must-contain': ['Histology','RNAseq'], 'is-multi-assay': true}", "rule_description": "DCWG visium-no-probes" }, { "type": "match", "match": "is_dcwg and is_primary and dataset_type == 'Visium (with probes)'", - "value": "{'assaytype': 'visium-with-probes', 'vitessce-hints': [], 'dir-schema': 'visium-with-probes-v2', 'description': 'Visium (with probes)', 'contains-pii': true, 'primary': true, 'dataset-type': 'Visium (with probes)', 'must-contain': ['Histology','RNAseq (with probes)'], 'is-multi-assay': true}", + "value": "{'assaytype': 'visium-with-probes', 'vitessce-hints': [], 'dir-schema': 'visium-with-probes-v3', 'description': 'Visium (with probes)', 'contains-pii': true, 'primary': true, 'dataset-type': 'Visium (with probes)', 'must-contain': ['Histology','RNAseq (with probes)'], 'is-multi-assay': true}", "rule_description": "DCWG visium-with-probes" }, { @@ -773,4 +773,4 @@ "value": "{'assaytype': 'phenocycler_deepcell', 'vitessce-hints': ['is_image', 'is_tiled', 'sprm', 'anndata'], 'primary': false, 'contains-pii': false, 'description': 'PhenoCycler [DeepCell + SPRM]', 'pipeline-shorthand': 'DeepCell + SPRM'}", "rule_description": "derived phenocycler" } -] \ No newline at end of file +] From 364bcbe8f40fe53f4e91007fa4addb498880a994 Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Thu, 29 Aug 2024 11:43:03 -0400 Subject: [PATCH 2/9] General: Bump IVT to v0.0.24 --- src/routes/validation/ingest_validation_tools | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/validation/ingest_validation_tools b/src/routes/validation/ingest_validation_tools index b42126ea..8c716ba8 160000 --- a/src/routes/validation/ingest_validation_tools +++ b/src/routes/validation/ingest_validation_tools @@ -1 +1 @@ -Subproject commit b42126ea3fae02dfd876415b1d47d02534864d8d +Subproject commit 8c716ba8582f72555e142b5cbe6fcbb2ca39b7f4 From 6b690cbacbabe9e87681df08ebe431193ff1c554 Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Thu, 29 Aug 2024 16:28:12 -0400 Subject: [PATCH 3/9] General: Update description for SNARE-RNAseq2 --- src/routes/assayclassifier/testing_rule_chain.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index f7914b3d..328011e3 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -302,7 +302,7 @@ { "type": "match", "match": "not_dcwg and is_primary and assay_type in ['SNARE-RNAseq2', 'SNARE2-RNAseq']", - "value": "{'assaytype': 'SNARE-RNAseq2', 'dir-schema': 'scrnaseq-v0', 'tbl-schema': 'scrnaseq-v'+version.to_str, 'vitessce-hints': [], 'contains-pii': true, 'primary': true, 'description': 'snRNAseq (10x Genomics v3)', 'dataset-type': 'RNAseq' }", + "value": "{'assaytype': 'SNARE-RNAseq2', 'dir-schema': 'scrnaseq-v0', 'tbl-schema': 'scrnaseq-v'+version.to_str, 'vitessce-hints': [], 'contains-pii': true, 'primary': true, 'description': 'snRNAseq (SNAREseq2)', 'dataset-type': 'RNAseq' }", "rule_description": "non-DCWG primary SNARE-RNAseq2" }, { @@ -542,7 +542,7 @@ { "type": "match", "match": "is_dcwg and is_primary and dataset_type == 'RNAseq' and assay_input_entity == 'single nucleus' and barcode_read =~~ 'Read 2' and barcode_size == '8,8,8' and barcode_offset == '10,48,86' and umi_read =~~ 'Read 2' and umi_size == 10 and umi_offset == 0", - "value": "{'assaytype': 'SNARE-RNAseq2', 'vitessce-hints': [], 'dir-schema': 'rnaseq-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq', 'description': 'snRNAseq (10x Genomics v3)'}", + "value": "{'assaytype': 'SNARE-RNAseq2', 'vitessce-hints': [], 'dir-schema': 'rnaseq-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq', 'description': 'snRNAseq (SNAREseq2)'}", "rule_description": "DCWG SNARE-RNAseq2" }, { From 5b4994f992361748a7aa34cb8a244ff2327e4b91 Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Fri, 30 Aug 2024 10:59:10 -0400 Subject: [PATCH 4/9] General: Bring in seg mask changes into this branch. --- src/routes/assayclassifier/testing_rule_chain.json | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 328011e3..46139fce 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -41,6 +41,12 @@ "value": "{'version': 0}", "rule_description": "Cover default schema version = 0 for non-DCWG metadata" }, + { + "type": "note", + "match": "creation_action == 'External Process' or (parent_dataset_id != null and derived_dataset_type != null)", + "value": "{'is_epic': true}", + "rule_description": "Preamble rule identifying EPIC" + }, { "type": "match", "match": "not_dcwg and is_primary and assay_type in ['AF']", @@ -772,5 +778,11 @@ "match": "is_central_processed and data_types[0] in ['phenocycler_deepcell']", "value": "{'assaytype': 'phenocycler_deepcell', 'vitessce-hints': ['is_image', 'is_tiled', 'sprm', 'anndata'], 'primary': false, 'contains-pii': false, 'description': 'PhenoCycler [DeepCell + SPRM]', 'pipeline-shorthand': 'DeepCell + SPRM'}", "rule_description": "derived phenocycler" - } + }, + { + "type": "match", + "match": "is_epic and derived_dataset_type == 'Segmentation Mask'", + "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", + "rule_description": "EPIC dataset segmentation mask" + } ] From f140722b359555496c97763d6cdbd8abbef5c514 Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Fri, 30 Aug 2024 10:59:23 -0400 Subject: [PATCH 5/9] General: Syntax fix --- src/routes/assayclassifier/testing_rule_chain.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 46139fce..a1cfeedb 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -784,5 +784,5 @@ "match": "is_epic and derived_dataset_type == 'Segmentation Mask'", "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", "rule_description": "EPIC dataset segmentation mask" - } + } ] From dbc6a1f4552ce3349a677005cf0e9d8157261025 Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Fri, 30 Aug 2024 12:49:04 -0400 Subject: [PATCH 6/9] General: RNASeq with probes updates --- .../assayclassifier/testing_rule_chain.json | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index a1cfeedb..470abfd5 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -559,8 +559,8 @@ }, { "type": "match", - "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel == '10x Genomics; Visium Human Transcriptome Probe Kit v2 - Small; PN 1000466' and assay_input_entity == 'spot' and barcode_read =~~ 'Read 1' and barcode_size == 16 and barcode_offset == 0 and umi_read =~~ 'Read 1' and umi_size == 12 and umi_offset == 16", - "value": "{'assaytype': 'scRNAseq-visium-with-probes', 'vitessce-hints': [], 'dir-schema': 'rnaseq-with-probes-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq (with probes)', 'description': 'Visium RNAseq with probes'}", + "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel in ['10x Genomics; Visium Human Transcriptome Probe Kit v2 - Small; PN 1000466', '10x Genomics; Visium Human Transcriptome Probe Kit-Small; PN 1000363', '10x Genomics; Visium Human Transcriptome Probe Kit-Large; PN 1000364'] and assay_input_entity == 'spot' and barcode_read =~~ 'Read 1' and barcode_size == 16 and barcode_offset == 0 and umi_read =~~ 'Read 1' and umi_size == 12 and umi_offset == 16", + "value": "{'assaytype': 'scRNAseq-visium-with-probes', 'vitessce-hints': [], 'dir-schema': 'rnaseq-with-probes-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq (with probes)', 'description': 'Visium RNAseq (with probes)'}", "rule_description": "DCWG scRNAseq-visium-with-probes" }, { @@ -784,5 +784,17 @@ "match": "is_epic and derived_dataset_type == 'Segmentation Mask'", "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", "rule_description": "EPIC dataset segmentation mask" + }, + { + "type": "match", + "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel == 'NanoString Technologies; GeoMx Human Whole Transcriptome Atlas, 4 slides; PN GMX-RNA-NGS-HuWTA-4' and assay_input_entity = 'area of interest'", + "value": "{'assaytype': 'geomx-rnaseq-with-probes', 'vitessce-hints': [], 'dir-schema': 'rnaseq-with-probes-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq (with probes)', 'description': 'GeoMx RNAseq (with probes)'}", + "rule_description": "DCWG RNAseq-geomx-with-probes" + }, + { + "type": "match", + "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel in ['10X Genomics; Chromium Next GEM Single Cell Fixed RNA Human Transcriptome Probe Kit, 64 rxns; PN 1000456', '10X Genomics; Chromium Next GEM Single Cell Fixed RNA Human Transcriptome Probe Kit, 16 rxns; PN 1000420'] and assay_input_entity == 'single cell' and barcode_read =~~ 'Read 1' and barcode_size == 16 and barcode_offset == 0 and umi_read =~~ 'Read 1' and umi_size == 12 and umi_offset == 16", + "value": "{'assaytype': 'scRNAseq-with-probes', 'vitessce-hints': [], 'dir-schema': 'rnaseq-with-probes-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq (with probes)', 'description': 'RNAseq (with probes)'}", + "rule_description": "DCWG scRNAseq-with-probes" } ] From 78b8b2fc3d440f17224926a92527d676ca0d66d0 Mon Sep 17 00:00:00 2001 From: jpuerto-psc <68066250+jpuerto-psc@users.noreply.github.com> Date: Fri, 30 Aug 2024 15:23:17 -0400 Subject: [PATCH 7/9] Update testing_rule_chain.json --- src/routes/assayclassifier/testing_rule_chain.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 470abfd5..4b6a5468 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -787,7 +787,7 @@ }, { "type": "match", - "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel == 'NanoString Technologies; GeoMx Human Whole Transcriptome Atlas, 4 slides; PN GMX-RNA-NGS-HuWTA-4' and assay_input_entity = 'area of interest'", + "match": "is_dcwg and is_primary and dataset_type == 'RNAseq (with probes)' and oligo_probe_panel == 'NanoString Technologies; GeoMx Human Whole Transcriptome Atlas, 4 slides; PN GMX-RNA-NGS-HuWTA-4' and assay_input_entity == 'area of interest'", "value": "{'assaytype': 'geomx-rnaseq-with-probes', 'vitessce-hints': [], 'dir-schema': 'rnaseq-with-probes-v2', 'contains-pii': true, 'primary': true, 'dataset-type': 'RNAseq (with probes)', 'description': 'GeoMx RNAseq (with probes)'}", "rule_description": "DCWG RNAseq-geomx-with-probes" }, From b04d6c4f39105ca83dddbb295d32820033834735 Mon Sep 17 00:00:00 2001 From: jpuerto-psc <68066250+jpuerto-psc@users.noreply.github.com> Date: Wed, 4 Sep 2024 12:59:08 -0400 Subject: [PATCH 8/9] Update testing_rule_chain.json --- src/routes/assayclassifier/testing_rule_chain.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 4b6a5468..46f2452d 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -782,7 +782,7 @@ { "type": "match", "match": "is_epic and derived_dataset_type == 'Segmentation Mask'", - "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", + "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask', 'process_state': 'epic'}", "rule_description": "EPIC dataset segmentation mask" }, { From bb1cb9976b9377680cc70405c1e479bd97fd10fd Mon Sep 17 00:00:00 2001 From: Juan Puerto <=> Date: Fri, 6 Sep 2024 10:51:34 -0400 Subject: [PATCH 9/9] General: Update rules to add dir-schema to Seg Mask --- src/routes/assayclassifier/testing_rule_chain.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/assayclassifier/testing_rule_chain.json b/src/routes/assayclassifier/testing_rule_chain.json index 4b6a5468..8ea28ee6 100644 --- a/src/routes/assayclassifier/testing_rule_chain.json +++ b/src/routes/assayclassifier/testing_rule_chain.json @@ -782,7 +782,7 @@ { "type": "match", "match": "is_epic and derived_dataset_type == 'Segmentation Mask'", - "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", + "value": "{'assaytype': 'segmentation-mask', 'vitessce-hints': [], 'dir-schema': 'segmentation-mask-v2', 'contains-pii': false, 'primary': false, 'dataset-type': 'Segmentation Mask', 'description': 'Segmentation Mask'}", "rule_description": "EPIC dataset segmentation mask" }, {