This project provides a small, reusable Nextflow subworkflow pattern for deterministic, rule-based post-processing of committed VCF-like test data.
Note: The current triage logic uses placeholder, deterministic rules for testing this reproducibility pattern. It is not a validated clinical method and must not be used to prioritise real clinical variants.
This repository demonstrates how a deterministic, rule-based triage step can produce structured outputs, validation results, and audit bundles that make each test output easier to inspect and reproduce.
VCF-like test inputs are processed through a deterministic triage step, validated against a strict schema, and packaged with an audit trail before reaching final reports. Malformed outputs are quarantined rather than silently accepted.
- Strict Validation: The triage process produces schema-constrained JSON output rather than free text.
- Quarantine Control: A subsequent JSON_VALIDATION step actively quarantines any malformed outputs instead of silently accepting them.
- Full Auditability: The AUDIT_BUNDLE process creates a receipt for every single test run.
- Metadata Logging: It records available execution metadata such as ruleset version, container digest, workflow commit, input hash, timestamp, and pass/fail status.
- Low-Cost Accessibility: The default development and testing path runs on GitHub Codespaces with Docker using CPU-only execution, keeping baseline usage low-cost.
The repository includes a committed test VCF used only for workflow testing and reproducibility checks.
docs/: Project documentation and notes.diagrams/: Architecture and workflow diagrams.nextflow/: Core pipeline code, includingmodules/andsubworkflow/.tests/: Unit and integration tests for the pipeline.examples/: Example datasets and configurations.
- Nextflow
- Docker
Clone the repository:
git clone https://github.com/STaiMIC/glassbox-ai-triage.gitNavigate into the directory:
cd glassbox-ai-triageRun the main pipeline:
nextflow run main.nf -profile standardInstructions for how to run the files in the tests/ directory.
Guidelines for how team members can contribute to this project.
Glass Box is an independent STAiMIC project and is not an official nf-core pipeline. It is not affiliated with, endorsed by, or sponsored by nf-core, the Nextflow project, or Seqera Labs.
Glass Box is implemented using Nextflow and is designed as a reproducibility and auditability pattern for processing workflow-style outputs. Nextflow® is a registered trademark of Seqera Labs, S.L., used here descriptively.
STAiMIC-authored code is licensed under Apache-2.0. Any third-party source code included in this repository remains under its original licence, as identified by the file headers and THIRD_PARTY_NOTICES.md.