{
  "registry_schema": "nmd-vcell-technical-method-registry/1.0",
  "interface_build": "EA-20260817-57",
  "resource_release": "v1.2.0-measured-dmd-evidence",
  "checked_at": "2026-08-16",
  "route": "/resource/technology-methods/",
  "data_contract": {
    "object_shape": "AnnData-shaped typed dataset",
    "matrix": "X = declared analysis matrix; raw counts are retained in a named layer when available",
    "observations": [
      "cell/sample identifier",
      "donor or culture",
      "batch/assay",
      "disease",
      "cell type/state",
      "perturbation",
      "dose",
      "time",
      "control class"
    ],
    "variables": [
      "stable gene identifier",
      "symbol",
      "feature selection state",
      "reference genome"
    ],
    "layers": [
      "raw/counts",
      "normalized",
      "model input only when transformation is named"
    ],
    "unstructured": [
      "source accession",
      "license",
      "checksums",
      "processing lineage",
      "task eligibility",
      "split hash"
    ],
    "embedding_rule": "obsm embeddings are derived views and never replace the declared source matrix or provenance."
  },
  "baseline_firewall": {
    "permanent_controls": [
      "zero change",
      "control/train mean",
      "perturbed or matching mean where legal",
      "ridge/linear",
      "nearest neighbor where legal"
    ],
    "same_coverage_rule": "Every comparator uses the same training objects, held-out units, feature set, seeds and metric implementation as the advanced model.",
    "advancement_rule": "A complex model advances only when it adds perturbation-specific, distributional or calibrated value beyond simple controls on the frozen task.",
    "stop_rule": "If the task lacks matched truth, the correct result is an abstention plus a prospective study—not a proxy score."
  },
  "architecture_layers": [
    {
      "layer_id": "TECH-01",
      "title": "Identity & ontology",
      "question": "Are genes, cells, diseases, perturbations and assays named consistently?",
      "input": "source identifiers + metadata",
      "artifact": "canonical IDs, ontology terms and ambiguity receipts",
      "gate": "No silent alias, species or cell-type coercion",
      "local_route": "/resource/search"
    },
    {
      "layer_id": "TECH-02",
      "title": "Dataset contract",
      "question": "Can a machine and a reviewer reconstruct what each matrix dimension means?",
      "input": "matrix + sample/cell + feature metadata",
      "artifact": "typed AnnData-shaped Dataset Card with provenance",
      "gate": "X, obs, var, layers and uns roles are explicit",
      "local_route": "/resource/datasets/"
    },
    {
      "layer_id": "TECH-03",
      "title": "QC & harmonization",
      "question": "Which technical effects were measured, corrected or left unresolved?",
      "input": "raw/count layers + donor, batch and assay metadata",
      "artifact": "QC receipt, excluded units and transformation lineage",
      "gate": "Biological replicates remain the inferential unit",
      "local_route": "/resource/data-universe/"
    },
    {
      "layer_id": "TECH-04",
      "title": "Task & split builder",
      "question": "What is predicted, and along which axis must it generalize?",
      "input": "context × perturbation × time × output contract",
      "artifact": "frozen estimand, split, leakage checks and holdout identity",
      "gate": "Target, context and output are unseen exactly as declared",
      "local_route": "/resource/benchmarks/generalization/"
    },
    {
      "layer_id": "TECH-05",
      "title": "Permanent baseline lane",
      "question": "Does the task require a complex model at all?",
      "input": "the identical training set, genes, split and metric code",
      "artifact": "zero-change, mean, linear and compatible neighbor results",
      "gate": "Advanced models cannot advance without same-coverage controls",
      "local_route": "/resource/benchmarks/"
    },
    {
      "layer_id": "TECH-06",
      "title": "Model adapter",
      "question": "Can a model family consume this contract and return the required object?",
      "input": "frozen task + versioned model/configuration",
      "artifact": "ModelRun with mean vector, population or uncertainty output",
      "gate": "Architecture capability is not inferred from model name",
      "local_route": "/resource/models/"
    },
    {
      "layer_id": "TECH-07",
      "title": "Evaluation & gate",
      "question": "Did the model recover perturbation-specific and biologically useful signal?",
      "input": "predictions + held-out truth + permanent baselines",
      "artifact": "six-level scorecard, uncertainty and abstention decision",
      "gate": "One aggregate expression metric cannot unlock a claim",
      "local_route": "/resource/no-wet-lab-evaluation/"
    },
    {
      "layer_id": "TECH-08",
      "title": "Registry & outcome return",
      "question": "Can the result be reproduced, challenged and updated by an experiment?",
      "input": "ModelRun, Study, Prediction and measured Outcome",
      "artifact": "immutable receipt and evidence-graph return",
      "gate": "Null, toxic and failed outcomes are retained",
      "local_route": "/resource/registry"
    }
  ],
  "model_families": [
    {
      "family_id": "MF-01",
      "title": "Linear & non-parametric baselines",
      "core_mechanism": "Predict no change, a matched mean, a regularized linear response or a nearest observed neighbor.",
      "best_fit_question": "Is there learnable signal beyond systematic assay and context structure?",
      "input_contract": "matched feature space; frozen split; context labels for matching where permitted",
      "output_contract": "aggregate response vector or neighbor-based reference",
      "strengths": [
        "transparent",
        "low variance",
        "fast leakage diagnostic",
        "permanent comparator"
      ],
      "failure_modes": [
        "cannot represent complex interactions",
        "matching can leak held-out context",
        "good mean error may miss perturbation identity"
      ],
      "minimum_data": "one task-compatible training response set plus held-out truth",
      "permanent_baselines": [
        "zero change",
        "train/control mean",
        "perturbed or matching mean when legal",
        "ridge",
        "nearest neighbor when legal"
      ],
      "evaluation_requirements": [
        "mean fidelity",
        "perturbation-specific delta",
        "split integrity"
      ],
      "reference_methods": [
        "Systema",
        "ridge",
        "matching mean"
      ],
      "local_state": "LOCALLY_EXECUTED_LIMITED",
      "local_runs": [
        "MRUN-RIDGE-SAFE-2.3-G0-REPEATED-FOLD"
      ],
      "next_gate": "Retain ridge as a permanent same-assay comparator; do not extend it to DMD transfer."
    },
    {
      "family_id": "MF-02",
      "title": "Factorized latent generative models",
      "core_mechanism": "Disentangle basal cell state, perturbation and covariates in a latent representation, then compose an unseen condition.",
      "best_fit_question": "Can known factors be recombined across dose, time or cell context?",
      "input_contract": "cell-level expression with perturbation, covariate, dose/time and control labels",
      "output_contract": "counterfactual cells or an expected post-perturbation distribution",
      "strengths": [
        "compositional representation",
        "covariate conditioning",
        "counterfactual generation"
      ],
      "failure_modes": [
        "disentanglement is not guaranteed",
        "performance declines as unseen covariates accumulate",
        "batch may be encoded as biology"
      ],
      "minimum_data": "factorial overlap across perturbation and covariate combinations",
      "permanent_baselines": [
        "matching mean",
        "context-conditioned ridge",
        "nearest observed condition"
      ],
      "evaluation_requirements": [
        "mean fidelity",
        "delta recovery",
        "distribution fidelity",
        "OOD covariate stress test"
      ],
      "reference_methods": [
        "CPA",
        "scGen",
        "biolord"
      ],
      "local_state": "SOURCE_VERIFIED_NOT_RUN",
      "local_runs": [],
      "next_gate": "Run only after a factorial task exposes which covariate combinations are genuinely unseen."
    },
    {
      "family_id": "MF-03",
      "title": "Graph-informed perturbation models",
      "core_mechanism": "Propagate gene and perturbation information over co-expression, ontology or learned graphs.",
      "best_fit_question": "Can structured gene relationships improve unseen-gene or combination response prediction?",
      "input_contract": "perturbation responses plus gene identities and a versioned graph or embedding source",
      "output_contract": "post-perturbation mean expression or effect vector",
      "strengths": [
        "uses gene relationships",
        "supports structured inductive bias",
        "can represent combinations"
      ],
      "failure_modes": [
        "graph mismatch",
        "single-perturbation data may not identify combinations",
        "relation priors can dominate sparse truth"
      ],
      "minimum_data": "single and preferably combinatorial perturbations with stable gene coverage",
      "permanent_baselines": [
        "additive single-perturbation baseline",
        "ridge",
        "matching mean"
      ],
      "evaluation_requirements": [
        "held-out genes",
        "held-out combinations",
        "sign and interaction recovery",
        "seed stability"
      ],
      "reference_methods": [
        "GEARS",
        "TxPert"
      ],
      "local_state": "LOCALLY_EXECUTED_FAILED_OR_PENDING",
      "local_runs": [
        "MRUN-GEARS-0.1.2-FIVE-SEED-20260713",
        "MRUN-TXPERT-CONFIG-GAT-SEED-20260712"
      ],
      "next_gate": "GEARS remains failed on five frozen splits; TxPert remains calibration-pending. Neither unlocks DMD prediction."
    },
    {
      "family_id": "MF-04",
      "title": "Foundation transformer & embedding models",
      "core_mechanism": "Pretrain token or rank-based cell representations at scale, then adapt embeddings or decoders to a downstream task.",
      "best_fit_question": "Does broad pretraining improve a precisely frozen perturbation or cell-state task?",
      "input_contract": "gene-aligned expression plus the exact tokenizer, vocabulary, checkpoint and adaptation recipe",
      "output_contract": "cell embeddings, labels or decoded response vectors depending on the adapter",
      "strengths": [
        "broad representation prior",
        "transferable embeddings",
        "large reference context"
      ],
      "failure_modes": [
        "embedding quality is not perturbation accuracy",
        "vocabulary/context mismatch",
        "scale can obscure task leakage"
      ],
      "minimum_data": "checkpoint-compatible genes plus task-specific adaptation and held-out truth",
      "permanent_baselines": [
        "PCA or linear embedding",
        "ridge",
        "train mean",
        "task-specific shallow model"
      ],
      "evaluation_requirements": [
        "task-level baseline comparison",
        "OOD split",
        "ablation of pretraining",
        "reproduction receipt"
      ],
      "reference_methods": [
        "scGPT",
        "Geneformer",
        "scFoundation",
        "CellFM"
      ],
      "local_state": "LOCALLY_EXECUTED_FAILED",
      "local_runs": [
        "MRUN-SCGPT-0.2.5-FIVE-SEED-20260714"
      ],
      "next_gate": "The local scGPT adapter lost to same-coverage baselines; a new checkpoint is a new frozen ModelRun, not an inherited upgrade."
    },
    {
      "family_id": "MF-05",
      "title": "Set-to-set & context-prompted models",
      "core_mechanism": "Represent a cell population as a set and condition one set of cells on another context or prompt.",
      "best_fit_question": "Can a model predict population transitions while using context examples at inference time?",
      "input_contract": "cell sets, context labels, perturbation identity and a task-compatible feature universe",
      "output_contract": "predicted cell set, state embedding or transition distribution",
      "strengths": [
        "population-native",
        "context prompting",
        "heterogeneity-aware representation"
      ],
      "failure_modes": [
        "prompt leakage",
        "set composition confounding",
        "source-reported scale may not transfer to disease context"
      ],
      "minimum_data": "multiple comparable cell populations per context and held-out population truth",
      "permanent_baselines": [
        "matching population",
        "stratified mean",
        "optimal-transport baseline"
      ],
      "evaluation_requirements": [
        "distribution fidelity",
        "composition recovery",
        "prompt ablation",
        "unseen-context holdout"
      ],
      "reference_methods": [
        "Arc State",
        "Arc State/Stack"
      ],
      "local_state": "COMPATIBILITY_ROUTE_EXECUTED_NO_ADVANCEMENT",
      "local_runs": [
        "NMD-B1-COMPAT-HEPG2-R1-20260816"
      ],
      "next_gate": "STATE: Do not rerun by reputation; require a corrected preregistration, untouched truth or materially different task-compatible checkpoint. Stack: Identify a task-compatible pretrained genetic checkpoint and preregister an untouched benchmark before any model-performance claim."
    },
    {
      "family_id": "MF-06",
      "title": "Optimal-transport population maps",
      "core_mechanism": "Learn a transport map from an unpaired control population to a treated population.",
      "best_fit_question": "How does a distribution of control cells move under treatment when cells are not paired?",
      "input_contract": "unpaired control and treated cell populations with shared features and sufficient state coverage",
      "output_contract": "transported cells or a treatment-conditioned population distribution",
      "strengths": [
        "distributional output",
        "unpaired design",
        "population geometry"
      ],
      "failure_modes": [
        "rare states are unstable",
        "transport assumptions may not identify biology",
        "composition shifts can mimic state transitions"
      ],
      "minimum_data": "adequate cells across represented states in both conditions",
      "permanent_baselines": [
        "identity map",
        "mean shift",
        "nearest-neighbor transport"
      ],
      "evaluation_requirements": [
        "MMD or energy distance",
        "Wasserstein distance",
        "state composition",
        "rare-state stratification"
      ],
      "reference_methods": [
        "CellOT"
      ],
      "local_state": "SOURCE_VERIFIED_NOT_RUN",
      "local_runs": [],
      "next_gate": "Use only for a population-output task with explicit rare-state and composition stress tests."
    },
    {
      "family_id": "MF-07",
      "title": "Probabilistic sparse-effect models",
      "core_mechanism": "Estimate interpretable perturbation effects with a probabilistic prior and calibrated uncertainty.",
      "best_fit_question": "Which gene-level effects are supported, and where should the model abstain?",
      "input_contract": "replicated perturbation responses with biological units, covariates and stable features",
      "output_contract": "effect posterior, uncertainty interval and sparse active set",
      "strengths": [
        "uncertainty-aware",
        "interpretable effects",
        "appropriate for sparse signals"
      ],
      "failure_modes": [
        "prior sensitivity",
        "poor scaling",
        "cell-level pseudo-replication produces false confidence"
      ],
      "minimum_data": "independent biological replication, not cells treated as replicates",
      "permanent_baselines": [
        "regularized linear model",
        "empirical Bayes shrinkage",
        "no-effect model"
      ],
      "evaluation_requirements": [
        "interval coverage",
        "calibration",
        "effect-sign recovery",
        "donor-level resampling"
      ],
      "reference_methods": [
        "GPerturb"
      ],
      "local_state": "SOURCE_VERIFIED_NOT_RUN",
      "local_runs": [],
      "next_gate": "Prioritize when replicated DMD perturbation outcomes exist and uncertainty is decision-critical."
    },
    {
      "family_id": "MF-08",
      "title": "Distributional flow & diffusion generators",
      "core_mechanism": "Learn a conditional generative process that samples heterogeneous post-perturbation cells.",
      "best_fit_question": "Can the full conditional response distribution be generated rather than only its mean?",
      "input_contract": "large cell-level perturbation datasets with context, dose/time and robust controls",
      "output_contract": "sampled post-perturbation cell population",
      "strengths": [
        "multimodal distributions",
        "heterogeneity",
        "sample-level counterfactuals"
      ],
      "failure_modes": [
        "plausible-looking hallucinated states",
        "mode collapse",
        "weak calibration",
        "high compute burden"
      ],
      "minimum_data": "large, balanced and context-rich perturbation populations",
      "permanent_baselines": [
        "matching population",
        "CellOT or transport baseline",
        "conditional Gaussian baseline"
      ],
      "evaluation_requirements": [
        "distribution metrics",
        "mode coverage",
        "calibration",
        "biological state validity",
        "prospective function"
      ],
      "reference_methods": [
        "conditional flow matching",
        "diffusion perturbation models"
      ],
      "local_state": "WATCHLIST_NOT_RUN",
      "local_runs": [],
      "next_gate": "Do not adopt until the population task, compute budget and prospective validation route are frozen."
    }
  ],
  "evaluation_ladder": [
    {
      "level_id": "EVAL-01",
      "title": "Mean fidelity",
      "question": "Is the average predicted profile numerically close?",
      "measures": [
        "RMSE",
        "MAE",
        "mean correlation"
      ],
      "required_baselines": [
        "zero change",
        "train/control mean",
        "ridge"
      ],
      "failure_caught": "gross reconstruction error",
      "cannot_prove": "perturbation identity, heterogeneity or biological function"
    },
    {
      "level_id": "EVAL-02",
      "title": "Perturbation-specific signal",
      "question": "Did the model recover the change caused by this perturbation rather than systematic variation?",
      "measures": [
        "delta correlation/cosine with amplitude checks",
        "signed DE recovery",
        "precision/recall of responsive genes",
        "rank recovery"
      ],
      "required_baselines": [
        "matching mean",
        "perturbed mean",
        "additive effect baseline"
      ],
      "failure_caught": "mean predictors that ignore perturbation identity",
      "cannot_prove": "cell-population fidelity or function"
    },
    {
      "level_id": "EVAL-03",
      "title": "Population distribution",
      "question": "Do predicted cells occupy the held-out treated distribution?",
      "measures": [
        "MMD",
        "energy distance",
        "Wasserstein",
        "classifier two-sample test"
      ],
      "required_baselines": [
        "matching population",
        "identity transport",
        "stratified mean"
      ],
      "failure_caught": "correct mean with wrong spread or geometry",
      "cannot_prove": "correct cell-state composition or mechanism"
    },
    {
      "level_id": "EVAL-04",
      "title": "State composition & heterogeneity",
      "question": "Are rare states, proportions and response modes preserved?",
      "measures": [
        "cell-state proportion error",
        "rare-state recall",
        "mode coverage",
        "stratified distribution metrics"
      ],
      "required_baselines": [
        "observed control composition",
        "matched-context composition"
      ],
      "failure_caught": "mode collapse and composition confounding",
      "cannot_prove": "uncertainty reliability or disease relevance"
    },
    {
      "level_id": "EVAL-05",
      "title": "Calibration, OOD & abstention",
      "question": "Does uncertainty increase where the task leaves the training support?",
      "measures": [
        "interval coverage",
        "calibration error",
        "selective risk",
        "OOD-stratified performance",
        "seed stability"
      ],
      "required_baselines": [
        "empirical residual interval",
        "no-model abstention rule"
      ],
      "failure_caught": "confident extrapolation and unstable wins",
      "cannot_prove": "therapeutic efficacy or clinical utility"
    },
    {
      "level_id": "EVAL-06",
      "title": "Biological & prospective validation",
      "question": "Does molecular fidelity translate into a reproducible, disease-relevant functional result?",
      "measures": [
        "independent donor replication",
        "prespecified functional endpoint",
        "safety/toxicity",
        "prospective outcome return"
      ],
      "required_baselines": [
        "negative and positive experimental controls",
        "prespecified null decision"
      ],
      "failure_caught": "molecular proxies that do not alter function",
      "cannot_prove": "clinical benefit without a separate clinical design"
    }
  ],
  "knowledge_tracks": [
    {
      "track_id": "KNOW-01",
      "title": "Data truth",
      "outcome": "Read a matrix as a biological measurement contract, not an anonymous tensor.",
      "lessons": [
        {
          "title": "What is the inferential unit?",
          "mental_model": "cells are observations nested in donors or cultures",
          "failure_mode": "pseudo-replication",
          "route": "/resource/datasets/"
        },
        {
          "title": "What does each AnnData slot mean?",
          "mental_model": "X + obs + var + layers + uns form one typed object",
          "failure_mode": "opaque transformed inputs",
          "route": "/resource/data-universe/"
        },
        {
          "title": "Which context is missing?",
          "mental_model": "storage presence is not task qualification",
          "failure_mode": "using DMD context as DMD perturbation outcome",
          "route": "/resource/prediction_readiness"
        }
      ]
    },
    {
      "track_id": "KNOW-02",
      "title": "Model mechanisms",
      "outcome": "Choose an architecture from its assumptions, input and output—not from its reputation.",
      "lessons": [
        {
          "title": "Mean vector or cell population?",
          "mental_model": "the output object determines the model family",
          "failure_mode": "calling an aggregate vector a virtual-cell population",
          "route": "/resource/models/"
        },
        {
          "title": "Where does context enter?",
          "mental_model": "covariate, graph, prompt and transport encode different assumptions",
          "failure_mode": "architecture-name inference",
          "route": "/resource/technology-methods/#model-families"
        },
        {
          "title": "What was actually executed?",
          "mental_model": "paper capability and local ModelRun are separate ledgers",
          "failure_mode": "inheriting external performance",
          "route": "/resource/model-run/mrun-ridge-safe-2-3-g0-repeated-fold/"
        }
      ]
    },
    {
      "track_id": "KNOW-03",
      "title": "Evaluation without shortcuts",
      "outcome": "Detect trivial mean predictors, leakage, mode collapse and overconfident extrapolation.",
      "lessons": [
        {
          "title": "Why simple baselines are permanent",
          "mental_model": "systematic variation can make trivial predictors look strong",
          "failure_mode": "complexity bias",
          "route": "/resource/benchmarks/"
        },
        {
          "title": "Why one metric is insufficient",
          "mental_model": "mean, delta, distribution and function answer different questions",
          "failure_mode": "metric substitution",
          "route": "/resource/no-wet-lab-evaluation/"
        },
        {
          "title": "How OOD axes change the claim",
          "mental_model": "unseen perturbation, donor and disease are different tasks",
          "failure_mode": "generalization collapse",
          "route": "/resource/benchmarks/generalization/"
        }
      ]
    },
    {
      "track_id": "KNOW-04",
      "title": "From prediction to experiment",
      "outcome": "Convert uncertainty or abstention into a study whose outcome can update the evidence graph.",
      "lessons": [
        {
          "title": "Freeze the estimand",
          "mental_model": "context × perturbation × time × endpoint is the scientific unit",
          "failure_mode": "post-hoc endpoint switching",
          "route": "/resource/planner"
        },
        {
          "title": "Return every outcome",
          "mental_model": "positive, null, toxic and failed results all reduce uncertainty",
          "failure_mode": "success-only evidence",
          "route": "/resource/registry"
        },
        {
          "title": "Know the final claim ceiling",
          "mental_model": "functional validation is not clinical validation",
          "failure_mode": "therapeutic overclaim",
          "route": "/resource/claim_boundary"
        }
      ]
    }
  ],
  "source_matrix": [
    {
      "source_id": "SRC-SYSTEMA-2025",
      "title": "Systematic evaluation of perturbation-response predictors and simple matching baselines",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2025,
      "url": "https://www.nature.com/articles/s41587-025-02777-8",
      "supports": [
        "mandatory perturbed/matching mean baselines",
        "perturbation-specific evaluation",
        "warning that common metrics reward systematic variation"
      ],
      "does_not_support": [
        "a universal winning architecture",
        "local NMD-VCell performance"
      ],
      "local_execution_state": "METHOD_RULE_ABSORBED"
    },
    {
      "source_id": "SRC-NM-BENCHMARK-2025",
      "title": "Benchmarking 27 perturbation-response methods across 29 datasets",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2025,
      "url": "https://www.nature.com/articles/s41592-025-02980-0",
      "supports": [
        "task- and context-dependent evaluation",
        "multiple datasets and metrics",
        "importance of cellular context"
      ],
      "does_not_support": [
        "one method as best for every generalization axis"
      ],
      "local_execution_state": "METHOD_RULE_ABSORBED"
    },
    {
      "source_id": "SRC-SIMPLE-BASELINES-2025",
      "title": "Deep learning perturbation models do not consistently beat deliberate simple baselines",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2025,
      "url": "https://www.nature.com/articles/s41592-025-02772-6",
      "supports": [
        "permanent simple baselines",
        "architecture-neutral benchmarking"
      ],
      "does_not_support": [
        "that deep learning can never be useful"
      ],
      "local_execution_state": "METHOD_RULE_ABSORBED"
    },
    {
      "source_id": "SRC-CZI-BENCHMARKS",
      "title": "CZI Virtual Cell Models benchmark ecosystem",
      "source_type": "OFFICIAL_DOC",
      "evidence_grade": "B",
      "publication_year": 2026,
      "url": "https://virtualcellmodels.cziscience.com/benchmarks",
      "supports": [
        "standardized task definitions",
        "shared metrics",
        "package, CLI and no-code entry points"
      ],
      "does_not_support": [
        "NMD-VCell task compatibility or performance"
      ],
      "local_execution_state": "PRODUCT_PATTERN_ABSORBED"
    },
    {
      "source_id": "SRC-ARC-STATE",
      "title": "Arc State virtual-cell architecture",
      "source_type": "OFFICIAL_PRODUCT_PREPRINT",
      "evidence_grade": "B",
      "publication_year": 2025,
      "url": "https://arcinstitute.org/news/virtual-cell-model-state",
      "supports": [
        "set-of-cells representation",
        "separate state embedding and transition tasks",
        "evaluation beyond mean expression"
      ],
      "does_not_support": [
        "advancement beyond permanent baselines",
        "validated DMD prediction"
      ],
      "local_execution_state": "HISTORICAL_RECEIPTS_MIGRATED"
    },
    {
      "source_id": "SRC-ARC-STACK",
      "title": "Arc foundation model stack and in-context learning",
      "source_type": "OFFICIAL_PRODUCT_PREPRINT",
      "evidence_grade": "B",
      "publication_year": 2026,
      "url": "https://arcinstitute.org/news/foundation-model-stack",
      "supports": [
        "cell-set prompting as a model pattern",
        "source-reported large-scale pretraining"
      ],
      "does_not_support": [
        "checkpoint benchmark after runtime timeout",
        "NMD-VCell performance inheritance"
      ],
      "local_execution_state": "LOCAL_NVME_CORE_BASE_FORWARD_PASS_NO_CHECKPOINT"
    },
    {
      "source_id": "SRC-PERTPY-2025",
      "title": "Pertpy perturbation-analysis framework",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2025,
      "url": "https://www.nature.com/articles/s41592-025-02909-7",
      "supports": [
        "end-to-end perturbation analysis",
        "MMD, energy and Wasserstein distances",
        "typed analysis modules"
      ],
      "does_not_support": [
        "a disease-response prediction result"
      ],
      "local_execution_state": "METHOD_REFERENCE"
    },
    {
      "source_id": "SRC-ANNDATA",
      "title": "AnnData annotated matrix and on-disk specification",
      "source_type": "OFFICIAL_DOC",
      "evidence_grade": "A",
      "publication_year": 2026,
      "url": "https://anndata.readthedocs.io/en/stable/generated/anndata.AnnData.html",
      "supports": [
        "X/obs/var/layers/obsm/uns data contract",
        "typed annotated matrices"
      ],
      "does_not_support": [
        "biological correctness of any uploaded object"
      ],
      "local_execution_state": "DATA_CONTRACT_ABSORBED"
    },
    {
      "source_id": "SRC-CELLXGENE-SCHEMA",
      "title": "CELLxGENE schema 5.2.0",
      "source_type": "OFFICIAL_DOC",
      "evidence_grade": "A",
      "publication_year": 2026,
      "url": "https://github.com/chanzuckerberg/single-cell-curation/blob/main/schema/5.2.0/schema.md",
      "supports": [
        "ontology-backed biological and technical metadata",
        "schema as a search and integration contract"
      ],
      "does_not_support": [
        "automatic suitability for a perturbation task"
      ],
      "local_execution_state": "ONTOLOGY_PATTERN_ABSORBED"
    },
    {
      "source_id": "SRC-GEARS-2023",
      "title": "GEARS graph neural network for perturbation prediction",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2023,
      "url": "https://www.nature.com/articles/s41587-023-01905-6",
      "supports": [
        "graph-informed gene and perturbation embeddings",
        "structured combination prediction task"
      ],
      "does_not_support": [
        "success on the local frozen task",
        "reliable combinations from single perturbations alone"
      ],
      "local_execution_state": "LOCALLY_EXECUTED_FAILED_FIVE_SPLITS"
    },
    {
      "source_id": "SRC-CELLOT-2023",
      "title": "CellOT neural optimal transport",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2023,
      "url": "https://www.nature.com/articles/s41592-023-01969-x",
      "supports": [
        "unpaired control-to-treated population mapping",
        "distributional prediction"
      ],
      "does_not_support": [
        "stable inference in sparse cell types",
        "local DMD validation"
      ],
      "local_execution_state": "SOURCE_VERIFIED_NOT_RUN"
    },
    {
      "source_id": "SRC-CPA-2023",
      "title": "Compositional perturbation autoencoder",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2023,
      "url": "https://doi.org/10.15252/msb.202211517",
      "supports": [
        "factorized perturbation and covariate representations",
        "dose/time/context composition"
      ],
      "does_not_support": [
        "constant performance as unseen covariates accumulate",
        "local NMD-VCell calibration"
      ],
      "local_execution_state": "SOURCE_VERIFIED_NOT_RUN"
    },
    {
      "source_id": "SRC-GPERTURB-2025",
      "title": "GPerturb probabilistic perturbation-effect model",
      "source_type": "PEER_REVIEWED_PRIMARY",
      "evidence_grade": "A",
      "publication_year": 2025,
      "url": "https://www.nature.com/articles/s41467-025-61165-7",
      "supports": [
        "sparse interpretable effects",
        "uncertainty estimates"
      ],
      "does_not_support": [
        "treating cells as independent biological replicates",
        "clinical prediction"
      ],
      "local_execution_state": "SOURCE_VERIFIED_NOT_RUN"
    },
    {
      "source_id": "SRC-OPENPROBLEMS-PERTURBATION",
      "title": "Open Problems perturbation prediction benchmark",
      "source_type": "OFFICIAL_DOC",
      "evidence_grade": "B",
      "publication_year": 2024,
      "url": "https://openproblems.bio/benchmarks/perturbation_prediction/?version=v1.0.0",
      "supports": [
        "versioned task and metric metadata",
        "automated score checking"
      ],
      "does_not_support": [
        "generalization outside the declared competition task"
      ],
      "local_execution_state": "BENCHMARK_PATTERN_ABSORBED"
    }
  ],
  "canonical_model_status_registry": "/resource/api/v1.1/model_execution_status_registry.json",
  "design_rules": [
    "Freeze task, biological unit, output object and generalization axis before selecting a model.",
    "Separate source-reported capability, local execution and disease validation in every registry.",
    "Use donor, culture or independently randomized sample as the inferential unit; cells are not independent biological replicates.",
    "Do not equate embedding quality with perturbation prediction.",
    "Do not let mean-profile accuracy substitute for perturbation-specific or population-level fidelity.",
    "Publish failed, null, stopped and abstained states with the same object identity as successful runs."
  ],
  "current_local_decision": "Keep ridge as a permanent same-assay baseline. TxPert: STOP_UNTIL_NEW_PREREGISTRATION_OR_UNTOUCHED_TRUTH. STATE: NO_ADVANCEMENT. Stack: NO_NMD_B1_BENCHMARK_NO_COMPATIBLE_PRETRAINED_GENETIC_CHECKPOINT. Tahoe-x1: DO_NOT_RUN_ON_LOG_NORMALIZED_INPUT; ACQUIRE_RAW_COUNTS_FIRST. SLIM: NOT_ELIGIBLE_FOR_EXECUTION. None is a locally validated NMD model.",
  "claim_boundary": "This registry is a technical decision aid. It does not claim that every model family was executed, that source-reported performance transfers to NMD-VCell, or that DMD candidate responses are calibrated."
}
