Release notes#
0.4.0#
Targeted annotation and retained alternatives#
vdjmatch annotate and annotate_repertoires accept single-chain AIRR,
paired long/wide AIRR, simple V/J/junction tables, directories and path metadata.
The targeted stem4 kernel is the annotation default; historical-density
retains the original scorer. Advanced kernel reducers, matrix/profile options
and fixed --geometry-extra recipes remain available. Output preserves sample
and source identities, missing support, contradictory labels and separate paired
linked/marginal evidence. V similarities are prepared once per invocation and
mixed cohorts share marginal population searches. Native searches respect the
explicit thread budget; serial/parallel outputs are identical.
Evidence scores are relative measures. Confidence calibration belongs to the complete geometry, scorer and target-selection procedure. Historical normalized extras preserve their pre-exclusion same-V denominator and remain reproduction diagnostics. Original density shares ordered transient reference edges within an invocation under a 2 GiB estimated preparation allocation cap; oversized requests fail explicitly and require fewer targets or queries.
Standalone reference resolution#
GitHub latest/pinned releases and user-supplied tables, ZIPs and directories share one resolver. Historical legacy references, richer primary bundles and AIRR Rearrangement/Reactivity exports preserve independent observations and metadata. Manifest roles, checksums, atomic publication and writer locks protect fetched inputs. An explicit primary or AIRR selection fails when the release lacks that format.
Selected-receptor evidence#
Query identities, loci, V/J calls and pairing survive matching and join-back.
AIRR uses anchor-inclusive junction_aa; ambiguous custom inputs require an
explicit convention. Supplied counts must be nonnegative integers.
CLI/API candidate reduction reports peptide–MHC alternatives, NED-v1 ranking, reference/study/clonotype support and competing evidence. Optional fixed-ball E/P calibration is distinct from posterior specificity confidence. Paired reference evidence requires both chains in the same complex and reports detailed chain identities. Finite paired controls have bounded rule-of-three corrections.
Compatibility and limits#
CLI output now includes hits, candidates, calls, descriptive summaries, ingestion diagnostics and a run manifest. Calls preserve input rows; exact ranking ties abstain. Default search threads are one. Samples run sequentially and native search uses complete query batches per locus. VDJAM is the CLI/API default scoring matrix.
Requires seqtree>=1.1.1, vdjtools>=5.0.1, polars>=1.41.2,<2 and
scipy>=1.9 for exact finite-control bounds and binomial tails.
HF benchmark snapshots are explicit, separate from GitHub release resolution.
Hard V/J calibration requires metadata-aware controls and fails explicitly.
Paired CLI V/J restrictions are currently unsupported and fail explicitly.
first-hit exposes global adaptive first-hit enrichment through the CLI,
with fresh raw control indexing, original query rows and a provenance manifest.
match --fresh-control and repeatable --control LOCUS=TABLE support fresh
raw-control manuscript runs. Single-chain --exclude-exact applies the same
puncture to target and control evidence. Paired exclusion removes only exact/exact
junction pairs and retains one-exact/other-neighbour evidence. Its all-count
finite-control method uses four marginal category Clopper–Pearson upper bounds,
fixed total failure budget 1e-6, and a binomial target tail plus that budget.
Empirical Cartesian counts, raw E and raw Poisson tails remain diagnostics.
The bound is explicitly conditional on IID category/target sampling and
independent background chains; deduplicated controls do not establish those
assumptions or unconditional biological calibration. Default paired Poisson
calibration remains unchanged.
Declared paired reference links survive string IDs, independent chain record IDs
and repeated normalization; conflicting links fail explicitly.
search exposes fresh native batch matching, positional row identities,
counts-only output, same-key filtering and vectorized positional matrix scores.
Its manifest separates native build/search and positional rescoring times.
Repertoire-level statistical inference remains future work.
Graded neighbourhood annotation#
match --search-mode ball exposes fixed radii 1–5 without a global neighbour
cap. Unit-cost balls share one minimum-edit search; weighted balls use a complete
batch per radius. Fixed paired annotation retains its explicit joint control
calibration. Existing fixed-mode behaviour remains available.
The experimental fixed-K CLI/sample-runner mode and --top-k argument were
removed before publication. Historical ranked research APIs remain available for
reproducing earlier diagnostics. Their calibration and label ranks must not be
presented as the production neighbourhood scorer. Publishing seqtree 1.0.2
remains a dependency prerequisite for the pending release.
Repeated query junctions are searched once within each native batch, including single-chain and paired marginal controls. Hits are expanded back to every query row before evidence reduction, preserving distinct V/J calls, counts and pairing. No computed search results are persisted between runs.
V-gene matching and germline model lookup preserve legitimate IMGT slash-containing names (for example TRAV23/DV6 and TRBV24/OR9-2) while stripping allele suffixes. These names must not be treated as decorations or collapsed to a different gene. Historical benchmark exports that stripped slash suffixes retain their original provenance and require explicit reconciliation before a fresh scientific comparison.