{
  "openapi": "3.0.3",
  "info": {
    "title": "NMD-VCell Research Workbench canonical static API",
    "version": "1.1",
    "description": "Typed schema 1.1; evidence release v1.0.0-database-resource; frozen 2026-07-25. Static endpoints do not rank genes or run inference.",
    "x-version-axes": {
      "resource_release": "v1.0.0-database-resource",
      "evidence_freeze": "2026-07-25",
      "schema_version": "1.1",
      "model_release": "ridge-safe-v2.3",
      "benchmark_release": "repeated-fold-v2.2",
      "interface_label": "Research Workbench beta 3.5",
      "interface_build": "EA-20260729-15",
      "formal_v1_candidate_label": "v1.0.0-database-resource",
      "canonical_bundle_identity_digest_sha256": "b435f2100badd88e81dae1afa47bff278ba97d56d84df6d5d4dd6c3d4096b256"
    },
    "x-missing-value-semantics": "null means unavailable, not applicable or not assessed as specified by the adjacent assessment_status; false means assessed and false."
  },
  "paths": {
    "/api/v1.1/genes/{gene}.json": {
      "get": {
        "summary": "Canonical typed gene record for genes listed in individual_gene_manifest.json",
        "description": "Individual static files are published for governed and rendered gene pages only. Use gene buckets for complete 17,921-record coverage.",
        "parameters": [
          {
            "name": "gene",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Z0-9-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Typed gene evidence record",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeneRecord"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/gene_buckets/{prefix}.json": {
      "get": {
        "summary": "Typed records keyed by official gene symbol",
        "responses": {
          "200": {
            "description": "Gene bucket",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "$ref": "#/components/schemas/GeneRecord"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/gene_bucket_manifest.json": {
      "get": {
        "summary": "Bucket paths and record counts for all 17,921 typed records",
        "responses": {
          "200": {
            "description": "Gene bucket manifest",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/individual_gene_manifest.json": {
      "get": {
        "summary": "Genes with individual static JSON objects",
        "responses": {
          "200": {
            "description": "Individual endpoint manifest",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/identifier_mapping.json": {
      "get": {
        "summary": "Frozen HGNC alias and external-ID mapping with ambiguity preserved",
        "responses": {
          "200": {
            "description": "HGNC identifier mapping",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/study_card_manifest.json": {
      "get": {
        "summary": "Stable governed Study Card routes and exports",
        "responses": {
          "200": {
            "description": "Study Card manifest",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/study-cards/{gene}.json": {
      "get": {
        "summary": "Versioned action-specific Study Card for a governed hypothesis",
        "responses": {
          "200": {
            "description": "Static Study Card object",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StudyCard"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/scientific_program.json": {
      "get": {
        "summary": "Dual-track state-transition scientific program",
        "responses": {
          "200": {
            "description": "Scientific program contract",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/dmd_minimum_perturbome.json": {
      "get": {
        "summary": "Draft 24-slot DMD Minimum Perturbome protocol",
        "responses": {
          "200": {
            "description": "Minimum Perturbome protocol",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/generalization_ladder.json": {
      "get": {
        "summary": "G0–G7 generalization and leaderboard contract",
        "responses": {
          "200": {
            "description": "Generalization ladder",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/registered_studies.json": {
      "get": {
        "summary": "Immutable prospective Registered Study registry",
        "responses": {
          "200": {
            "description": "Registered Study registry",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/experimental_outcomes.json": {
      "get": {
        "summary": "Prospective experimental outcome registry",
        "responses": {
          "200": {
            "description": "Experimental outcome registry",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/release_manifest.json": {
      "get": {
        "summary": "Single authoritative release identity",
        "responses": {
          "200": {
            "description": "Release manifest",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReleaseManifest"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/release_file_registry.json": {
      "get": {
        "summary": "Current object IDs, filenames, sizes and SHA-256 values",
        "responses": {
          "200": {
            "description": "Release file registry",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileRegistry"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/benchmark_summary.json": {
      "get": {
        "summary": "Typed authoritative repeated-fold benchmark summary",
        "responses": {
          "200": {
            "description": "Benchmark summary",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BenchmarkSummary"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/vcc_readiness.json": {
      "get": {
        "summary": "Machine-readable VCC 2026 preparation and benchmark-gap matrix",
        "responses": {
          "200": {
            "description": "VCC benchmark-readiness matrix",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/vcc_evaluation_contract.json": {
      "get": {
        "summary": "Preregistered VCC evaluation template with baselines, disjoint splits, metrics and activation gates",
        "responses": {
          "200": {
            "description": "VCC evaluation contract",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/vcc_metric_diagnostic.json": {
      "get": {
        "summary": "Executed formula-aligned aggregate-delta metric diagnostic on 55 external perturbation targets",
        "responses": {
          "200": {
            "description": "VCC-style aggregate-delta metric diagnostic",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/strict_outcomes.json": {
      "get": {
        "summary": "Sixteen typed strict-outcome records",
        "responses": {
          "200": {
            "description": "Strict outcome collection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutcomeCollection"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/dmd_coverage_reconciliation.json": {
      "get": {
        "summary": "Reconciliation of the 17,921 Atlas genes and 17,919 usable DMD-context rows",
        "responses": {
          "200": {
            "description": "DMD coverage reconciliation",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DmdCoverageReconciliation"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/prior_robustness_registry.json": {
      "get": {
        "summary": "Registered five-rule DMD-prior robustness analysis; no gene grades assigned yet",
        "responses": {
          "200": {
            "description": "Prior robustness registry",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriorRobustnessRegistry"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/prediction_readiness.json": {
      "get": {
        "summary": "Machine-readable P0/P1/P2 disease-prediction claim gate",
        "responses": {
          "200": {
            "description": "Prediction-readiness gate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PredictionReadiness"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/v1_release_gate.json": {
      "get": {
        "summary": "Machine-readable formal v1.0 database-resource freeze gate",
        "responses": {
          "200": {
            "description": "v1 release freeze gate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1ReleaseGate"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/v1_external_authorization_dossier.json": {
      "get": {
        "summary": "Machine-readable DOI, licence and maintainer authorization dossier",
        "responses": {
          "200": {
            "description": "v1 external authorization dossier",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExternalAuthorizationDossier"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/prediction_registry.json": {
      "get": {
        "summary": "Empty prospective prediction registry and unlock boundary",
        "responses": {
          "200": {
            "description": "Prediction registry",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PredictionRegistry"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/prospective_predictions.json": {
      "get": {
        "summary": "Prospectively registered prediction cards",
        "responses": {
          "200": {
            "description": "Registry; empty in this release",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProspectivePredictionRegistry"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/prospective_validation_board.json": {
      "get": {
        "summary": "Append-only prospective outcome board",
        "responses": {
          "200": {
            "description": "Board; empty in this release",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProspectiveOutcomeBoard"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/api/v1.1/error_catalog.json": {
      "get": {
        "summary": "Static API error codes and host-response boundary",
        "responses": {
          "200": {
            "description": "Error catalogue",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    },
    "/comparison/{comparison_id}/json": {
      "get": {
        "summary": "Checksum-addressed, server-rendered comparison object",
        "parameters": [
          {
            "name": "comparison_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^CMP-20260726-[A-F0-9]{12}$"
            }
          },
          {
            "name": "payload",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Deflate/base64url self-contained payload whose SHA-256 prefix must match comparison_id."
          }
        ],
        "responses": {
          "200": {
            "description": "Stable comparison object",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ComparisonObject"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "410": {
            "$ref": "#/components/responses/Deprecated"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  },
  "components": {
    "responses": {
      "BadRequest": {
        "description": "Malformed identifier or request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "NotFound": {
        "description": "Record not found; a static host may return no JSON body",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "Deprecated": {
        "description": "Object removed from the current schema with a versioned successor",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "InternalError": {
        "description": "Unexpected serving error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      }
    },
    "schemas": {
      "Error": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "error_code",
          "message",
          "release"
        ],
        "properties": {
          "error_code": {
            "type": "string",
            "enum": [
              "INVALID_IDENTIFIER",
              "GENE_NOT_FOUND",
              "OBJECT_DEPRECATED",
              "INTERNAL_ERROR"
            ]
          },
          "message": {
            "type": "string"
          },
          "release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          }
        }
      },
      "EvidenceLayer": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "assessment_status"
        ],
        "properties": {
          "assessment_status": {
            "type": "string",
            "enum": [
              "assessed",
              "not_assessed"
            ]
          },
          "support_status": {
            "type": "string",
            "nullable": true,
            "enum": [
              "supported",
              "supported_with_limits",
              "context_evidence_present"
            ]
          },
          "evidence_level": {
            "type": "string",
            "nullable": true
          },
          "observed_cells": {
            "type": "integer",
            "nullable": true
          },
          "hit": {
            "type": "boolean",
            "nullable": true
          },
          "effect_size": {
            "type": "number",
            "nullable": true
          },
          "fdr": {
            "type": "number",
            "nullable": true
          },
          "context": {
            "type": "string",
            "nullable": true
          },
          "interpretation": {
            "type": "string",
            "nullable": true
          },
          "target_specific_predictive_support": {
            "type": "string",
            "nullable": true,
            "enum": [
              "supported",
              "not_supported"
            ]
          },
          "ood_status": {
            "type": "string",
            "nullable": true,
            "enum": [
              "in_domain",
              "out_of_domain",
              "not_assessed",
              "not_applicable"
            ]
          }
        }
      },
      "IdentifierRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "approved_symbol",
          "symbol_status",
          "aliases",
          "previous_symbols",
          "species"
        ],
        "properties": {
          "approved_symbol": {
            "type": "string"
          },
          "symbol_status": {
            "type": "string",
            "enum": [
              "approved",
              "not_matched_to_frozen_hgnc_subset"
            ]
          },
          "hgnc_id": {
            "type": "string",
            "nullable": true
          },
          "aliases": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "previous_symbols": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ensembl_gene_id": {
            "type": "string",
            "nullable": true
          },
          "ncbi_gene_id": {
            "type": "integer",
            "nullable": true
          },
          "species": {
            "type": "string",
            "enum": [
              "Homo sapiens"
            ]
          }
        }
      },
      "SourceDirectionAgreement": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "agreeing_sources",
          "assessed_sources",
          "directional_sources",
          "proportion"
        ],
        "properties": {
          "agreeing_sources": {
            "type": "integer",
            "nullable": true
          },
          "assessed_sources": {
            "type": "integer",
            "nullable": true
          },
          "directional_sources": {
            "type": "integer",
            "nullable": true
          },
          "proportion": {
            "type": "number",
            "nullable": true
          }
        }
      },
      "GapProfile": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "decision_blocking_gap",
          "highest_missing_evidence_layer",
          "secondary_gaps"
        ],
        "properties": {
          "decision_blocking_gap": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "label"
            ],
            "properties": {
              "code": {
                "type": "string",
                "pattern": "^GAP-[0-9]{2}$"
              },
              "label": {
                "type": "string"
              }
            }
          },
          "highest_missing_evidence_layer": {
            "type": "string"
          },
          "secondary_gaps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "BenchmarkMetric": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "estimator",
          "mean",
          "ci95",
          "n_realizations",
          "targets_per_realization",
          "bootstrap_replicates",
          "bootstrap_seed",
          "source_object",
          "source_table"
        ],
        "properties": {
          "estimator": {
            "type": "string"
          },
          "mean": {
            "type": "number"
          },
          "ci95": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "number"
            }
          },
          "n_realizations": {
            "type": "integer"
          },
          "targets_per_realization": {
            "type": "integer"
          },
          "bootstrap_replicates": {
            "type": "integer"
          },
          "bootstrap_seed": {
            "type": "integer"
          },
          "source_object": {
            "type": "string"
          },
          "source_table": {
            "type": "string"
          }
        }
      },
      "BenchmarkSummary": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schema_version",
          "benchmark_release",
          "estimator_scope",
          "metrics",
          "absolute_and_relative_audit"
        ],
        "properties": {
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "benchmark_release": {
            "type": "string",
            "enum": [
              "repeated-fold-v2.2"
            ]
          },
          "estimator_scope": {
            "type": "string",
            "enum": [
              "same_processed_hepg2_dataset"
            ]
          },
          "metrics": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "rmse_difference_vs_zero",
              "rmse_difference_vs_train_mean",
              "raw_cosine_difference_vs_train_mean",
              "perturbation_specific_residual_cosine"
            ],
            "properties": {
              "rmse_difference_vs_zero": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "rmse_difference_vs_train_mean": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "raw_cosine_difference_vs_train_mean": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "perturbation_specific_residual_cosine": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              }
            }
          },
          "absolute_and_relative_audit": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "model_mean_rmse",
              "train_mean_rmse",
              "zero_rmse",
              "relative_improvement_vs_train_mean",
              "relative_improvement_vs_zero",
              "target_distribution"
            ],
            "properties": {
              "model_mean_rmse": {
                "type": "number"
              },
              "train_mean_rmse": {
                "type": "number"
              },
              "zero_rmse": {
                "type": "number"
              },
              "relative_improvement_vs_train_mean": {
                "type": "number"
              },
              "relative_improvement_vs_zero": {
                "type": "number"
              },
              "target_distribution": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "target_count",
                  "improved_vs_train_mean",
                  "worsened_vs_train_mean",
                  "exactly_unchanged_vs_train_mean"
                ],
                "properties": {
                  "target_count": {
                    "type": "integer"
                  },
                  "improved_vs_train_mean": {
                    "type": "integer"
                  },
                  "worsened_vs_train_mean": {
                    "type": "integer"
                  },
                  "exactly_unchanged_vs_train_mean": {
                    "type": "integer"
                  }
                }
              }
            }
          }
        }
      },
      "OutcomeRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "outcome_id",
          "model",
          "split",
          "endpoint",
          "comparator",
          "n_genes",
          "model_mean_rmse",
          "baseline_mean_rmse",
          "favorable_difference",
          "ci95",
          "multiplicity_adjusted_p",
          "paired_rmse_support",
          "raw_direction_support",
          "strict_gate",
          "legacy_rmse_only_gate"
        ],
        "properties": {
          "outcome_id": {
            "type": "string",
            "pattern": "^STRICT-[0-9]{2}$"
          },
          "model": {
            "type": "string"
          },
          "split": {
            "type": "string"
          },
          "endpoint": {
            "type": "string",
            "enum": [
              "rmse_gain_vs_zero",
              "rmse_gain_vs_train_mean"
            ]
          },
          "comparator": {
            "type": "string"
          },
          "n_genes": {
            "type": "integer"
          },
          "model_mean_rmse": {
            "type": "number"
          },
          "baseline_mean_rmse": {
            "type": "number"
          },
          "favorable_difference": {
            "type": "number"
          },
          "ci95": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "number"
            }
          },
          "multiplicity_adjusted_p": {
            "type": "number",
            "nullable": true
          },
          "paired_rmse_support": {
            "type": "string",
            "enum": [
              "supported",
              "not_supported"
            ]
          },
          "raw_direction_support": {
            "type": "string",
            "enum": [
              "supported",
              "not_supported"
            ]
          },
          "strict_gate": {
            "type": "string",
            "enum": [
              "pass",
              "fail"
            ]
          },
          "legacy_rmse_only_gate": {
            "type": "string",
            "enum": [
              "pass",
              "fail"
            ]
          }
        }
      },
      "OutcomeCollection": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "outcome_schema",
          "schema_version",
          "benchmark_release",
          "record_count",
          "records"
        ],
        "properties": {
          "outcome_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-strict-outcome-collection/1.0"
            ]
          },
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "benchmark_release": {
            "type": "string",
            "enum": [
              "repeated-fold-v2.2"
            ]
          },
          "record_count": {
            "type": "integer",
            "enum": [
              16
            ]
          },
          "records": {
            "type": "array",
            "minItems": 16,
            "maxItems": 16,
            "items": {
              "$ref": "#/components/schemas/OutcomeRecord"
            }
          }
        }
      },
      "PredictionCard": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "prediction_id",
          "registered_at",
          "gene",
          "model_release",
          "training_freeze",
          "biological_context",
          "perturbation",
          "primary_endpoint",
          "predicted_direction",
          "uncertainty_interval",
          "abstention_status",
          "prospective_holdout_id"
        ],
        "properties": {
          "prediction_id": {
            "type": "string"
          },
          "registered_at": {
            "type": "string",
            "format": "date-time"
          },
          "gene": {
            "type": "string"
          },
          "model_release": {
            "type": "string"
          },
          "training_freeze": {
            "type": "string",
            "format": "date"
          },
          "biological_context": {
            "type": "string"
          },
          "perturbation": {
            "type": "string"
          },
          "primary_endpoint": {
            "type": "string"
          },
          "predicted_direction": {
            "type": "string"
          },
          "uncertainty_interval": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "number"
            }
          },
          "abstention_status": {
            "type": "string"
          },
          "prospective_holdout_id": {
            "type": "string"
          }
        }
      },
      "V1PublicationTarget": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "target_schema",
          "target_label",
          "candidate_status",
          "freeze_package_status",
          "formal_v1_release",
          "database_release_claim_boundary",
          "database_paper_ready_when",
          "permitted_v1_claim",
          "not_authorized_claims",
          "paper_package_objects"
        ],
        "properties": {
          "target_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-v1-publication-target/1.0"
            ]
          },
          "target_label": {
            "type": "string"
          },
          "candidate_status": {
            "type": "string"
          },
          "freeze_package_status": {
            "type": "string"
          },
          "formal_v1_release": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "database_release_claim_boundary": {
            "type": "string",
            "enum": [
              "v1.0 is a database and evidence-governance release; it is not a validated disease-prediction or clinical decision-support release."
            ]
          },
          "database_paper_ready_when": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "permitted_v1_claim": {
            "type": "string"
          },
          "not_authorized_claims": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "paper_package_objects": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "V1ReleaseGate": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "gate_schema",
          "resource_release",
          "interface_build",
          "formal_v1_release",
          "freeze_status",
          "database_release_claim_boundary",
          "candidate_status",
          "internal_gate_summary",
          "external_gate_summary",
          "internal_gates",
          "external_gates",
          "publication_package",
          "claim_boundary_enforced_on_pages",
          "prediction_claim_state",
          "unlock_rule"
        ],
        "properties": {
          "gate_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-v1-release-gate/1.0"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "formal_v1_release": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "freeze_status": {
            "type": "string",
            "enum": [
              "v1_final_release_freeze_candidate"
            ]
          },
          "database_release_claim_boundary": {
            "type": "string",
            "enum": [
              "v1.0 is a database and evidence-governance release; it is not a validated disease-prediction or clinical decision-support release."
            ]
          },
          "candidate_status": {
            "type": "string"
          },
          "internal_gate_summary": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "pass",
              "total"
            ],
            "properties": {
              "pass": {
                "type": "integer"
              },
              "total": {
                "type": "integer"
              }
            }
          },
          "external_gate_summary": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "complete",
              "pending",
              "total"
            ],
            "properties": {
              "complete": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "pending": {
                "type": "integer"
              },
              "total": {
                "type": "integer"
              }
            }
          },
          "internal_gates": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "id",
                "status",
                "evidence"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "pass"
                  ]
                },
                "evidence": {
                  "type": "string"
                }
              }
            }
          },
          "external_gates": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "id",
                "status",
                "required_input"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "required_input": {
                  "type": "string"
                }
              }
            }
          },
          "publication_package": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "claim_boundary_enforced_on_pages": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "prediction_claim_state": {
            "type": "string"
          },
          "unlock_rule": {
            "type": "string"
          }
        }
      },
      "ExternalAuthorizationDossier": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "dossier_schema",
          "resource_release",
          "interface_build",
          "formal_v1_release",
          "dossier_status",
          "database_release_claim_boundary",
          "external_gate_summary",
          "required_external_inputs",
          "deposit_manifest",
          "deposit_file_list",
          "authorization_checklist",
          "input_template",
          "metadata_template",
          "validator",
          "handoff",
          "page",
          "privacy_boundary",
          "non_automated_actions",
          "automatic_unlock"
        ],
        "properties": {
          "dossier_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-v1-external-authorization-dossier/1.0"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "formal_v1_release": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "dossier_status": {
            "type": "string",
            "enum": [
              "ready_for_author_institution_input_formal_v1_locked"
            ]
          },
          "database_release_claim_boundary": {
            "type": "string",
            "enum": [
              "v1.0 is a database and evidence-governance release; it is not a validated disease-prediction or clinical decision-support release."
            ]
          },
          "external_gate_summary": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "complete",
              "pending",
              "total"
            ],
            "properties": {
              "complete": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "pending": {
                "type": "integer"
              },
              "total": {
                "type": "integer"
              }
            }
          },
          "required_external_inputs": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "gate_id",
                "status",
                "required_input"
              ],
              "properties": {
                "gate_id": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "required_input": {
                  "type": "string"
                }
              }
            }
          },
          "deposit_manifest": {
            "type": "string"
          },
          "deposit_file_list": {
            "type": "string"
          },
          "authorization_checklist": {
            "type": "string"
          },
          "input_template": {
            "type": "string"
          },
          "metadata_template": {
            "type": "string"
          },
          "validator": {
            "type": "string"
          },
          "handoff": {
            "type": "string"
          },
          "page": {
            "type": "string"
          },
          "privacy_boundary": {
            "type": "string"
          },
          "non_automated_actions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "automatic_unlock": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "release_layers": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      },
      "PredictionReadiness": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "readiness_schema",
          "resource_release",
          "model_release",
          "benchmark_protocol",
          "current_level",
          "recommended_next_level",
          "clinical_level_status",
          "platform_claim_state",
          "allowed_current_claims",
          "locked_claims",
          "levels",
          "gate_summary",
          "p1_required_before_unlock",
          "p2_required_before_unlock",
          "minimum_validation_boundary",
          "reporting_alignment",
          "empty_registry_semantics"
        ],
        "properties": {
          "readiness_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-disease-prediction-readiness/1.0"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "model_release": {
            "type": "string",
            "enum": [
              "ridge-safe-v2.3"
            ]
          },
          "benchmark_protocol": {
            "type": "string",
            "enum": [
              "repeated-fold-v2.2"
            ]
          },
          "current_level": {
            "type": "string",
            "enum": [
              "P0_prediction_infrastructure_only"
            ]
          },
          "recommended_next_level": {
            "type": "string",
            "enum": [
              "P1_research_use_dmd_perturbation_response_prediction"
            ]
          },
          "clinical_level_status": {
            "type": "string",
            "enum": [
              "P2_clinical_prediction_locked"
            ]
          },
          "platform_claim_state": {
            "type": "string"
          },
          "allowed_current_claims": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "locked_claims": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "levels": {
            "type": "array",
            "minItems": 3,
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "level",
                "label",
                "status",
                "claim_allowed"
              ],
              "properties": {
                "level": {
                  "type": "string",
                  "enum": [
                    "P0",
                    "P1",
                    "P2"
                  ]
                },
                "label": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "claim_allowed": {
                  "type": "string"
                }
              }
            }
          },
          "gate_summary": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "governed_hypotheses",
              "observed_hepg2_perturbation",
              "external_myoblast_context_assessed",
              "independent_muscle_or_dmd_perturbation_replication",
              "therapeutic_or_clinical_validation",
              "prediction_registered",
              "outcome_measured"
            ],
            "properties": {
              "governed_hypotheses": {
                "type": "integer"
              },
              "observed_hepg2_perturbation": {
                "type": "integer"
              },
              "external_myoblast_context_assessed": {
                "type": "integer"
              },
              "independent_muscle_or_dmd_perturbation_replication": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "therapeutic_or_clinical_validation": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "prediction_registered": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "outcome_measured": {
                "type": "integer",
                "enum": [
                  0
                ]
              }
            }
          },
          "p1_required_before_unlock": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "p2_required_before_unlock": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "minimum_validation_boundary": {
            "type": "string"
          },
          "reporting_alignment": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "empty_registry_semantics": {
            "type": "string"
          }
        }
      },
      "PredictionRegistry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "registry_schema",
          "resource_release",
          "interface_build",
          "registry_status",
          "claim_state",
          "counts",
          "schemas",
          "records",
          "outcomes",
          "empty_registry_semantics",
          "p1_unlock_requires",
          "p2_unlock_requires",
          "not_authorized_claims"
        ],
        "properties": {
          "registry_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-prediction-registry/1.0"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "registry_status": {
            "type": "string",
            "enum": [
              "empty_scaffold_no_predictions_registered"
            ]
          },
          "claim_state": {
            "type": "string"
          },
          "counts": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "prediction_registered",
              "outcome_measured",
              "abstained_predictions",
              "failed_predictions",
              "passed_predictions"
            ],
            "properties": {
              "prediction_registered": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "outcome_measured": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "abstained_predictions": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "failed_predictions": {
                "type": "integer",
                "enum": [
                  0
                ]
              },
              "passed_predictions": {
                "type": "integer",
                "enum": [
                  0
                ]
              }
            }
          },
          "schemas": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "prediction_card",
              "outcome_board",
              "external_validation_import_template"
            ],
            "properties": {
              "prediction_card": {
                "type": "string"
              },
              "outcome_board": {
                "type": "string"
              },
              "external_validation_import_template": {
                "type": "string"
              }
            }
          },
          "records": {
            "type": "array",
            "maxItems": 0,
            "items": {
              "$ref": "#/components/schemas/PredictionCard"
            }
          },
          "outcomes": {
            "type": "array",
            "maxItems": 0,
            "items": {
              "$ref": "#/components/schemas/ProspectiveOutcomeRecord"
            }
          },
          "empty_registry_semantics": {
            "type": "string"
          },
          "p1_unlock_requires": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "p2_unlock_requires": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "not_authorized_claims": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "ProspectivePredictionRegistry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schema_version",
          "registry_status",
          "records",
          "note"
        ],
        "properties": {
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "registry_status": {
            "type": "string",
            "enum": [
              "open_for_future_registration_no_predictions_registered"
            ]
          },
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PredictionCard"
            }
          },
          "note": {
            "type": "string"
          }
        }
      },
      "ProspectiveOutcomeRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "prediction_id",
          "outcome_locked_at",
          "observed_effect",
          "observed_interval",
          "primary_endpoint_met"
        ],
        "properties": {
          "prediction_id": {
            "type": "string"
          },
          "outcome_locked_at": {
            "type": "string",
            "format": "date-time"
          },
          "observed_effect": {
            "type": "number"
          },
          "observed_interval": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "number"
            }
          },
          "primary_endpoint_met": {
            "type": "boolean"
          }
        }
      },
      "ProspectiveOutcomeBoard": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schema_version",
          "board_status",
          "records",
          "claim_boundary"
        ],
        "properties": {
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "board_status": {
            "type": "string",
            "enum": [
              "scaffold_only_no_prospective_outcomes"
            ]
          },
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProspectiveOutcomeRecord"
            }
          },
          "claim_boundary": {
            "type": "string",
            "enum": [
              "v1.0 is a database and evidence-governance release; it is not a validated disease-prediction or clinical decision-support release."
            ]
          }
        }
      },
      "StudyCard": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "object_id",
          "card_schema",
          "card_version",
          "resource_release",
          "evidence_freeze",
          "interface_build",
          "gene",
          "card_type",
          "current_action_code",
          "current_action",
          "lifecycle",
          "decision_blocking_gap",
          "highest_missing_evidence_layer",
          "secondary_gaps",
          "frozen_evidence_snapshot",
          "unresolved_question",
          "biological_context",
          "perturbation_modality",
          "comparator_and_controls",
          "primary_endpoint",
          "secondary_endpoints",
          "primary_estimand",
          "state_transition_design",
          "perturbation_direction_rationale",
          "minimally_important_effect",
          "negligible_effect_margin",
          "suggested_sample_size_range",
          "randomisation_unit",
          "blocking_factors",
          "statistical_model",
          "multiple_testing_family",
          "missing_data_rule",
          "assay_qc_thresholds",
          "guide_concordance_rule",
          "donor_replication_rule",
          "estimated_time_band",
          "estimated_cost_band",
          "preregistration_status",
          "inferential_unit",
          "evidence_import_requirements",
          "planning_fields_not_applicable",
          "stop_rules",
          "escalation_rule",
          "evidence_transition",
          "data_release_plan",
          "boundary",
          "stable_url",
          "exports"
        ],
        "properties": {
          "object_id": {
            "type": "string",
            "pattern": "^SC:"
          },
          "card_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-study-card/1.5"
            ]
          },
          "card_version": {
            "type": "string",
            "enum": [
              "1.5"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "evidence_freeze": {
            "type": "string",
            "format": "date"
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "gene": {
            "type": "string"
          },
          "card_type": {
            "type": "string",
            "enum": [
              "expression_verification",
              "muscle_perturbation",
              "risk_context_review",
              "computational_replication",
              "evidence_import_audit"
            ]
          },
          "current_action_code": {
            "type": "string",
            "nullable": true
          },
          "current_action": {
            "type": "string"
          },
          "lifecycle": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "state",
              "revision",
              "immutable",
              "registered_at",
              "supersedes",
              "immutable_after_registration"
            ],
            "properties": {
              "state": {
                "type": "string",
                "enum": [
                  "DRAFT"
                ]
              },
              "revision": {
                "type": "integer",
                "minimum": 1
              },
              "immutable": {
                "type": "boolean",
                "enum": [
                  false
                ]
              },
              "registered_at": {
                "type": "string",
                "nullable": true
              },
              "supersedes": {
                "type": "string",
                "nullable": true
              },
              "immutable_after_registration": {
                "type": "boolean",
                "enum": [
                  true
                ]
              }
            }
          },
          "decision_blocking_gap": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "label"
            ],
            "properties": {
              "code": {
                "type": "string"
              },
              "label": {
                "type": "string"
              }
            }
          },
          "highest_missing_evidence_layer": {
            "type": "string"
          },
          "secondary_gaps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "frozen_evidence_snapshot": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "snapshot_schema",
              "source_record",
              "highest_supported_level",
              "highest_assessed_level",
              "observed_hepg2_perturbation",
              "external_context_screen",
              "dmd_prior",
              "context_metrics",
              "visual_boundary"
            ],
            "properties": {
              "snapshot_schema": {
                "type": "string",
                "enum": [
                  "nmd-vcell-study-card-frozen-evidence-snapshot/1.0"
                ]
              },
              "source_record": {
                "type": "string"
              },
              "highest_supported_level": {
                "type": "string"
              },
              "highest_assessed_level": {
                "type": "string"
              },
              "observed_hepg2_perturbation": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "assessment_status",
                  "support_status",
                  "observed_cells"
                ],
                "properties": {
                  "assessment_status": {
                    "type": "string"
                  },
                  "support_status": {
                    "type": "string",
                    "nullable": true
                  },
                  "observed_cells": {
                    "type": "number",
                    "nullable": true
                  }
                }
              },
              "external_context_screen": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "assessment_status",
                  "support_status",
                  "hit",
                  "effect_size",
                  "fdr",
                  "interpretation"
                ],
                "properties": {
                  "assessment_status": {
                    "type": "string"
                  },
                  "support_status": {
                    "type": "string",
                    "nullable": true
                  },
                  "hit": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "effect_size": {
                    "type": "number",
                    "nullable": true
                  },
                  "fdr": {
                    "type": "number",
                    "nullable": true
                  },
                  "interpretation": {
                    "type": "string",
                    "nullable": true
                  }
                }
              },
              "dmd_prior": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "integrated_prior_direction",
                  "source_direction_state",
                  "source_agreement_proportion",
                  "agreeing_sources",
                  "assessed_sources",
                  "coverage_state",
                  "uncertainty_state"
                ],
                "properties": {
                  "integrated_prior_direction": {
                    "type": "string",
                    "nullable": true
                  },
                  "source_direction_state": {
                    "type": "string",
                    "nullable": true
                  },
                  "source_agreement_proportion": {
                    "type": "number",
                    "nullable": true
                  },
                  "agreeing_sources": {
                    "type": "integer",
                    "nullable": true
                  },
                  "assessed_sources": {
                    "type": "integer",
                    "nullable": true
                  },
                  "coverage_state": {
                    "type": "string",
                    "nullable": true
                  },
                  "uncertainty_state": {
                    "type": "string",
                    "nullable": true
                  }
                }
              },
              "context_metrics": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "skeletal_muscle_median_tpm",
                  "depmap_median_gene_effect",
                  "moderate_dependency_flag"
                ],
                "properties": {
                  "skeletal_muscle_median_tpm": {
                    "type": "number",
                    "nullable": true
                  },
                  "depmap_median_gene_effect": {
                    "type": "number",
                    "nullable": true
                  },
                  "moderate_dependency_flag": {
                    "type": "boolean",
                    "nullable": true
                  }
                }
              },
              "visual_boundary": {
                "type": "string"
              }
            }
          },
          "unresolved_question": {
            "type": "string"
          },
          "biological_context": {
            "type": "string"
          },
          "perturbation_modality": {
            "type": "string"
          },
          "comparator_and_controls": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "primary_endpoint": {
            "type": "string"
          },
          "secondary_endpoints": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "primary_estimand": {
            "type": "string"
          },
          "state_transition_design": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "scientific_object",
              "mechanism_hypothesis",
              "cell_context_fields",
              "timepoint_plan",
              "endpoint_domains",
              "cell_cell_consequence",
              "response_archetype"
            ],
            "properties": {
              "scientific_object": {
                "type": "string"
              },
              "mechanism_hypothesis": {
                "type": "string"
              },
              "cell_context_fields": {
                "type": "object"
              },
              "timepoint_plan": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "window",
                    "role",
                    "status"
                  ],
                  "properties": {
                    "window": {
                      "type": "string"
                    },
                    "role": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    }
                  }
                }
              },
              "endpoint_domains": {
                "type": "object"
              },
              "cell_cell_consequence": {
                "type": "object"
              },
              "response_archetype": {
                "type": "object"
              }
            }
          },
          "perturbation_direction_rationale": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected_hypothesis",
              "allowed_hypotheses",
              "required_justification"
            ],
            "properties": {
              "selected_hypothesis": {
                "type": "string"
              },
              "allowed_hypotheses": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "required_justification": {
                "type": "string"
              }
            }
          },
          "minimally_important_effect": {
            "type": "string",
            "nullable": true
          },
          "negligible_effect_margin": {
            "type": "string",
            "nullable": true
          },
          "suggested_sample_size_range": {
            "type": "string",
            "nullable": true
          },
          "randomisation_unit": {
            "type": "string",
            "nullable": true
          },
          "blocking_factors": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "statistical_model": {
            "type": "string"
          },
          "multiple_testing_family": {
            "type": "string"
          },
          "missing_data_rule": {
            "type": "string"
          },
          "assay_qc_thresholds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "guide_concordance_rule": {
            "type": "string"
          },
          "donor_replication_rule": {
            "type": "string"
          },
          "estimated_time_band": {
            "type": "string"
          },
          "estimated_cost_band": {
            "type": "string"
          },
          "preregistration_status": {
            "type": "string"
          },
          "inferential_unit": {
            "type": "string"
          },
          "evidence_import_requirements": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "planning_fields_not_applicable": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "stop_rules": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "escalation_rule": {
            "type": "string"
          },
          "evidence_transition": {
            "type": "string"
          },
          "data_release_plan": {
            "type": "string"
          },
          "boundary": {
            "type": "string"
          },
          "stable_url": {
            "type": "string"
          },
          "exports": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "json",
              "yaml",
              "tsv"
            ],
            "properties": {
              "json": {
                "type": "string"
              },
              "yaml": {
                "type": "string"
              },
              "tsv": {
                "type": "string"
              }
            }
          }
        }
      },
      "FileObject": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "object_id",
          "filename",
          "size_bytes",
          "sha256"
        ],
        "properties": {
          "object_id": {
            "type": "string"
          },
          "filename": {
            "type": "string"
          },
          "size_bytes": {
            "type": "integer"
          },
          "sha256": {
            "type": "string",
            "pattern": "^[a-f0-9]{64}$"
          },
          "role": {
            "type": "string"
          },
          "layer_release": {
            "type": "string"
          },
          "coverage": {
            "type": "string"
          },
          "total_table_count": {
            "type": "integer"
          },
          "nonempty_table_count": {
            "type": "integer"
          },
          "hosting_path": {
            "type": "string"
          },
          "parts_manifest": {
            "type": "string"
          },
          "hosting_status": {
            "type": "string"
          },
          "scope_manifest_inside_archive": {
            "type": "string"
          }
        }
      },
      "FileRegistry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "registry_schema",
          "resource_release",
          "identity_rule",
          "current_release",
          "archived_release_policy"
        ],
        "properties": {
          "registry_schema": {
            "type": "string"
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "identity_rule": {
            "type": "string"
          },
          "current_release": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FileObject"
            }
          },
          "archived_release_policy": {
            "type": "string"
          }
        }
      },
      "ReleaseManifest": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "manifest_schema",
          "resource",
          "release_config",
          "resource_release",
          "evidence_freeze",
          "gene_schema_version",
          "research_object_schema_version",
          "interface_label",
          "interface_build",
          "model_release",
          "benchmark_protocol",
          "prior_algorithm_version",
          "version_axes",
          "canonical_archive",
          "release_layers",
          "composite_release_requires_both_layers",
          "sqlite",
          "benchmark_summary",
          "object_counts",
          "candidate_coverage",
          "v1_publication_target",
          "disease_prediction_readiness",
          "v1_release_gate",
          "v1_external_authorization_dossier",
          "prediction_registry",
          "claim_boundary",
          "formal_v1_release",
          "release_readiness",
          "external_release_gates",
          "external_release_gate_status",
          "overlay_archive"
        ],
        "properties": {
          "manifest_schema": {
            "type": "string"
          },
          "resource": {
            "type": "string"
          },
          "release_config": {
            "type": "string"
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "evidence_freeze": {
            "type": "string",
            "format": "date"
          },
          "gene_schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "research_object_schema_version": {
            "type": "string",
            "enum": [
              "1.3"
            ]
          },
          "interface_label": {
            "type": "string",
            "enum": [
              "Research Workbench beta 3.5"
            ]
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "model_release": {
            "type": "string",
            "enum": [
              "ridge-safe-v2.3"
            ]
          },
          "benchmark_protocol": {
            "type": "string",
            "enum": [
              "repeated-fold-v2.2"
            ]
          },
          "prior_algorithm_version": {
            "type": "string"
          },
          "version_axes": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "resource_release",
              "evidence_freeze",
              "schema_version",
              "model_release",
              "benchmark_release",
              "interface_label",
              "interface_build"
            ],
            "properties": {
              "resource_release": {
                "type": "string",
                "enum": [
                  "v1.0.0-database-resource"
                ]
              },
              "evidence_freeze": {
                "type": "string",
                "format": "date"
              },
              "schema_version": {
                "type": "string",
                "enum": [
                  "1.1"
                ]
              },
              "model_release": {
                "type": "string",
                "enum": [
                  "ridge-safe-v2.3"
                ]
              },
              "benchmark_release": {
                "type": "string",
                "enum": [
                  "repeated-fold-v2.2"
                ]
              },
              "interface_label": {
                "type": "string",
                "enum": [
                  "Research Workbench beta 3.5"
                ]
              },
              "interface_build": {
                "type": "string",
                "enum": [
                  "EA-20260729-15"
                ]
              }
            }
          },
          "canonical_archive": {
            "$ref": "#/components/schemas/FileObject"
          },
          "release_layers": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "layer",
                "required_for_composite_release",
                "archive"
              ],
              "properties": {
                "layer": {
                  "type": "string"
                },
                "required_for_composite_release": {
                  "type": "boolean"
                },
                "archive": {
                  "$ref": "#/components/schemas/FileObject"
                }
              }
            }
          },
          "composite_release_requires_both_layers": {
            "type": "boolean"
          },
          "sqlite": {
            "$ref": "#/components/schemas/FileObject"
          },
          "object_counts": {
            "type": "object",
            "additionalProperties": {
              "type": "integer"
            }
          },
          "benchmark_summary": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "rmse_difference_vs_zero",
              "rmse_difference_vs_train_mean",
              "raw_cosine_difference_vs_train_mean",
              "perturbation_specific_residual_cosine"
            ],
            "properties": {
              "rmse_difference_vs_zero": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "rmse_difference_vs_train_mean": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "raw_cosine_difference_vs_train_mean": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              },
              "perturbation_specific_residual_cosine": {
                "$ref": "#/components/schemas/BenchmarkMetric"
              }
            }
          },
          "candidate_coverage": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "governed_hypotheses",
              "observed_hepg2_perturbation",
              "external_myoblast_context_assessed",
              "independent_muscle_or_dmd_perturbation_replication",
              "therapeutic_or_clinical_validation"
            ],
            "properties": {
              "governed_hypotheses": {
                "type": "integer"
              },
              "observed_hepg2_perturbation": {
                "type": "integer"
              },
              "external_myoblast_context_assessed": {
                "type": "integer"
              },
              "independent_muscle_or_dmd_perturbation_replication": {
                "type": "integer"
              },
              "therapeutic_or_clinical_validation": {
                "type": "integer"
              }
            }
          },
          "v1_publication_target": {
            "$ref": "#/components/schemas/V1PublicationTarget"
          },
          "disease_prediction_readiness": {
            "$ref": "#/components/schemas/PredictionReadiness"
          },
          "v1_release_gate": {
            "$ref": "#/components/schemas/V1ReleaseGate"
          },
          "v1_external_authorization_dossier": {
            "$ref": "#/components/schemas/ExternalAuthorizationDossier"
          },
          "prediction_registry": {
            "$ref": "#/components/schemas/PredictionRegistry"
          },
          "claim_boundary": {
            "type": "string"
          },
          "formal_v1_release": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "release_readiness": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "status",
              "formal_v1_ready",
              "freeze_package_status",
              "database_release_claim_boundary",
              "external_gate_input_contract",
              "internal_gates",
              "external_gates"
            ],
            "properties": {
              "status": {
                "type": "string"
              },
              "formal_v1_ready": {
                "type": "boolean",
                "enum": [
                  false
                ]
              },
              "freeze_package_status": {
                "type": "string"
              },
              "database_release_claim_boundary": {
                "type": "string",
                "enum": [
                  "v1.0 is a database and evidence-governance release; it is not a validated disease-prediction or clinical decision-support release."
                ]
              },
              "external_gate_input_contract": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "template",
                  "validator",
                  "instructions",
                  "automatic_formal_release"
                ],
                "properties": {
                  "template": {
                    "type": "string"
                  },
                  "validator": {
                    "type": "string"
                  },
                  "instructions": {
                    "type": "string"
                  },
                  "automatic_formal_release": {
                    "type": "boolean",
                    "enum": [
                      false
                    ]
                  }
                }
              },
              "internal_gates": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "id",
                    "status",
                    "evidence"
                  ],
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "pass"
                      ]
                    },
                    "evidence": {
                      "type": "string"
                    }
                  }
                }
              },
              "external_gates": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "id",
                    "status",
                    "required_input"
                  ],
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "required_input": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "external_release_gates": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "external_release_gate_status": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "overlay_archive": {
            "$ref": "#/components/schemas/FileObject"
          }
        }
      },
      "DmdCoverageReconciliation": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "reconciliation_schema",
          "resource_release",
          "evidence_freeze",
          "atlas_gene_count",
          "source_audit_gene_count",
          "dmd_context_gene_count",
          "no_usable_dmd_context_count",
          "records",
          "interpretation"
        ],
        "properties": {
          "reconciliation_schema": {
            "type": "string"
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "evidence_freeze": {
            "type": "string",
            "format": "date"
          },
          "atlas_gene_count": {
            "type": "integer",
            "enum": [
              17921
            ]
          },
          "source_audit_gene_count": {
            "type": "integer",
            "enum": [
              17920
            ]
          },
          "dmd_context_gene_count": {
            "type": "integer",
            "enum": [
              17919
            ]
          },
          "no_usable_dmd_context_count": {
            "type": "integer",
            "enum": [
              2
            ]
          },
          "records": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "gene",
                "reason",
                "source_audit_assessment_status",
                "source_audit_source_count",
                "dmd_context_assessment_status"
              ],
              "properties": {
                "gene": {
                  "type": "string",
                  "enum": [
                    "GARS1",
                    "NEFL"
                  ]
                },
                "reason": {
                  "type": "string"
                },
                "source_audit_assessment_status": {
                  "type": "string",
                  "enum": [
                    "assessed",
                    "not_assessed"
                  ]
                },
                "source_audit_source_count": {
                  "type": "integer",
                  "enum": [
                    0,
                    2
                  ]
                },
                "dmd_context_assessment_status": {
                  "type": "string",
                  "enum": [
                    "not_assessed"
                  ]
                }
              }
            }
          },
          "interpretation": {
            "type": "string"
          }
        }
      },
      "PriorRobustnessRegistry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "registry_schema",
          "resource_release",
          "registry_status",
          "grades",
          "registered_prior_variants",
          "ancillary_source_sensitivity",
          "records",
          "note"
        ],
        "properties": {
          "registry_schema": {
            "type": "string"
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "registry_status": {
            "type": "string",
            "enum": [
              "method_registered_analysis_not_yet_run"
            ]
          },
          "grades": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "R1",
              "R2",
              "R3",
              "R4",
              "R5"
            ],
            "properties": {
              "R1": {
                "type": "string"
              },
              "R2": {
                "type": "string"
              },
              "R3": {
                "type": "string"
              },
              "R4": {
                "type": "string"
              },
              "R5": {
                "type": "string"
              }
            }
          },
          "registered_prior_variants": {
            "type": "array",
            "minItems": 5,
            "maxItems": 5,
            "items": {
              "type": "string"
            }
          },
          "ancillary_source_sensitivity": {
            "type": "string",
            "enum": [
              "leave_one_source_out"
            ]
          },
          "records": {
            "type": "array",
            "maxItems": 0,
            "items": {
              "type": "object"
            }
          },
          "note": {
            "type": "string"
          }
        }
      },
      "ComparisonGeneCore": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "gene",
          "identifiers",
          "decision",
          "highest_supported_level",
          "highest_assessed_level",
          "dmd_context",
          "evidence_status",
          "context_metrics",
          "evidence_gaps",
          "has_detailed_audit_record"
        ],
        "properties": {
          "gene": {
            "type": "string"
          },
          "identifiers": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "hgnc_id",
              "ensembl_gene_id",
              "ncbi_gene_id"
            ],
            "properties": {
              "hgnc_id": {
                "type": "string",
                "nullable": true
              },
              "ensembl_gene_id": {
                "type": "string",
                "nullable": true
              },
              "ncbi_gene_id": {
                "type": "integer",
                "nullable": true
              }
            }
          },
          "decision": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "current_action",
              "current_display_label",
              "formal_deprioritization"
            ],
            "properties": {
              "current_action": {
                "type": "string",
                "nullable": true
              },
              "current_display_label": {
                "type": "string",
                "nullable": true
              },
              "formal_deprioritization": {
                "type": "boolean"
              }
            }
          },
          "highest_supported_level": {
            "type": "string"
          },
          "highest_assessed_level": {
            "type": "string"
          },
          "dmd_context": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "integrated_prior_direction",
              "source_direction_state",
              "source_direction_agreement",
              "variant_stability_state",
              "evidence_module_memberships",
              "statistical_support_state",
              "coverage_state",
              "uncertainty_state"
            ],
            "properties": {
              "integrated_prior_direction": {
                "type": "string",
                "nullable": true
              },
              "source_direction_state": {
                "type": "string"
              },
              "source_direction_agreement": {
                "$ref": "#/components/schemas/SourceDirectionAgreement"
              },
              "variant_stability_state": {
                "type": "string"
              },
              "evidence_module_memberships": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "statistical_support_state": {
                "type": "string"
              },
              "coverage_state": {
                "type": "string"
              },
              "uncertainty_state": {
                "type": "string"
              }
            }
          },
          "evidence_status": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "observed_hepg2_perturbation",
              "external_context_screen"
            ],
            "properties": {
              "observed_hepg2_perturbation": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "assessment_status",
                  "observed_cells"
                ],
                "properties": {
                  "assessment_status": {
                    "type": "string"
                  },
                  "observed_cells": {
                    "type": "integer",
                    "nullable": true
                  }
                }
              },
              "external_context_screen": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "assessment_status",
                  "hit"
                ],
                "properties": {
                  "assessment_status": {
                    "type": "string"
                  },
                  "hit": {
                    "type": "boolean",
                    "nullable": true
                  }
                }
              }
            }
          },
          "context_metrics": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "skeletal_muscle_median_tpm",
              "moderate_dependency_flag"
            ],
            "properties": {
              "skeletal_muscle_median_tpm": {
                "type": "number",
                "nullable": true
              },
              "moderate_dependency_flag": {
                "type": "boolean",
                "nullable": true
              }
            }
          },
          "evidence_gaps": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "decision_blocking_gap",
              "highest_missing_evidence_layer"
            ],
            "properties": {
              "decision_blocking_gap": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "code",
                  "label"
                ],
                "properties": {
                  "code": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  }
                }
              },
              "highest_missing_evidence_layer": {
                "type": "string"
              }
            }
          },
          "has_detailed_audit_record": {
            "type": "boolean"
          }
        }
      },
      "ComparisonObject": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "comparison_schema",
          "comparison_id",
          "payload_sha256",
          "resource_release",
          "schema_version",
          "evidence_freeze",
          "interface_build",
          "generated_at",
          "original_input_identifiers",
          "identifier_mapping",
          "ranking_generated",
          "rows",
          "claim_boundary"
        ],
        "properties": {
          "comparison_schema": {
            "type": "string",
            "enum": [
              "nmd-vcell-comparison-object/1.0"
            ]
          },
          "comparison_id": {
            "type": "string",
            "pattern": "^CMP-20260726-[A-F0-9]{12}$"
          },
          "payload_sha256": {
            "type": "string",
            "pattern": "^[a-f0-9]{64}$"
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "evidence_freeze": {
            "type": "string",
            "format": "date"
          },
          "interface_build": {
            "type": "string",
            "enum": [
              "EA-20260729-15"
            ]
          },
          "generated_at": {
            "type": "string",
            "format": "date-time"
          },
          "original_input_identifiers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "identifier_mapping": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "source",
              "retrieved_at"
            ],
            "properties": {
              "source": {
                "type": "string"
              },
              "retrieved_at": {
                "type": "string",
                "format": "date"
              }
            }
          },
          "ranking_generated": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "input_identifiers",
                "normalized_symbol",
                "mapping_status",
                "mapping_source",
                "mapping_candidates",
                "gene",
                "record"
              ],
              "properties": {
                "input_identifiers": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "normalized_symbol": {
                  "type": "string",
                  "nullable": true
                },
                "mapping_status": {
                  "type": "string"
                },
                "mapping_source": {
                  "type": "string"
                },
                "mapping_candidates": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "gene": {
                  "type": "string"
                },
                "record": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ComparisonGeneCore"
                    }
                  ],
                  "nullable": true
                }
              }
            }
          },
          "claim_boundary": {
            "type": "string"
          }
        }
      },
      "GeneRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schema_version",
          "resource_release",
          "gene",
          "identifiers",
          "highest_supported_level",
          "highest_assessed_level",
          "evidence_status",
          "decision",
          "evidence_gaps"
        ],
        "properties": {
          "schema_version": {
            "type": "string",
            "enum": [
              "1.1"
            ]
          },
          "resource_release": {
            "type": "string",
            "enum": [
              "v1.0.0-database-resource"
            ]
          },
          "evidence_freeze": {
            "type": "string",
            "format": "date"
          },
          "gene": {
            "type": "string"
          },
          "identifiers": {
            "$ref": "#/components/schemas/IdentifierRecord"
          },
          "highest_supported_level": {
            "type": "string",
            "enum": [
              "L1_resource_record",
              "L2_observed_same_context_perturbation"
            ]
          },
          "highest_assessed_level": {
            "type": "string",
            "enum": [
              "L1_resource_record",
              "L2_observed_same_context_perturbation",
              "L3a_external_context_screen"
            ]
          },
          "evidence_status": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "resource_record",
              "observed_hepg2_perturbation",
              "internal_model_support",
              "external_context_screen",
              "independent_perturbation_replication",
              "dmd_muscle_validation",
              "functional_validation",
              "therapeutic_utility"
            ],
            "properties": {
              "resource_record": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "observed_hepg2_perturbation": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "internal_model_support": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "external_context_screen": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "independent_perturbation_replication": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "dmd_muscle_validation": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "functional_validation": {
                "$ref": "#/components/schemas/EvidenceLayer"
              },
              "therapeutic_utility": {
                "$ref": "#/components/schemas/EvidenceLayer"
              }
            }
          },
          "decision": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "current_numeric_rank",
              "formal_deprioritization",
              "historical_rank_is_current"
            ],
            "properties": {
              "current_action": {
                "type": "string",
                "nullable": true,
                "enum": [
                  "verify_expression",
                  "muscle_assay",
                  "risk_review",
                  "computational_replication",
                  "hold_pending_external_audit"
                ]
              },
              "current_display_label": {
                "type": "string",
                "nullable": true
              },
              "current_numeric_rank": {
                "type": "integer",
                "nullable": true
              },
              "formal_deprioritization": {
                "type": "boolean"
              },
              "external_evidence_status": {
                "type": "string",
                "nullable": true,
                "enum": [
                  "author_report_pending_import"
                ]
              },
              "historical_rank": {
                "type": "integer",
                "nullable": true
              },
              "historical_rank_is_current": {
                "type": "boolean"
              }
            }
          },
          "evidence_gaps": {
            "$ref": "#/components/schemas/GapProfile"
          },
          "dmd_context": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "integrated_prior_direction",
              "source_direction_state",
              "source_direction_agreement",
              "variant_stability_state",
              "evidence_module_memberships",
              "statistical_support_state",
              "coverage_state",
              "integration_method",
              "uncertainty_state",
              "conflict_reason",
              "integrated_direction_is_prior_not_ground_truth"
            ],
            "properties": {
              "integrated_prior_direction": {
                "type": "string",
                "nullable": true,
                "enum": [
                  "up",
                  "down",
                  "mixed_or_zero"
                ]
              },
              "source_direction_state": {
                "type": "string",
                "enum": [
                  "consistent_up",
                  "consistent_down",
                  "conflicted",
                  "not_assessed"
                ]
              },
              "source_direction_agreement": {
                "$ref": "#/components/schemas/SourceDirectionAgreement"
              },
              "variant_stability_state": {
                "type": "string",
                "enum": [
                  "same_sign_across_variants",
                  "sign_varied_across_variants",
                  "all_zero_across_variants",
                  "not_assessed"
                ]
              },
              "variant_count": {
                "type": "integer",
                "nullable": true
              },
              "evidence_module_memberships": {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "source_limited",
                    "direction_conflicted",
                    "exploratory_multisource_core",
                    "multisource_direction_consistent",
                    "insufficient_direction_evidence"
                  ]
                }
              },
              "statistical_support_state": {
                "type": "string",
                "enum": [
                  "context_level_significant_rows_present",
                  "direction_only_no_significant_context_rows",
                  "not_assessed"
                ]
              },
              "coverage_state": {
                "type": "string",
                "pattern": "^(?:[1-4]_of_4_sources|not_assessed)$"
              },
              "integration_method": {
                "type": "string"
              },
              "uncertainty_state": {
                "type": "string",
                "enum": [
                  "direction_conflict_retained",
                  "incomplete_source_coverage",
                  "direction_consistent_not_formal_meta_analysis"
                ]
              },
              "conflict_reason": {
                "type": "string",
                "nullable": true
              },
              "integrated_direction_is_prior_not_ground_truth": {
                "type": "boolean"
              },
              "consensus_direction": {
                "type": "string",
                "nullable": true,
                "deprecated": true,
                "description": "Deprecated legacy name; use integrated_prior_direction."
              },
              "consensus_direction_deprecation": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "deprecated": {
                    "type": "boolean",
                    "enum": [
                      true
                    ]
                  },
                  "replacement": {
                    "type": "string",
                    "enum": [
                      "integrated_prior_direction"
                    ]
                  },
                  "policy": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "context_metrics": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "skeletal_muscle_median_tpm": {
                "type": "number",
                "nullable": true
              },
              "depmap_median_gene_effect": {
                "type": "number",
                "nullable": true
              },
              "moderate_dependency_flag": {
                "type": "boolean",
                "nullable": true
              },
              "observed_counteralignment": {
                "type": "number",
                "nullable": true
              }
            }
          },
          "summary": {
            "type": "string",
            "nullable": true
          },
          "links": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "research_record": {
                "type": "string"
              },
              "detailed_audit_record": {
                "type": "string",
                "nullable": true
              },
              "legacy_api_record": {
                "type": "string",
                "nullable": true
              },
              "release_manifest": {
                "type": "string"
              }
            }
          }
        }
      }
    }
  }
}
