v0.1.0-alpha.13
Pre-releaseDecoding-Us Navigator — v0.1.0-alpha.13 (prerelease)
✨ Chromosome painting, rebuilt — two parental sides, and real population names
Painting used to give you one blended picture labelled "European". It now splits your DNA into the two halves you inherited — one from each parent — and names the populations along each one.
- Your DNA sides. Each chromosome is painted twice: once for the half you got from your mother, once for your father's. They're labelled Mother / Father when a parent is in your workspace, Side A / Side B otherwise. There's a plain-language version of this in Simple mode.
- Sub-population names, not just a continent. The painter now matches your actual haplotypes — stretches of DNA inherited intact — against a reference of real people's chromosomes, instead of scoring each position against population averages. Averages throw away exactly the information that separates British from Tuscan; matching haplotypes keeps it.
- A far denser reference. The reference panel was rebuilt from 15,659 markers to 164,685, chosen as common variants rather than continent-separating ones — the old set was picked for a different job and was actively poor at this one. Populations that were previously indistinguishable are now callable: Basque, Sardinian, Orcadian, Russian.
- Hover to trace a population. Hovering a population in the legend (or any segment) highlights it across every chromosome, so you can see where one ancestry actually sits.
- The reference downloads automatically the first time you paint (133 MB, once). Painting then takes about a minute.
How accurate is this? — measured, not asserted
The painter is now scored against known truth: real reference individuals are removed from the panel, painted, and checked against the population they actually come from. On that test:
| What it's calling | How often it's right |
|---|---|
| Continent | 98.5% |
| Region (NW / Southern / NE Europe) | 68% |
| Exact sub-population | 33% (guessing would be ~10%) |
| Top population per side | 61% |
Per population, it varies a great deal: Finnish 91–96%, British 34–56%, Basque 33–37%, Sardinian 10–36%. French cannot be called at all (~3%) and Russian is weak.
How to read your painting. Treat the top population on each side as informative, not definitive. "British" and "NW European (Utah)" are not a real distinction — they're the two labels the model confuses most. And a few percent of Finnish, Tuscan or Iberian on a NW-European genome is known background noise (~10% of the genome), not a trace of recent ancestry. Continent-level results are solid; the sub-population names are a genuine signal that is right about a third of the time.
Fixed — Windows
Two problems that only affected Windows, both found by this release's testing:
- Your settings could silently revert. If the app saved settings or reference overrides at the same moment something read them, the read failed and the app quietly fell back to defaults — including your chromosome-painting calibration.
- App data was written to the wrong place. Your workspace database, reference genomes, panels and saved language were stored next to wherever the app happened to be launched from, rather than in your user profile — so two launches from different folders wouldn't see the same workspace. Everything now lives under
%USERPROFILE%\.decodingus, matching macOS and Linux.
If you ran an earlier alpha on Windows: your existing workspace is still in that old location. Copy the
.decodingusfolder from there into your user profile folder to keep your subjects and analyses.
Under the hood
- New offline tool
navigator-panelbuild validate-laiscores the painter against held-out reference individuals — every calibration value above was chosen from its numbers rather than by eye, and two of the previous hand-tuned settings turned out to be backwards. - The painter's advanced settings (Settings → Chromosome painting) now express minimum segment length in centiMorgans rather than marker count, so the setting keeps its meaning when the reference panel changes.