ab234fe62907c81b702a63f5a73d40500a40916f lrnassar Tue Sep 29 16:12:28 2026 -0700 Fiber-seq: give the FIRE peak subtracks "visibility dense" instead of "onlyVisibility dense", so their mouseOver can actually be seen. onlyVisibility pins a faceted child rather than defaulting it: tdbVisLimitedByAncestors() in hg/lib/hui.c overwrites the computed visibility with the pinned mode, so a request for pack or full was discarded even from the URL, and the dropdown offered only hide and dense. Since no bigBed-like track draws per-item map boxes in dense, the mouseOver on all 41 peak stanzas was dead config and fiberSeqCompendium.html was promising a hover nobody could reach. Measured at ACTB with the map_data image map: pinned, a forced pack still computed to dense with 0 FIRE tooltips; defaulted, pack and full compute correctly and carry 8. Peaks still come up dense, which is what Andrew asked for in July. The signal types keep onlyVisibility, where pinning to full costs nothing because a bigWig draws the same at pack and full, and that is verified here too: acc, cpg and hap stay at full whatever is requested, and the container stays hidden on a fresh cart. Also fixes two makeDoc slips, the facet notes naming the script's dict keys rather than the column headings writeMetadata() emits, and the opening summary still saying accessibility and CpG "both became faceted composites" when they were merged into one 235 lines later. Caught by Claude review of 156d289 and 5179d7f. refs #38407 diff --git src/hg/makeDb/scripts/fiberSeq/fiberSeqTrackDb.py src/hg/makeDb/scripts/fiberSeq/fiberSeqTrackDb.py index de26f2f7591..f2ea7f77be1 100755 --- src/hg/makeDb/scripts/fiberSeq/fiberSeqTrackDb.py +++ src/hg/makeDb/scripts/fiberSeq/fiberSeqTrackDb.py @@ -286,31 +286,42 @@ out += stanza(8, [ "track fiberSeqCompendium_%s_peaks" % acc, "parent fiberSeqCompendium %s" % on, "type bigNarrowPeak", "bigDataUrl %s/%s/fire-peaks.ucsc.bb" % (gbdb, acc), "shortLabel %s Peaks" % name, "longLabel %s Fiber-seq FIRE peaks" % name, "signalFilter 0", "signalFilterLimits 0:100", "qValueFilter 0", "qValueFilterLimits 0:100", "scoreFilter 0", "scoreFilterLimits 0:1000", "mouseOver %s FIRE peak
FIRE score: ${signalValue}" "
-log10 FDR: ${qValue}
Score: ${score}" % name, - "onlyVisibility dense", + # "visibility", not "onlyVisibility" as every other data type here + # uses, and the difference is not cosmetic. onlyVisibility PINS a + # faceted child: tdbVisLimitedByAncestors() in hg/lib/hui.c + # overwrites the computed visibility with it, so a request for pack + # or full is discarded and the dropdown offers only hide and dense. + # That made the mouseOver above dead config, since no bigBed-like + # track draws per-item map boxes in dense. A plain "visibility" is + # a default instead: peaks still come up dense, as the lab asked in + # July, but switching to pack or full now works and the mouseOver + # appears. The signal types keep onlyVisibility, where pinning to + # full costs nothing - a bigWig draws the same at pack and full. + "visibility dense", pri(), ]) out += hapOverlay(gbdb, acc, name, "hap", "hap1.percent.accessible.bw", "hap2.percent.accessible.bw", "%s Hap1/2" % name, "%s Fiber-seq percent accessible, haplotype 1 (blue) " "and 2 (orange)" % name, "%s Fiber-seq percent accessible, haplotype" % name, "maximum", pri()) # Held back, see INCLUDE_NUC. Nucleosome density is read depth, not a # percentage, so unlike every other wiggle here it cannot have fixed # viewLimits: the per-sample mean runs from 25 (PS00971) to 142 # (GM12878) purely with sequencing depth, and single loci spike into the