• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pirl-unc / tcrsift / 26848666376
82%

Build:
DEFAULT BRANCH: main
Ran 02 Jun 2026 09:21PM UTC
Jobs 4
Files 35
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Jun 2026 09:19PM UTC coverage: 80.82% (-0.7%) from 81.556%
26848666376

push

github

web-flow
2.22.0: OLGA/SONIA Pgen + Ppost selection features (#143) (#153)

* OLGA/SONIA Pgen + Ppost selection features (#143)

The reproducible precursor-frequency / publicness axis. New module
tcrsift/olga_ppost.py computes per-clonotype log10 Pgen (OLGA) and
log10 Ppost = Pgen*Q (SONIA) for TRA and TRB, the sequence-only
discriminator that separates public from private clones reproducibly
across donors (pilot AUROC 0.72/0.72) where RNA signatures flip.

- OLGA + SONIA are GPL-3.0 -> runtime-optional extra (pip install
  tcrsift[pgen]), NOT vendored, so tcrsift stays Apache-2.0. Lazy import
  with an install-hint ImportError.
- Loads the default human-T models; passes chain_type explicitly so the
  alpha (VJ) model doesn't silently load as beta (VDJ). Computes Q via
  SONIA's serial evaluate_selection_factors and Pgen via OLGA's
  per-sequence call — no multiprocessing pool.
- Gene names mapped to OLGA's allele-suffixed form (append *01 when
  missing). Pgen=0 / unrecognized-even-after-*01 -> NaN, never a silent
  default-mask (the nearest-supported-allele mapping is #150, which builds
  on supported_alleles()).
- flag_private_candidates: low-Ppost AND expanded.
- CLI: 'tcrsift ppost'. main() now propagates command return codes.
- Tests gated on the optional extra (model-backed) + always-on pure
  helpers and missing-deps path. Docs page + nav.

Bump 2.22.0.

* Quiet pylint on the optional GPL imports (CI lint fix)

pylint --errors-only flagged olga/sonia as unresolved imports (E0401) and
the object-typed evaluator attr (E1101) in CI, where the [pgen] extra
isn't installed. Disable those checks inline — the imports are guarded by
_require_olga_sonia().

8027 of 9932 relevant lines covered (80.82%)

3.23 hits per line

Coverage Regressions

Lines Coverage ∆ File
195
57.37
-0.92% cli.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 26848666376.1 02 Jun 2026 09:21PM UTC 35
80.81
GitHub Action Run
2 python-3.10 - 26848666376.2 02 Jun 2026 09:21PM UTC 35
80.81
GitHub Action Run
3 python-3.9 - 26848666376.3 02 Jun 2026 09:21PM UTC 35
80.77
GitHub Action Run
4 python-3.11 - 26848666376.4 02 Jun 2026 09:21PM UTC 35
80.81
GitHub Action Run
Source Files on build 26848666376
  • Tree
  • List 35
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26848666376
  • 9ca1f7d7 on github
  • Prev Build on main (#26846875198)
  • Next Build on main (#26857655499)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc