f2ef97844c0973a30cbbc1afcdd01b4096143a69
lrnassar
  Wed Jun 3 10:56:07 2026 -0700
Add date-based dataVersion to composite/superTrack otto containers. refs #36455

Composite and superTrack container pages do not display 'Data last updated at
UCSC' (printUpdateTime returns early for them), so a dataVersion file is the
only freshness signal a user sees there. Add one to the dbVar (dbVarSv),
panelApp, clinGen (clinGenComp) and decipher (decipherContainer) containers.

Each otto build script writes a per-assembly 'Last updated <date>' file when it
actually updates the data, and the container stanza points to it via dataVersion.
clinGen's container date is written by its three displayed feeds (makeDosage,
makeGeneValidity, makeClinGenCspec); decipher writes hg38 only (hg19 is frozen).

diff --git src/hg/utils/otto/decipher/checkDecipher.sh src/hg/utils/otto/decipher/checkDecipher.sh
index 32f42ebf2f1..f2197c1b214 100755
--- src/hg/utils/otto/decipher/checkDecipher.sh
+++ src/hg/utils/otto/decipher/checkDecipher.sh
@@ -1,68 +1,71 @@
 #!/bin/sh -e
 set -eEu -o pipefail
 #	Do not modify this script, modify the source tree copy:
 #	src/utils/decipher/checkDecipher.sh
 #	This script is used via a cron job and kept in $HOME/bin/scripts/
 
 #	cron jobs need to ensure this is true
 #       current login requires the user be braney
 umask 002
 
 trap reportErr ERR
 
 function reportErr
 {
     echo "ERROR: DECIPHER pipeline failed"
     exit 1;
 }
 
 
 WORKDIR="/hive/data/outside/otto/decipher"
 export WORKDIR
 
 #	this is where we are going to work
 if [ ! -d "${WORKDIR}" ]; then
     echo "ERROR in DECIPHER release watch, Can not find the directory:
     ${WORKDIR}" 
     exit 255
 fi
 
 cd "${WORKDIR}"
 curl --silent -K curl.config -o decipher-variants-grch38.bed
 
 if [ ! -s decipher-variants-grch38.md5 ] || ! md5sum -c --status decipher-variants-grch38.md5
 then
     mkdir -p ${WORKDIR}/release/hg38
 
     today=`date +%F`
     mkdir -p $today
     cp -p decipher-variants-grch38.bed $today
     cd $today
 
     # build the new DECIPHER track tables (builds bigBed for cnv's)
     ../buildDecipher decipher-variants-grch38.bed
     ../validateDecipher.sh
 
     # now install
     for db in hg38
     do
         for i in `cat ../decipher.tables`
         do 
         n=$i"New"
         o=$i"Old"
         hgsqlSwapTables $db $n $i $o -dropTable3
         done
     done
     cp -p --remove-destination decipherCnv.bb ../release/hg38/decipherCnv.bb
+    # decipherContainer is a superTrack whose container page shows no "Data last
+    # updated"; this dataVersion file gives it a date. hg38 only (hg19 is frozen).
+    printf 'Last updated %s\n' "$today" > ../release/hg38/version.txt
 
     echo "DECIPHER Installed `date`"
 
     cd ${WORKDIR}
     # Update our md5sum record
     md5sum decipher-variants-grch38.bed > decipher-variants-grch38.md5
 #Commenting out heartbeat message below so as not to get spam.
 #else
 #    echo "No update"
 fi
 
 rm decipher-variants-grch38.bed