From 21ad35a60c02c1be2ca0a3ba7cb8ae4081afd797 Mon Sep 17 00:00:00 2001 From: ricardo Date: Thu, 4 Jun 2026 15:33:58 +0100 Subject: [PATCH 1/2] update evidence schema --- app/models/entities/Evidences.scala | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/app/models/entities/Evidences.scala b/app/models/entities/Evidences.scala index 257a1250..2019f8ad 100644 --- a/app/models/entities/Evidences.scala +++ b/app/models/entities/Evidences.scala @@ -126,14 +126,12 @@ case class Evidence( statisticalTestTail: Option[String], interactingTargetFromSourceId: Option[String], phenotypicConsequenceLogFoldChange: Option[Double], - phenotypicConsequenceFDR: Option[Double], phenotypicConsequencePValue: Option[Double], geneticInteractionScore: Option[Double], - geneticInteractionPValue: Option[Double], geneticInteractionFDR: Option[Double], biomarkerList: Option[Seq[NameAndDescription]], projectDescription: Option[String], - geneInteractionType: Option[String], + geneticInteractionType: Option[String], targetRole: Option[String], interactingTargetRole: Option[String], ancestry: Option[String], @@ -153,7 +151,14 @@ case class Evidence( qualityControls: Seq[String], publicationDate: Option[String], evidenceDate: Option[String], - metaTotal: Int = 0 + metaTotal: Int = 0, + validationReadouts: Seq[ValidationReadouts] +) + +case class ValidationReadouts(readoutMethodName: Option[String], + hsaValue: Option[Double], + screen: Option[String], + isValidated: Option[Boolean] ) case class Evidences(count: Int, cursor: Option[String], rows: IndexedSeq[Evidence]) From e574519fd77c33949a2e6dbd38cd2849f359b633 Mon Sep 17 00:00:00 2001 From: ricardo Date: Wed, 24 Jun 2026 15:23:18 +0100 Subject: [PATCH 2/2] update graphql structures --- app/models/entities/Evidences.scala | 3 +++ app/models/gql/Objects.scala | 11 ++++------- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/models/entities/Evidences.scala b/app/models/entities/Evidences.scala index 2019f8ad..8e49d07a 100644 --- a/app/models/entities/Evidences.scala +++ b/app/models/entities/Evidences.scala @@ -168,6 +168,9 @@ object Evidences { implicit val getEvidenceFromDB: GetResult[Evidence] = GetResult(fromPositionedResult[Evidence]) + implicit val validationReadoutsImp: OFormat[ValidationReadouts] = + Json.format[ValidationReadouts] + implicit val nameAndDescriptionJsonFormatImp: OFormat[NameAndDescription] = Json.format[NameAndDescription] diff --git a/app/models/gql/Objects.scala b/app/models/gql/Objects.scala index b3217fe3..0e84b493 100644 --- a/app/models/gql/Objects.scala +++ b/app/models/gql/Objects.scala @@ -4,7 +4,7 @@ import models.* import models.entities.Configuration.* import models.entities.* import models.gql.Arguments.* -import models.gql.Fetchers.{diseasesFetcher, *} +import models.gql.Fetchers.* import models.Helpers.ComplexityCalculator.* import models.entities.ClinicalIndications.{ clinicalIndicationsFromDiseaseImp, @@ -13,7 +13,6 @@ import models.entities.ClinicalIndications.{ import models.entities.ClinicalTargets.clinicalTargetsImp import sangria.macros.derive.* import sangria.schema.* - import scala.concurrent.ExecutionContext.Implicits.global import scala.concurrent.* import models.entities.Violations.{InputParameterCheckError, InvalidArgValueError} @@ -2976,6 +2975,8 @@ object Objects extends OTLogging { DocumentField("shortName", "Short name of the assay") ) + implicit val validationReadoutsImp: ObjectType[Backend, ValidationReadouts] = deriveObjectType() + implicit val evidenceImp: ObjectType[Backend, Evidence] = deriveObjectType( ObjectTypeName("Evidence"), ObjectTypeDescription( @@ -3086,17 +3087,13 @@ object Objects extends OTLogging { DocumentField("statisticalTestTail", "End of the distribution the target was picked from"), DocumentField("interactingTargetFromSourceId", "Identifer of the interacting target"), DocumentField("phenotypicConsequenceLogFoldChange", "Log 2 fold change of the cell survival"), - DocumentField("phenotypicConsequenceFDR", "False discovery rate of the genetic test"), - DocumentField("phenotypicConsequencePValue", "P-value of the the cell survival test"), DocumentField( "geneticInteractionScore", "The strength of the genetic interaction. Directionality is captured as well: antagonistics < 0 < cooperative" ), - DocumentField("geneticInteractionPValue", "P-value of the genetic interaction test"), - DocumentField("geneticInteractionFDR", "False discovery rate of the genetic interaction test"), DocumentField("biomarkerList", "List of biomarkers associated with the biological model"), DocumentField("projectDescription", "Description of the project that generated the data"), - DocumentField("geneInteractionType", "Description of the interaction between the two genes"), + DocumentField("geneticInteractionType", "Description of the interaction between the two genes"), DocumentField("targetRole", "Role of a target in the genetic interaction test"), DocumentField("interactingTargetRole", "Role of a target in the genetic interaction test"), DocumentField("assays", "Assays used in the study"),