Add functional specification (416 items) and link it from plan/docs
SIMURGARRAY_FUNCTIONAL_SPEC.md defines externally visible behaviour: CLI, inputs, genotyping outputs, QC and report, cytogenetics CNV/LOH, targeted PGx copy number, star alleles, methylation control QC, edge-case catalogue, performance targets, open questions and a traceability table.
This commit is contained in:
1 parent
b63852e775
commit
180b6f160a
3 files changed
+4136
-1
No files matched your search
@@ -3,7 +3,8 @@
|
|||||||
Personal research toolkit for Illumina Infinium genotyping BeadChip data
|
Personal research toolkit for Illumina Infinium genotyping BeadChip data
|
||||||
(IDAT → normalization → genotype calling → BAF/LRR → QC → VCF/PLINK; later CN/LOH, PGx, cluster training).
|
(IDAT → normalization → genotype calling → BAF/LRR → QC → VCF/PLINK; later CN/LOH, PGx, cluster training).
|
||||||
|
|
||||||
Start with **SIMURGARRAY_MASTER_PLAN.md** (full specification and roadmap).
|
Start with **SIMURGARRAY_MASTER_PLAN.md** (architecture, algorithms, roadmap) and
|
||||||
|
**SIMURGARRAY_FUNCTIONAL_SPEC.md** (416 itemised requirements: CLI, inputs, outputs, QC, CN, PGx, methylation, edge cases).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
bash scripts/bootstrap_refs.sh # clone reference open-source repos into refs/
|
bash scripts/bootstrap_refs.sh # clone reference open-source repos into refs/
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
@@ -42,6 +42,10 @@
|
|||||||
|
|
||||||
## 0. How to use this document
|
## 0. How to use this document
|
||||||
|
|
||||||
|
- **Detailed functional specification:** `SIMURGARRAY_FUNCTIONAL_SPEC.md` is the authoritative spec for externally
|
||||||
|
visible behaviour: CLI options, validation, file schemas, QC semantics, messages, edge cases and acceptance tests.
|
||||||
|
Each of its items has an ID and is traced to a § and phase of this plan. This plan remains authoritative for
|
||||||
|
algorithms and numerics.
|
||||||
- Work **phase by phase** (§18). Do not start a phase before the previous phase's acceptance criteria pass.
|
- Work **phase by phase** (§18). Do not start a phase before the previous phase's acceptance criteria pass.
|
||||||
- Every algorithm in §7 is written as exact math with its **evidence source** in brackets:
|
- Every algorithm in §7 is written as exact math with its **evidence source** in brackets:
|
||||||
**[DOC]** Illumina public documentation / tech notes · **[LIT]** papers & expired patents ·
|
**[DOC]** Illumina public documentation / tech notes · **[LIT]** papers & expired patents ·
|
||||||
@@ -681,6 +685,14 @@ per MAF bin; rare-variant performance compared with zCall-style rescue.
|
|||||||
|
|
||||||
## 13. SimurgArray output specification
|
## 13. SimurgArray output specification
|
||||||
|
|
||||||
|
> **See `SIMURGARRAY_FUNCTIONAL_SPEC.md` §4 and §6–§9** (items OUT-*, QC-*, CYTO-*, PCN-*, PGX-*, MET-*) for the
|
||||||
|
> exact schemas, headers and column orders. Where file names below differ from the spec, the spec wins:
|
||||||
|
> - `<sample>.snv.vcf.gz`, `<sample>.cyto.cnv.vcf.gz`, `<sample>.pgx_cn.vcf.gz`;
|
||||||
|
> - `<sample>.cyto.json` and `<sample>.pgx.json`;
|
||||||
|
> - `controls_raw.tsv` and `controls_qc.tsv`, written by `genotype` itself;
|
||||||
|
> - `qc_report_YYYY_MM_DD.html` and `qc_table_YYYY_MM_DD.xlsx`;
|
||||||
|
> - the PGx batch TSVs.
|
||||||
|
|
||||||
Per sample (in `<out>/samples/<sample>/`):
|
Per sample (in `<out>/samples/<sample>/`):
|
||||||
| File | Content |
|
| File | Content |
|
||||||
|---|---|
|
|---|---|
|
||||||
@@ -705,6 +717,15 @@ Per batch (in `<out>/`):
|
|||||||
|
|
||||||
## 14. CLI specification (`simurg`)
|
## 14. CLI specification (`simurg`)
|
||||||
|
|
||||||
|
> **See `SIMURGARRAY_FUNCTIONAL_SPEC.md` §2–§3** (items CLI-*, IN-*) for:
|
||||||
|
> - the full command tree, and every option with its type, default and validation;
|
||||||
|
> - precedence (CLI > YAML > profile > defaults);
|
||||||
|
> - the `--log-json` schema and the message-code catalogue;
|
||||||
|
> - overwrite/resume policy and exit codes (adds 4 = no sample succeeded, and 130/143 = interrupted);
|
||||||
|
> - sample-sheet and input validation rules.
|
||||||
|
>
|
||||||
|
> The summary below is kept for orientation.
|
||||||
|
|
||||||
```
|
```
|
||||||
simurg inspect <file> # print header/TOC of IDAT/BPM/EGT/GTC
|
simurg inspect <file> # print header/TOC of IDAT/BPM/EGT/GTC
|
||||||
simurg ingest --idats DIR|--sheet F --bpm F [--csv F] --out DIR # → sample_intensity parquet
|
simurg ingest --idats DIR|--sheet F --bpm F [--csv F] --out DIR # → sample_intensity parquet
|
||||||
|
|||||||
Reference in new issue
Block a user