fix: deduplicate gene_symbol in scoring to prevent non-canonical ID inflation

gene_universe contains 1,539 gene_symbols mapping to multiple Ensembl IDs
(3,033 excess). Non-canonical IDs lack data in some evidence tables, causing
weighted_sum/available_weight to inflate their composite scores.

Fix: after scoring SQL, keep one row per gene_symbol with the most
evidence_count (tiebreak by composite_score DESC). 22,604 → 19,555 genes.

Results: HIGH 82→4, all top 20 now have 5-6 layers with expression data.
Validation PASSED (CDH23 98.3rd percentile, median known gene 83.3%).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-16 10:02:32 +08:00
parent b151faa80a
commit a228a56984
10 changed files with 236 additions and 3192 deletions

View File

@@ -1,6 +1,6 @@
{
"run_id": "093b405b-5a20-4f35-b5b8-04f02451789d",
"timestamp": "2026-02-15T21:49:14.940206+00:00",
"run_id": "f5587e39-163b-418c-8ac2-593b47323f34",
"timestamp": "2026-02-16T01:59:18.969516+00:00",
"pipeline_version": "0.1.0",
"parameters": {
"gnomad": 0.2,
@@ -49,9 +49,9 @@
],
"validation_metrics": {},
"tier_statistics": {
"total": 21177,
"high": 82,
"medium": 9626,
"low": 11469
"total": 18243,
"high": 4,
"medium": 8051,
"low": 10188
}
}