Skip to content

Tags: ehsanestaji/FastaGuard

Tags

v1.0.0

Toggle v1.0.0's commit message
FastaGuard v1.0.0

v0.7.0

Toggle v0.7.0's commit message
FastaGuard v0.7.0

v0.6.0

Toggle v0.6.0's commit message
FastaGuard v0.6.0

v0.5.0

Toggle v0.5.0's commit message
FastaGuard v0.5.0

v0.4.0

Toggle v0.4.0's commit message
GitHub release artifacts are built from the v0.4.0 tag.

Bioconda and BioContainers publication remain follow-up work after the GitHub
release is available.

Theme: Preflight Readiness + Compare Mode.

This release adds `fastaguard compare`, readiness categories, index-readiness
checks, submission-readiness advisories, and cohort triage outputs. FastaGuard
remains FASTA preflight QC and does not replace QUAST, BUSCO, BlobToolKit,
CheckM, official submission validators, or annotation workflows.

- Adds compare mode for ranking and routing many FASTA files from one command.
- Adds readiness categories so humans and workflow engines can distinguish file,
  structure, alphabet, index, assembly, submission, and machine readiness.
- Adds index-readiness checks for identifier patterns that can break joins,
  indexes, annotations, or downstream sample tracking.
- Adds submission-readiness advisories for FASTA-level issues worth fixing
  before official validators or archive submission.
- Adds cohort JSON, TSV, HTML, and MultiQC-compatible outputs for starter
  multi-sample triage.

FastaGuard v0.4.0 stays fast and database-free by default. Compare mode
aggregates FastaGuard's own FASTA-level evidence; it does not infer taxonomy,
prove biological completeness, replace assembly evaluation, or substitute for
official submission validation.

- Source/package metadata is `0.4.0`.
- GitHub release binaries are produced from the `v0.4.0` tag.
- Published Bioconda and BioContainers packages remain `v0.3.0` until packaging
  follow-up is complete.

v0.3.0

Toggle v0.3.0's commit message
FastaGuard v0.3.0 is the Evidence And Assembly Gate release.

This release makes FastaGuard more useful as an early, machine-readable
assembly preflight gate before QUAST, BUSCO, BlobToolKit, CheckM, annotation,
or other expensive downstream QC.

- Adds `--gate pipeline`, a conservative assembly gate preset for pipeline
  automation.
- Adds a machine-readable `gate` report object with mode, status, blocking
  findings, advisory findings, and the active failure policy.
- Adds `provenance.input_sha256` so workflow engines and agents can tie a
  report back to the exact FASTA bytes that were checked.
- Updates JSON, TSV, HTML, and MultiQC-compatible outputs with the v0.3 report
  contract.
- Keeps stable finding IDs and structured actions as the source of truth for
  automation.
- Supports the v0.3 evidence workflow without requiring databases or external
  services for normal runs.

Download the platform binary from this GitHub release, or build from source:

```bash
cargo install --git https://github.com/ehsanestaji/FastaGuard --tag v0.3.0
fastaguard --version
```

Bioconda and BioContainers updates should follow after the v0.3.0 source
archive and release assets are public.

Use the assembly gate when FastaGuard should make a pipeline decision:

```bash
fastaguard sample.fa --gate pipeline \
  --out fastaguard_report.html \
  --json fastaguard.json \
  --tsv fastaguard.tsv \
  --multiqc fastaguard_mqc.json
```

`--gate pipeline` fails on conservative FASTA-level blockers such as invalid
FASTA structure, invalid characters, duplicate identifiers, and high global N
rate. Other findings can still be emitted as advisory evidence, so downstream
workflow logic can distinguish "stop and fix the FASTA" from "continue, but
route to deeper assembly QC."

The JSON report remains the source of truth. The v0.3.0 contract adds:

- `gate.mode` and `gate.status` for direct pipeline decisions.
- `gate.blocking_findings` and `gate.advisory_findings` for routing.
- `gate.fail_on` for the active failure policy after preset expansion.
- `provenance.input_sha256` for input identity checks.
- Pipeline-friendly TSV fields that surface gate status and input checksum
  alongside the usual summary metrics.
- MultiQC-compatible fields that surface gate mode, gate status, and blocking
  finding IDs alongside the usual summary metrics.

The evidence workflow for v0.3.0 is intended to show that the assembly gate,
report schema, provenance checksum, and committed examples are reproducible.
The workflow should use local FASTA metrics only; FastaGuard does not fetch
taxonomy databases or make biological completeness claims.

- FastaGuard remains a FASTA preflight tool, not a replacement for QUAST,
  BUSCO, BlobToolKit, CheckM, seqkit, MultiQC, or annotation workflows.
- `--gate pipeline` is intentionally conservative and database-free.
- Composition and outlier findings are triage signals, not contamination or
  taxonomic assignments.
- `input_sha256` identifies the checked input bytes; it does not by itself
  prove sample identity, biological quality, or reference correctness.

v0.2.0

Toggle v0.2.0's commit message
FastaGuard v0.2.0 is the Assembly Trust + Pipeline Adoption release.

This release keeps FastaGuard focused on early FASTA preflight checks while
making the results easier to trust, route, and consume in real assembly
pipelines.

- Adds explainable GC, length, and composite assembly outlier findings.
- Expands the JSON contract with richer provenance, taxonomy context, and
  routing hints for downstream tools.
- Hardens MultiQC plugin support for pipeline report aggregation.
- Adds Snakemake Bioconda environment starter material.
- Documents benchmark and evidence guidance for adoption decisions.

Once v0.2.0 is published on Bioconda, install it with:

```bash
mamba install -c conda-forge -c bioconda fastaguard
```

Until then, Bioconda currently serves the latest published package, v0.1.1.
The v0.2.0 Bioconda recipe in this repository is staged and still needs the
published source archive SHA before submission.

FastaGuard still runs before QUAST, BUSCO, BlobToolKit, annotation, and
submission. It does not replace downstream workflows for biological
completeness, assembly correctness, contamination exploration, or taxonomy
confirmation.

Use FastaGuard first to catch FASTA-level validity, structure, composition, and
reporting-contract problems before spending time on heavier assembly QC.

- FastaGuard remains assembly-focused.
- Composition outliers are triage signals, not contamination calls.
- External taxonomy, coverage, k-mer, and database-backed checks remain
  follow-up steps when a sample needs deeper biological interpretation.

v0.1.1

Toggle v0.1.1's commit message
FastaGuard v0.1.1 is a packaging metadata release for downstream adop…

…tion.

The CLI behavior remains assembly-focused and compatible with v0.1.0. The
important change is that the source tree now includes the metadata needed for a
clean Bioconda submission.

- Adds an MIT `LICENSE` file to the source archive.
- Adds Bioconda recipe scaffolding under `packaging/bioconda/`.
- Adds a native MultiQC plugin starter under `integrations/multiqc/`.
- Adds adoption, tool landscape, and benchmark evidence planning docs.
- Updates CI and release workflows to Node 24-compatible GitHub action versions.

Download the archive for your platform, unpack it, and place `fastaguard` on
`PATH`:

```bash
tar -xzf fastaguard-v0.1.1-x86_64-unknown-linux-gnu.tar.gz
./fastaguard-v0.1.1-x86_64-unknown-linux-gnu/fastaguard --help
```

This release is intended to be the first source archive suitable for Bioconda:
it contains the project license file and the stable v0.1 FASTA preflight
contract commands:

```bash
fastaguard --help
fastaguard --schema
fastaguard --finding-catalog
```

- v0.1.1 still supports the `assembly` profile only.
- FastaGuard does not estimate biological completeness, taxonomic
  contamination, or assembly correctness.
- Bioconda submission still requires the public source archive SHA256 to be
  recorded in the recipe.

v0.1.0

Toggle v0.1.0's commit message
FastaGuard v0.1.0 is the first assembly-focused FASTA preflight release.

The promise is deliberately narrow:

```text
Before QUAST. Before BUSCO. Before BlobToolKit. Before annotation.
Run FastaGuard first.
```

- Validates plain and gzipped assembly FASTA files.
- Detects malformed or empty records, duplicate IDs, duplicate sequences, invalid symbols, high-N content, tiny contigs, and long N gap runs.
- Reports N50, N90, L50, L90, GC%, AT%, N%, ambiguity rate, and core length statistics.
- Adds machine-readable JSON Schema, finding catalog, structured actions, bounded per-record evidence, provenance, and scope limits.
- Adds self-contained HTML reports with finding evidence, suggested actions, length histogram, and GC-vs-length plot.
- Emits JSON, TSV, HTML, and MultiQC custom-content JSON.
- Includes starter Nextflow, nf-core local module, and Snakemake examples.

Download the archive for your platform, unpack it, and place `fastaguard` on `PATH`:

```bash
tar -xzf fastaguard-v0.1.0-x86_64-unknown-linux-gnu.tar.gz
./fastaguard-v0.1.0-x86_64-unknown-linux-gnu/fastaguard --help
```

macOS Intel and Apple Silicon archives are also built by the release workflow.

```bash
docker build -t fastaguard:local .
docker run --rm -v "$PWD:/data" fastaguard:local /data/sample.fa \
  --profile assembly \
  --out /data/fastaguard_report.html \
  --json /data/fastaguard.json \
  --tsv /data/fastaguard.tsv \
  --multiqc /data/fastaguard_mqc.json
```

```bash
fastaguard sample.fa \
  --profile assembly \
  --out fastaguard_report.html \
  --json fastaguard.json \
  --tsv fastaguard.tsv \
  --multiqc fastaguard_mqc.json
```

```text
0 = pass
1 = warnings above configured threshold
2 = hard QC failure
3 = invalid input / tool error
```

- v0.1.0 supports the `assembly` profile only.
- FastaGuard does not estimate biological completeness, taxonomic contamination, or assembly correctness.
- Use QUAST, BUSCO, BlobToolKit, CheckM, and related tools after FASTA preflight depending on the biological question.
- Windows binaries, Bioconda, Homebrew, upstream nf-core submission, and official Snakemake wrapper submission are planned later.