Skip to content

feat: add SegTraQ QC module#129

Open
priyalT wants to merge 18 commits intonf-core:devfrom
priyalT:add-segtraq-baseline
Open

feat: add SegTraQ QC module#129
priyalT wants to merge 18 commits intonf-core:devfrom
priyalT:add-segtraq-baseline

Conversation

@priyalT
Copy link
Copy Markdown

@priyalT priyalT commented Mar 13, 2026

PR checklist

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • If you've added a new tool - have you followed the pipeline conventions in the contribution docs- [ ] If necessary, also make a PR on the nf-core/spatialxe branch on the nf-core/test-datasets repository.
  • Make sure your code lints (nf-core lint).
  • Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
  • Usage Documentation in docs/usage.md is updated.
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.
  • README.md is updated (including new tool citations and authors/contributors).

Description

Adds SegTraQ (Segmentation and Transcript Assignment QC) as a quality control module for spatial omics segmentation results.

What is SegTraQ?

A Python toolkit for quantitative and visual QC of segmentation and transcript assignment in spatial omics data, developed at EMBL.

Changes

New files:

  • modules/local/segtraq/Dockerfile — Container with segtraq==0.0.3
  • modules/local/segtraq/baseline/main.nf — SEGTRAQ_BASELINE process
  • modules/local/segtraq/baseline/templates/baseline.py — Python script for baseline QC
  • modules/local/segtraq/baseline/meta.yml — Module metadata
  • subworkflows/local/segtraq_qc/main.nf — SEGTRAQ_QC subworkflow
  • subworkflows/local/segtraq_qc/meta.yml — Subworkflow metadata
    Modified files:
  • nextflow.config — Added run_segtraq, segtraq_centroid_x_key, segtraq_centroid_y_key
  • nextflow_schema.json — Schema entries for new params
  • conf/modules.config — publishDir for SEGTRAQ_BASELINE
  • workflows/spatialxe.nf — Wired SEGTRAQ_QC after SPATIALDATA_WRITE_META_MERGE

@priyalT priyalT changed the title feat: add SegTraQ baseline QC module feat: add SegTraQ QC module Mar 13, 2026
Copy link
Copy Markdown
Collaborator

@heylf heylf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks at first glance fine. I will dig deeper now.

@jfy133
Copy link
Copy Markdown
Member

jfy133 commented Mar 13, 2026

As I'm talking to @priyalT on Zoom, I did a quick generic review:

  1. Run nf-core pipelines lint --fix ro_crate (I can't remember the exact command
  2. Include the --run_segtraq_qc in at least one of the test profiles, and update the relevant snapshot
  3. Add yourself to the nextflow.config contributors
  4. Add a changelog entry (if being updated for the first release)

@heylf
Copy link
Copy Markdown
Collaborator

heylf commented Mar 13, 2026

Linter issue might fix itself if we merge PR #123

priyalT added 4 commits March 13, 2026 15:49
Adds the region_similarity QC module and updates the subworkflow and nextflow config to support dynamic module selection via params.segtraq_modules. Also updates test snapshots to reflect the config changes.
Copy link
Copy Markdown
Collaborator

@heylf heylf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

look good


prefix = task.ext.prefix ?: "${meta.id}"

template('clustering_stability.py')
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just write template clustering_stability.py

Copy link
Copy Markdown
Collaborator

@heylf heylf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

volumne module LGTM

Copy link
Copy Markdown
Collaborator

@heylf heylf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Could be merged. Then probably it needs a bit honing and testing to see how it works with the pipeline.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants