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

openvax / topiary / 24170771911
85%
master: 90%

Build:
Build:
LAST BUILD BRANCH: v5.16.2
DEFAULT BRANCH: master
Ran 09 Apr 2026 03:35AM UTC
Jobs 3
Files 20
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

09 Apr 2026 03:27AM UTC coverage: 85.441% (-0.7%) from 86.166%
24170771911

Pull #97

github

iskandr
Add multi-model disambiguation for ranking/filtering DSL

When multiple MHC binding predictors produce the same prediction kind
(e.g. both NetMHCpan and MHCflurry produce pMHC_affinity), the ranking
system now supports qualifying expressions by prediction method.

Python API — bracket syntax on KindAccessor:

    Affinity["netmhcpan"] <= 500
    Affinity["mhcflurry"].score
    Affinity["netmhcpan"].norm(500, 200)
    0.5 * Affinity["netmhcpan"] + 0.5 * Affinity["mhcflurry"]

CLI — tool_kind underscore syntax:

    --ranking "netmhcpan_affinity <= 500 | mhcflurry_el.rank <= 2"
    --rank-by "netmhcpan_affinity,mhcflurry_presentation"

All existing short aliases work with tool prefix: netmhcpan_ba,
mhcflurry_el, netmhcpan_aff, etc.

Error handling:
- Unqualified access with multiple models producing the same kind
  raises ValueError listing available methods
- Qualified access with a typo raises ValueError with "Did you mean"
  suggestions via difflib fuzzy matching
- Unqualified access with a single model works without qualification
  (backwards compatible)

Adds 32 new tests including adversarial edge cases for ambiguity
detection, typo suggestions, empty data, missing columns, cross-model
composites, and case-insensitive matching.
Pull Request #97: Multi-model disambiguation for ranking/filtering DSL

95 of 117 new or added lines in 2 files covered. (81.2%)

5 existing lines in 1 file now uncovered.

1162 of 1360 relevant lines covered (85.44%)

2.56 hits per line

Uncovered Changes

Lines Coverage ∆ File
18
88.94
-3.14% topiary/ranking.py
4
83.25
-0.8% topiary/cli/args.py

Coverage Regressions

Lines Coverage ∆ File
5
88.94
-3.14% topiary/ranking.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 24170771911.1 09 Apr 2026 03:35AM UTC 20
85.44
GitHub Action Run
2 python-3.10 - 24170771911.2 09 Apr 2026 03:35AM UTC 20
85.44
GitHub Action Run
3 python-3.11 - 24170771911.3 09 Apr 2026 03:35AM UTC 20
85.44
GitHub Action Run
Source Files on build 24170771911
  • Tree
  • List 20
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24170771911
  • Pull Request #97
  • PR Base - master (#24167443840)
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