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

pirl-unc / tcrsift / 25878034169
84%

Build:
DEFAULT BRANCH: main
Ran 14 May 2026 06:32PM UTC
Jobs 4
Files 26
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

14 May 2026 06:30PM UTC coverage: 75.226% (+0.09%) from 75.141%
25878034169

push

github

web-flow
Fix #70: add antigen-response signature + extract tcrsift.signatures module (#73)

* Fix #70: add antigen-response signature constants + audit

Closes #70. The per-sample signature scatter
(`plot_clone_freq_vs_signature_per_sample`) already accepts any
gene set via `gene_ids`; this PR adds the three focal 2-gene
signatures the experiments wrapper uses so callers don't have to
duplicate them.

New plots-side constants matching the experiment's three focal
signatures (which it already imports from `tcrsift.til_select`):

- `ANTIGEN_RESPONSE_GENES_HGNC = ("TNFRSF9", "MKI67")` — AIM-assay
  activation marker + Ki-67 proliferation. The #70 ask.
- `CYTOLYTIC_GENES_HGNC = ("PRF1", "GZMB")` — canonical cytotoxic
  effector readout (Caushi 2021, Krishna 2021, Hanada 2022).
- `TUMOR_REACTIVE_GENES_HGNC = ("CXCL13", "ENTPD1")` — TIL-resident
  tumor-reactive phenotype (Workel 2019, Duhen 2018).

These mirror the existing `til_select` defaults
(`ANTIGEN_RESPONSE_GENES_DEFAULT`, `CYTOLYTIC_GENES_DEFAULT`,
`ENRICHMENT_GENES_DEFAULT`); a sync test in
`test_plots_43_remaining.py::TestFocalSignatureConstants` locks the
two sources together so they can't drift.

Audit result against `~/code/experiments/sarah-tcrseq-run2-run3`:
all three focal signatures the experiment uses are already present
in `tcrsift.til_select`; the experiment also already imports them
from tcrsift (with a hardcoded fallback). The gap was that
`tcrsift.plots` didn't re-expose them with the same `_HGNC` naming
convention as activation / exhaustion, so the per-sample scatter
required callers to hardcode them. Fixed.

Semver minor bump 0.10.0 → 0.11.0 for the three new public constants.

933 tests pass; lint clean.

* Move T-cell signatures from til_select into tcrsift.signatures

Per code review on #73 and follow-up: the curated gene-set signatures
shouldn't live in `til_select.py`, since they're equally useful for
selecting other kinds of T cells — antigen-response screens,
exhaustion-state phenoty... (continued)

5742 of 7633 relevant lines covered (75.23%)

3.01 hits per line

Coverage Regressions

Lines Coverage ∆ File
253
57.9
-0.21% plots.py
248
69.3
0.0% til_select.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 25878034169.1 14 May 2026 06:33PM UTC 26
75.22
GitHub Action Run
2 python-3.9 - 25878034169.2 14 May 2026 06:32PM UTC 26
75.18
GitHub Action Run
3 python-3.11 - 25878034169.3 14 May 2026 06:32PM UTC 26
75.22
GitHub Action Run
4 python-3.10 - 25878034169.4 14 May 2026 06:32PM UTC 26
75.22
GitHub Action Run
Source Files on build 25878034169
  • Tree
  • List 26
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25878034169
  • fe61ac5c on github
  • Prev Build on main (#25876362774)
  • Next Build on main (#25881973801)
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