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

openvax / topiary
92%
master: 92%

Build:
Build:
LAST BUILD BRANCH: fix-declared-deps-and-dead-surface
DEFAULT BRANCH: master
Repo Added 05 Jan 2018 08:34PM UTC
Files 43
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

LAST BUILD ON BRANCH fix-cli-coverage-gap-error-handling
branch: fix-cli-coverage-gap-error-handling
CHANGE BRANCH
x
Reset
  • fix-cli-coverage-gap-error-handling
  • absent-vs-empty-audit
  • add-agents-md
  • add-cache-sharding
  • add-cached-predictor
  • add-model-colon-kind-syntax
  • add-netmhc-cache-loaders
  • add-protected-tissues-scope
  • add-self-proteome-nearest
  • align-custom-dsl-nodes-with-normalized-keys
  • allele-class-mhcgnomes
  • allele-free-rows
  • allele-set
  • antigen-fragment
  • autowrap-allele-free
  • bare-ident-brackets
  • best-allele-aggregation
  • cache-allele-nulls
  • cache-duplicate-keys
  • cache-key-allele-set
  • cached-predictor-cli
  • cached-predictor-vaxrank-polish
  • canonical-methods
  • centralize-amino-acid-data
  • chore/varcode-floor-122
  • ci-caching
  • cleanup-dsl-version-syntax
  • cleanup-packaging-and-actions
  • codex/mhctools-3-7-compat
  • codex/predict-wt-peptides
  • combine-predictor-results
  • common-expression-vocabulary
  • composition-tests
  • consumer-guide
  • context-forwarding
  • correct-preference-claim
  • cross-sample-evidence
  • csv-fasta-inputs
  • default-versions
  • define-protein-fragment-init
  • deslop/readme
  • dsl-extensions
  • dsl-polish
  • dsl-polish-v5.0.1
  • dsl-refactor-v5
  • empty-bucket-and-merge-collision
  • eval-context-default-methods
  • evaluate-scores-helper
  • expression-data
  • expression-dsl-v2
  • feature/peptide-aware-isovar-context
  • feature/peptide-property-dsl
  • filter-auto-aggregate
  • fix-127-autowrap-test
  • fix-165-backfill-value-from-score
  • fix-biopython-dependency
  • fix-cached-protein-scan-occurrence-context
  • fix-cli-oserror-message-regression
  • fix-coverage-allele-set-and-half-life-dsl
  • fix-coverage-error-str-and-cli-handling
  • fix-cross-sample-evidence-review
  • fix-declared-deps-and-dead-surface
  • fix-deploy-python-selection
  • fix-flank-mismatch-kind-coverage
  • fix-lazy-model-discovery
  • fix-pirlygenes-tissue-columns
  • fix-pvacseq-presentation
  • fix-review-followups-coverage-error-and-diagnostics
  • fix-sort-ordering
  • fix-wide-list-valued-annotations
  • fix/ci-retries-and-test-collection
  • fix/release-preflight
  • fragment-counts-to-frame
  • fragment-read-evidence
  • from-predictions
  • from-predictions-columns
  • group-keys-everywhere
  • guide-corrections
  • haplotype-autoproject
  • honest-dna-subject
  • improve-cli-errors
  • inline-blosum62
  • io-wide-v4.11
  • isovar-fragments
  • isovar-run
  • kind-mhc-dependence
  • lazy-varcode-imports
  • lens-loader
  • lens-mapping-override
  • lens-multi-version
  • lens-version-agnostic
  • master
  • multi-model-disambiguation
  • openvax_switch
  • optional-dependency-extras
  • peptide-level-named-allele
  • peptide-provenance
  • peptide-view
  • peptide-view-followups
  • per-peptide-alleles
  • pirlygenes-5.1-expression-accessors
  • plumb-kind-support
  • pr-b-fragment-refactor
  • promote-kind-aliases-public
  • public-fragment-api
  • pvacseq-branch-vocabulary
  • pvacseq-loader
  • read-evidence
  • read-subject
  • refactor-for-protein-sequences
  • regression-all-blank-allele
  • release-4.8.0
  • remove-model-lookup-global
  • restore-varcode-cli-parser-delegation
  • rna-evidence-accessors
  • scoped-fields-in-filters
  • self-nearest-population
  • shrink-cached-predictor-index
  • simplify-eval-context-frame-names
  • symmetric-ambiguous-amino-acid-distance
  • symmetric-evidence-columns
  • test-audit-v4.10
  • topiary-result
  • unify-release-python
  • v4.10.0
  • v4.11.0
  • v4.11.1
  • v4.11.2
  • v4.12.0
  • v4.3.0
  • v4.3.1
  • v4.3.2
  • v4.4.0
  • v4.5.0
  • v4.5.1
  • v4.6.0
  • v4.8.0
  • v4.9.0
  • v5.0.0
  • v5.0.1
  • v5.1.0
  • v5.10.0
  • v5.10.1
  • v5.10.2
  • v5.10.3
  • v5.10.4
  • v5.10.5
  • v5.10.6
  • v5.10.7
  • v5.10.8
  • v5.11.0
  • v5.12.0
  • v5.13.0
  • v5.14.0
  • v5.14.1
  • v5.15.0
  • v5.16.1
  • v5.16.2
  • v5.17.1
  • v5.18.0
  • v5.18.1
  • v5.19.0
  • v5.2.0
  • v5.20.0
  • v5.20.1
  • v5.21.0
  • v5.21.1
  • v5.22.0
  • v5.26.0
  • v5.27.0
  • v5.28.0
  • v5.28.2
  • v5.29.0
  • v5.30.0
  • v5.31.0
  • v5.31.1
  • v5.32.0
  • v5.33.0
  • v5.34.0
  • v5.35.0
  • v5.35.1
  • v5.36.0
  • v5.37.0
  • v5.38.0
  • v5.39.0
  • v5.39.1
  • v5.4.0
  • v5.40.0
  • v5.41.0
  • v5.42.0
  • v5.43.0
  • v5.44.0
  • v5.45.0
  • v5.45.1
  • v5.46.0
  • v5.47.0
  • v5.48.0
  • v5.48.1
  • v5.49.0
  • v5.49.1
  • v5.5.0
  • v5.51.0
  • v5.52.0
  • v5.52.1
  • v5.52.10
  • v5.52.2
  • v5.52.3
  • v5.52.4
  • v5.52.5
  • v5.52.6
  • v5.52.7
  • v5.52.8
  • v5.52.9
  • v5.53.0
  • v5.55.1
  • v5.6.0
  • v5.8.0
  • v5.9.0
  • v5.9.1
  • verify-isovar-integration
  • verify-pirlygenes-integration

11 Sep 2026 01:50PM UTC coverage: 92.101% (+0.001%) from 92.1%
34606604640-1

Pull #306

github

iskandr
CLI catches CachedPredictor's KeyError cleanly (#304)

CachedPredictor raises KeyError, not ValueError, for exactly two
conditions: a peptide the cache doesn't cover with no fallback set, and
a protein-scan occurrence a flank or genotype mismatch leaves uncovered
(#296, #302). main()'s top-level handler only caught
(OSError, ValueError), so this one CachedPredictor failure was the one
that reached the user as a raw Python traceback instead of a clean CLI
error.

main() now catches KeyError too, and unwraps its message rather than
calling str() on it directly - str(KeyError(...)) reprs the message with
an extra quoted layer, which would have made this look different from
every ValueError/OSError message on the same code path.

Deliberately not fixed here: whether a coverage-gap failure during a
multi-sequence batch scan should abort the whole run or skip and report
just the offending occurrence. That's a real design choice with its own
tradeoffs - a partial result that looks complete unless a warning gets
checked is exactly the silent-wrong-answer risk #296/#302 were written
to close, one level up - so #304 stays open for that discussion and
this PR only closes the half that's a straightforward bug.

Claude-Session: https://claude.ai/code/session_015pMD1uiTztbB2bTQ1FkY8m
Pull Request #306: CLI catches CachedPredictor's KeyError cleanly (#304)

4 of 4 new or added lines in 2 files covered. (100.0%)

7101 of 7710 relevant lines covered (92.1%)

0.92 hits per line

Relevant lines Covered
Build:
Build:
7710 RELEVANT LINES 7101 COVERED LINES
0.92 HITS PER LINE
Source Files on fix-cli-coverage-gap-error-handling
  • Tree
  • List 43
  • Changed 2
  • Source Changed 2
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
34606604... fix-cli-coverage-gap-error-handling CLI catches CachedPredictor's KeyError cleanly (#304) CachedPredictor raises KeyError, not ValueError, for exactly two conditions: a peptide the cache doesn't cover with no fallback set, and a protein-scan occurrence a flank or genotype mismatch ... Pull #306 11 Sep 2026 01:55PM UTC iskandr github
92.1
See All Builds (542)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc