Claim checker for public texts (TypeSafe), measured manifest load times, corrected README timings
ci / test (3.13) (push) Successful in 3m59s
ci / test (3.12) (push) Successful in 4m1s

This commit is contained in:
kemal committed 2026-10-01 13:05:37 +01:00
1 parent cab702aa24
commit 783e2a0039
9 files changed
+477 -4

No files matched your search

+5 -2
View File
@@ -169,7 +169,7 @@ bash examples/gsa_demo.sh results/gsa_demo 6 # end to end on 6 samples; drop th
```
The demo writes GTCs, a sample summary, an HTML QC report, per sample VCFs and a cohort BCF, PLINK files, bedGraph
tracks and a final report to `results/gsa_demo/`. On a Raspberry Pi 5 all 36 samples take about ten minutes.
tracks and a final report to `results/gsa_demo/`. On a Raspberry Pi 5 the whole demo for all 36 samples (genotyping, QC report, VCFs and exports) takes about ten minutes with two workers.
## Usage
@@ -303,7 +303,7 @@ Every HTML report carries the software version and a checksum of the data it sho
* With the kernels a GSA sample takes about 1.1 s on one Raspberry Pi 5 core (3.4 s pure Python) and a server core
handles about 80 samples a minute (`docs/validation/P9.md`).
* Loading a manifest is a fixed cost per command: about 5 s for GSA and 15 s for Omni2.5 on a Pi.
* Loading a manifest is a fixed cost per command: about 4 s for GSA and 18 s for Omni2.5 on a Pi with the kernels.
* Cohort QC steps grow with samples × loci. On small machines use `--threads 2`, and `--no-cohort-qc` on very
large `genotype` runs, then run the `qc` commands separately.
* `simurg train` needs about 2 GB for 120 GSA samples and takes about 70 minutes on a Pi.
@@ -328,6 +328,9 @@ bash scripts/fetch_data.sh p6 && bash scripts/make_oracle_vcf.sh
uv run pytest tests/oracle # add -m "not slow" to skip the long ones
```
Before publishing text with numbers, `python scripts/docs/check_claims.py FILES` checks every claim against the
validation reports (see `CONTRIBUTING.md`).
CI runs lint, type checks, a secret scan and the unit tests with and without the Rust kernels on Python 3.12 and
3.13 for every push. `scripts/nightly.py` reruns the differential tests against the oracles.