{
  "version": "M5 v6",
  "freshHoldout": false,
  "superiorityEstablished": false,
  "protocol": {
    "lockedAtUTC": "2026-10-13T15:02:50.440954+00:00",
    "freshHoldout": false,
    "superiorityEstablished": false,
    "changes": [
      "Exclude SMG1 to isolate the UPF1 endpoint.",
      "Use original 103 sequence features, excluding added geometry and study-confounded perturbation flag.",
      "Regularize M5 to depth 1/2/3; train every family with the same precision weights."
    ],
    "weightRule": "Per training study: 1/(lfcSE squared + training median SE squared); replace invalid SE with training median; cap at training 95th percentile; normalize equal study totals. Recomputed within inner training, never from validation/test uncertainty.",
    "selection": "12 configurations per family; deterministic gene-disjoint 80/20 inner split; maximize mean unweighted inner Spearman; outer leave-one-study-out diagnostics. No sign flipping, test subgroup selection or outer-score selection.",
    "families": {
      "M5_v6": [
        {
          "max_depth": 1,
          "min_child_weight": 20,
          "reg_lambda": 10
        },
        {
          "max_depth": 1,
          "min_child_weight": 20,
          "reg_lambda": 100
        },
        {
          "max_depth": 1,
          "min_child_weight": 100,
          "reg_lambda": 10
        },
        {
          "max_depth": 1,
          "min_child_weight": 100,
          "reg_lambda": 100
        },
        {
          "max_depth": 2,
          "min_child_weight": 20,
          "reg_lambda": 10
        },
        {
          "max_depth": 2,
          "min_child_weight": 20,
          "reg_lambda": 100
        },
        {
          "max_depth": 2,
          "min_child_weight": 100,
          "reg_lambda": 10
        },
        {
          "max_depth": 2,
          "min_child_weight": 100,
          "reg_lambda": 100
        },
        {
          "max_depth": 3,
          "min_child_weight": 20,
          "reg_lambda": 10
        },
        {
          "max_depth": 3,
          "min_child_weight": 20,
          "reg_lambda": 100
        },
        {
          "max_depth": 3,
          "min_child_weight": 100,
          "reg_lambda": 10
        },
        {
          "max_depth": 3,
          "min_child_weight": 100,
          "reg_lambda": 100
        }
      ],
      "ExtraTrees": [
        {
          "min_samples_leaf": 3,
          "max_features": 0.5,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 3,
          "max_features": 0.5,
          "max_depth": null
        },
        {
          "min_samples_leaf": 3,
          "max_features": 1.0,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 3,
          "max_features": 1.0,
          "max_depth": null
        },
        {
          "min_samples_leaf": 10,
          "max_features": 0.5,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 10,
          "max_features": 0.5,
          "max_depth": null
        },
        {
          "min_samples_leaf": 10,
          "max_features": 1.0,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 10,
          "max_features": 1.0,
          "max_depth": null
        },
        {
          "min_samples_leaf": 30,
          "max_features": 0.5,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 30,
          "max_features": 0.5,
          "max_depth": null
        },
        {
          "min_samples_leaf": 30,
          "max_features": 1.0,
          "max_depth": 12
        },
        {
          "min_samples_leaf": 30,
          "max_features": 1.0,
          "max_depth": null
        }
      ],
      "ridge": [
        {
          "alpha": 0.01
        },
        {
          "alpha": 0.1
        },
        {
          "alpha": 1.0
        },
        {
          "alpha": 10.0
        },
        {
          "alpha": 100.0
        },
        {
          "alpha": 1000.0
        },
        {
          "alpha": 10000.0
        },
        {
          "alpha": 100000.0
        },
        {
          "alpha": 1000000.0
        },
        {
          "alpha": 10000000.0
        },
        {
          "alpha": 100000000.0
        },
        {
          "alpha": 1000000000.0
        }
      ]
    },
    "sources": {
      "docs/validation/2026-10-13-m5-development-v5/development-inputs.parquet": "72bc28040fd68265cede59c5f5cd81e7fe0ba58bdc4a545a88de0ad5090dd345",
      "docs/validation/2026-10-13-response-reconciliation-v4/Aliouat2019-te-targets.csv": "a1f733941a86ab0810ae14bd7bdf1593397d00093890b8b417fa40452930b917",
      "docs/validation/2026-10-13-response-reconciliation-v4/NMDRHT-te-targets.csv": "0354af35151579d37fee71e81712783f8c185f01f7ef3fa040a032455d5ed4ed"
    },
    "features": [
      "n_uorfs_aug",
      "n_uorfs_near",
      "max_uorf_len",
      "dist_cap_to_first_uorf",
      "first_uorf_is_aug",
      "uorf_overlaps_main_orf",
      "min_dist_stop_to_cds",
      "kozak_max",
      "kozak_first",
      "utr_len",
      "utr_gc",
      "utr_dg",
      "kozak_x_dist",
      "n_uorfs_x_utrlen",
      "gc_x_dg",
      "main_kozak",
      "cds_len",
      "utr3_len",
      "dg_per_nt",
      "utr_kmer_A",
      "utr_kmer_C",
      "utr_kmer_G",
      "utr_kmer_T",
      "utr_kmer_AA",
      "utr_kmer_AC",
      "utr_kmer_AG",
      "utr_kmer_AT",
      "utr_kmer_CA",
      "utr_kmer_CC",
      "utr_kmer_CG",
      "utr_kmer_CT",
      "utr_kmer_GA",
      "utr_kmer_GC",
      "utr_kmer_GG",
      "utr_kmer_GT",
      "utr_kmer_TA",
      "utr_kmer_TC",
      "utr_kmer_TG",
      "utr_kmer_TT",
      "utr_kmer_AAA",
      "utr_kmer_AAC",
      "utr_kmer_AAG",
      "utr_kmer_AAT",
      "utr_kmer_ACA",
      "utr_kmer_ACC",
      "utr_kmer_ACG",
      "utr_kmer_ACT",
      "utr_kmer_AGA",
      "utr_kmer_AGC",
      "utr_kmer_AGG",
      "utr_kmer_AGT",
      "utr_kmer_ATA",
      "utr_kmer_ATC",
      "utr_kmer_ATG",
      "utr_kmer_ATT",
      "utr_kmer_CAA",
      "utr_kmer_CAC",
      "utr_kmer_CAG",
      "utr_kmer_CAT",
      "utr_kmer_CCA",
      "utr_kmer_CCC",
      "utr_kmer_CCG",
      "utr_kmer_CCT",
      "utr_kmer_CGA",
      "utr_kmer_CGC",
      "utr_kmer_CGG",
      "utr_kmer_CGT",
      "utr_kmer_CTA",
      "utr_kmer_CTC",
      "utr_kmer_CTG",
      "utr_kmer_CTT",
      "utr_kmer_GAA",
      "utr_kmer_GAC",
      "utr_kmer_GAG",
      "utr_kmer_GAT",
      "utr_kmer_GCA",
      "utr_kmer_GCC",
      "utr_kmer_GCG",
      "utr_kmer_GCT",
      "utr_kmer_GGA",
      "utr_kmer_GGC",
      "utr_kmer_GGG",
      "utr_kmer_GGT",
      "utr_kmer_GTA",
      "utr_kmer_GTC",
      "utr_kmer_GTG",
      "utr_kmer_GTT",
      "utr_kmer_TAA",
      "utr_kmer_TAC",
      "utr_kmer_TAG",
      "utr_kmer_TAT",
      "utr_kmer_TCA",
      "utr_kmer_TCC",
      "utr_kmer_TCG",
      "utr_kmer_TCT",
      "utr_kmer_TGA",
      "utr_kmer_TGC",
      "utr_kmer_TGG",
      "utr_kmer_TGT",
      "utr_kmer_TTA",
      "utr_kmer_TTC",
      "utr_kmer_TTG",
      "utr_kmer_TTT"
    ],
    "limits": [
      "Both studies already used and repeatedly inspected; development only.",
      "Acute 12h versus chronic 72h UPF1 depletion, unmatched NMDRHT time controls, source quantification differences persist.",
      "Sequence-only input cannot identify perturbation duration or experimental context.",
      "Precision weighting relies on approximate DESeq2 standard errors; it does not repair study confounding.",
      "Gene overlap across studies is reported; all eligible outer genes are retained."
    ]
  },
  "audit": {
    "sharedGenes": 4628,
    "targetSpearman": -0.18859932464146273,
    "interpretation": "Measured endpoints disagree across studies; not proof of a sign error or specific biological cause. Coefficient construction reviewed: both target RPF response minus RNA response. No labels changed."
  },
  "folds": [
    {
      "heldStudy": "Aliouat2019",
      "genes": 5268,
      "overlappingGenes": 4628,
      "metrics": {
        "M5_v6": {
          "spearman": -0.21904729430995962,
          "mae": 0.41323403787325835,
          "r2": -0.3883784082088917
        },
        "ExtraTrees": {
          "spearman": -0.21243892464576924,
          "mae": 0.4318184883068632,
          "r2": -0.5032536110787553
        },
        "ridge": {
          "spearman": -0.17884214255739603,
          "mae": 0.3964359414309435,
          "r2": -0.31834848165593654
        },
        "training_median": {
          "spearman": null,
          "mae": 0.33846793721561474,
          "r2": -0.044244709574735586
        }
      },
      "comparisons": [
        {
          "baseline": "ExtraTrees",
          "deltaSpearman": -0.006608369664190372,
          "adjustedPairedCi": [
            -0.0313182898373483,
            0.012983474694475267
          ]
        },
        {
          "baseline": "ridge",
          "deltaSpearman": -0.04020515175256359,
          "adjustedPairedCi": [
            -0.06738125251032764,
            -0.014977491640156911
          ]
        }
      ],
      "selections": {
        "M5_v6": {
          "configurationId": 8,
          "innerSpearman": 0.32878326245944145
        },
        "ExtraTrees": {
          "configurationId": 2,
          "innerSpearman": 0.35488034002688884
        },
        "ridge": {
          "configurationId": 0,
          "innerSpearman": 0.24349407651288743
        }
      }
    },
    {
      "heldStudy": "NMDRHT",
      "genes": 4886,
      "overlappingGenes": 4628,
      "metrics": {
        "M5_v6": {
          "spearman": -0.32067035788201437,
          "mae": 0.48198898442400856,
          "r2": -0.1851241954455145
        },
        "ExtraTrees": {
          "spearman": -0.3255907721144607,
          "mae": 0.4751745734493849,
          "r2": -0.15774983281660404
        },
        "ridge": {
          "spearman": -0.281211610339668,
          "mae": 0.4694046534453878,
          "r2": -0.141290464783552
        },
        "training_median": {
          "spearman": null,
          "mae": 0.447769565919392,
          "r2": -0.057090534796314873
        }
      },
      "comparisons": [
        {
          "baseline": "ExtraTrees",
          "deltaSpearman": 0.004920414232446324,
          "adjustedPairedCi": [
            -0.009745179498410977,
            0.019162607259117188
          ]
        },
        {
          "baseline": "ridge",
          "deltaSpearman": -0.03945874754234635,
          "adjustedPairedCi": [
            -0.06399073927112503,
            -0.018534576652131356
          ]
        }
      ],
      "selections": {
        "M5_v6": {
          "configurationId": 11,
          "innerSpearman": 0.24748727182605795
        },
        "ExtraTrees": {
          "configurationId": 10,
          "innerSpearman": 0.23842517938761545
        },
        "ridge": {
          "configurationId": 5,
          "innerSpearman": 0.21223422499536068
        }
      }
    }
  ],
  "finalModels": {
    "M5_v6": {
      "configurationId": 8,
      "sha256": "92db2649385ec4f2f9ce0b81ce6aab0d332f76052b74feab7af564b7cfb088e6"
    },
    "ExtraTrees": {
      "configurationId": 2,
      "sha256": "d9e4f72ba77d59b7248133551fde65c0f94076d639ddeddc78fb23c847d630d8"
    },
    "ridge": {
      "configurationId": 2,
      "sha256": "070a9f55da48f483dd7ee3b161a7ad210a533abb75930a20f3bf9b1477b0595d"
    }
  },
  "previousV5": {
    "Aliouat2019": {
      "spearman": -0.3122084098213585,
      "mae": 0.4548342500886957,
      "r2": -0.5956244139223363
    },
    "NMDRHT": {
      "spearman": -0.2701988289045821,
      "mae": 0.5059331659600207,
      "r2": -0.27514061116864696
    }
  },
  "promotionGate": {
    "passed": false,
    "reason": "Negative correlation and negative R\u00b2 in both UPF1 transfer diagnostics; ridge has higher Spearman on both; no fresh study has qualified. Transfer is not fixed."
  },
  "search": {
    "date": "2026-10-13",
    "qualifiedStudies": 0,
    "freshTestRun": false,
    "scope": "Targeted web searches using UPF1/RPF/ribosome profiling and human/HeLa/HepG2 terms, followed by primary GEO metadata and two full-text method reviews. An extension of previous audits, not an exhaustive repository census. No numerical outcomes from new studies were scored.",
    "decisions": [
      {
        "id": "GSE296644",
        "url": "https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE296644",
        "reason": "UPF1 knockdown with Oxford Nanopore direct RNA sequencing; no matched RPF assay established."
      },
      {
        "id": "GSE246483",
        "url": "https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE246483",
        "reason": "Human UPF1 knockdown/mutant complementation, triplicate rRNA-depleted RNA-seq; no matched RPF assay established."
      },
      {
        "id": "GSE228561 / GSE228565",
        "url": "https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE228561",
        "reason": "Human renal-cell-carcinoma ribosome profiling follows fumarate-related genotype changes. The screened mutant RPF sample does not establish UPF1 perturbation."
      },
      {
        "id": "GSE252369 / NSUN methylation",
        "url": "https://pmc.ncbi.nlm.nih.gov/articles/PMC11235314/",
        "reason": "Human UPF1 knockdown is measured by RNA-seq in WT and NSUN2 knockout cells; UPF1 footprints are CLIP/RNA-binding measurements, not matched ribosome-protected fragments."
      },
      {
        "id": "Human heart / fibroblast RBP analysis",
        "url": "https://pmc.ncbi.nlm.nih.gov/articles/PMC8687540/",
        "reason": "RNA/Ribo-seq and RBP-target correlations are available, but this is not a direct UPF1-perturbation experiment. Fibroblast replication uses TGF-beta stimulation."
      }
    ],
    "nextEvidence": "A new matched human UPF1 perturbation/control RNA-and-RPF study with biological replicates, exact sample pairing, perturbation duration and time-matched controls. Obtain author clarification of the existing count discrepancy and harmonize raw-read quantification before another broad transfer claim. Freeze models and analysis rules before examining any new outcomes."
  }
}