Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .changeset/fix-sc-tcr-chain-letters.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
'@platforma-open/milaboratories.vj-usage.ui': minor
'@platforma-open/milaboratories.vj-usage': minor
---

Fix single-cell TCR chain selector mapping: A/B were swapped for TCRAB and TCRGD. Producers (mixcr-clonotyping, import-vdj-data) assign A to the more diverse chains: Beta and Delta. The selector was running usage on the opposite chain from the one labelled. Existing blocks are relabelled only, the stored chain value is unchanged, so nothing re-runs.

The selector also lists chains in the classic annotation order again — Alpha/Beta and Gamma/Delta — instead of the value order A/B.
10 changes: 6 additions & 4 deletions ui/src/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ export function useScChainOptions(

const receptor = axisSpec.domain?.["pl7.app/vdj/receptor"];

// Values are the producers' (mixcr-clonotyping, import-vdj-data): A is the more diverse
// chain. Array order is display order, kept in the classic annotation order.
let options: { label: string; value: string }[];
switch (receptor) {
case "IG":
Expand All @@ -42,14 +44,14 @@ export function useScChainOptions(
break;
case "TCRAB":
options = [
{ label: "Alpha", value: "A" },
{ label: "Beta", value: "B" },
{ label: "Alpha", value: "B" },
{ label: "Beta", value: "A" },
];
break;
case "TCRGD":
options = [
{ label: "Gamma", value: "A" },
{ label: "Delta", value: "B" },
{ label: "Gamma", value: "B" },
{ label: "Delta", value: "A" },
];
break;
default:
Expand Down
Loading