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
10 changes: 10 additions & 0 deletions .changeset/sc-chain-domain-letters.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
'@platforma-open/milaboratories.cdr3-spectratype.workflow': minor
'@platforma-open/milaboratories.cdr3-spectratype.model': minor
'@platforma-open/milaboratories.cdr3-spectratype.ui': minor
'@platforma-open/milaboratories.cdr3-spectratype': minor
---

Single-cell chain selection now uses the `pl7.app/vdj/scClonotypeChain` domain letter, matching the producers (mixcr-clonotyping, import-vdj-data) and the vj-usage block: A is the more diverse chain — Heavy, Beta, Delta. The workflow no longer inverts A/B for TCRAB/TCRGD, the args field is renamed `scClonotypeChain` to say which convention the letter is in, and emitted columns are labelled with the chain name instead of the raw letter. The selector keeps the classic annotation order, so TCR pairs read Alpha (B), Beta (A).

Every existing block goes stale and must be re-run, because the args field was renamed. For single-cell TCR that re-run is the point: the stored letter is unchanged but now selects the other chain of the pair, so those blocks switch chain and their exported columns change identity (the chain letter rides in the cdr3Length axis domain). Re-pick the chain in Settings if you wanted the one you had, and update any custom block label naming a chain, since it also becomes the trace label. Bulk and Ig blocks re-run to the same result, with the chain name replacing the letter in Ig labels.
2 changes: 1 addition & 1 deletion model/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export const platforma = BlockModelV3.create(blockDataModel)
return {
datasetRef: data.datasetRef,
lengthType: data.lengthType,
scChain: data.scChain,
scClonotypeChain: data.scChain,
customBlockLabel: data.customBlockLabel,
};
})
Expand Down
3 changes: 2 additions & 1 deletion model/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import type { GraphMakerState } from "@milaboratories/graph-maker";
import type { PlRef } from "@platforma-sdk/model";

export type LengthType = "aminoacid" | "nucleotide";
/** `pl7.app/vdj/scClonotypeChain` domain letter: "A" is Heavy/Beta/Delta, "B" is Light/Alpha/Gamma. */
export type ScChain = "A" | "B";

/**
Expand Down Expand Up @@ -29,7 +30,7 @@ export type BlockData = {
export type BlockArgs = {
datasetRef: PlRef;
lengthType: LengthType;
scChain: ScChain;
scClonotypeChain: ScChain;
customBlockLabel: string;
};

Expand Down
Loading
Loading