# APOSTOLUS 8-1 · 합성데이터 생성과 TSTR 검증 하네스

설계서의 판정 장치를 표준 라이브러리 Python으로 실행하는 참조 구현이다. 입력은 고정 픽스처 하나이고 모든 자료는 코드가 만든 가상 세계에서 나온다. 실제 코호트는 읽지 않는다.

```sh
python3 -B -m synth8.orchestrate --output evidence/synth8-run.json
python3 -B -m synth8.audit --run evidence/synth8-run.json --output evidence/synth8-audit.json
python3 -B -m synth8.calibrate --output evidence/synth8-calibration.json
python3 -B -m unittest discover -s tests -p test_synth8.py -v
```

| 파일 | 역할 |
| --- | --- |
| `world.py` | 아형 3개·공유 요인 4개·배치 3개의 가상 다중오믹스 세계. TPM, beta, 결측이 있는 임상 변수, 생존시간을 원 단위로 낸다 |
| `schema.py` | 행 검사기, `log2(TPM+1)`·M-value·공개 표준화, ComBat 형식 배치 보정, 원 단위 복원 |
| `dp.py` | subsampled Gaussian의 Rényi DP, zCDP, 원장, 잡음 배수 보정, MIA AUROC 상한, DP-SGD 클립·잡음 집계 |
| `generator.py` | 공개 기저와 DP 조건부 인자 Gaussian(G0) |
| `metrics.py` | 수축 LDA·ridge Cox·ANOVA F, C-index·Macro-F1·AUROC·Spearman, 보존율 판정 규칙 |
| `privacy.py` | DCR, 두 멤버십 추론 공격, DeLong 구간, 감사 표본 수 |
| `t81.py` | 다섯 생성기 실행과 출시 규칙 |
| `audit.py` | 솔버를 import하지 않고 다른 구현으로 재계산하는 감사기 |
| `calibrate.py` | DCR 허용오차의 귀무 보정과 G0 구조 상한 탐침. 동결 실행에는 들어가지 않는다 |

실행 문서의 `scope`는 `synthetic_only`다. 감사 문서의 `researchStatus`가 `REAL_COHORT_NOT_EXECUTED`인 동안 이 결과로 실제 코호트의 보존율이나 프라이버시를 말할 수 없다. 증거 문서에는 판정에 쓰인 점수·거리 배열만 들어가고 원 단위 행은 들어가지 않는다.
