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

ponder-lab / Hybridize-Functions-Refactoring / #3281
88%

Build:
DEFAULT BRANCH: main
Ran 01 Oct 2026 04:24PM UTC
Jobs 1
Files 44
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

01 Oct 2026 04:05PM UTC coverage: 87.251% (+0.1%) from 87.131%
#3281

push

github

web-flow
Withhold a signature that would change a declared failure's exception (#1010)

* Withhold a signature that would change a declared failure's exception

A call declared to fail is set aside as evidence (#888), but it still
runs against the inferred signature, which validates the argument
before the body does. With `assertRaises(TypeError)` around `f(None)`,
the body raises `TypeError` eagerly and under a bare decorator, but a
`TensorSpec` rejects `None` with `ValueError` first, so the test fails.

Each guard now records the exception classes it admits, resolved from
its first argument: a builtin class, a `tf.errors` attribute, or a
tuple of either. The parameter keeps the types it receives in each
expected-failure node. Where the inferred specification would reject
that argument with an exception no guard around the call admits, the
signature is withheld with GUARDED_CALL_REJECTED_BY_SIGNATURE and the
function converts with a bare decorator.

The exception is predicted from the specification's form and the
argument's kind, as measured on TensorFlow 2.9.3: a flat specification
rejects a non-container with `ValueError`, a nested one rejects a
non-container with `TypeError` and a container of another structure
with `ValueError`, and a flat one converts a container with no
predicted exception. A guard naming only `tf.errors` classes is left
alone: the bare decorator already reports such errors differently.

Fixes #1005.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NTnpjPjJj2aZy1ZkUD1eAn

* Judge every guard, and read the declared failure's argument by points-to

- A `tf.errors` guard is no longer skipped. A data-dependent op error,
  such as an out-of-range `tf.gather`, survives a bare decorator, and
  only the signature's earlier `ValueError` breaks the test. Where the
  error is a static shape error the bare decorator already breaks the
  test, so withholding there costs the spec without restor... (continued)

160 of 176 new or added lines in 4 files covered. (90.91%)

4462 of 5114 relevant lines covered (87.25%)

0.87 hits per line

Uncovered Changes

Lines Coverage ∆ File
12
88.59
-5.73% edu.cuny.hunter.hybridize.core/src/edu/cuny/hunter/hybridize/core/analysis/ExpectedFailureContextAnalysis.java
4
92.56
0.2% edu.cuny.hunter.hybridize.core/src/edu/cuny/hunter/hybridize/core/analysis/Function.java
Jobs
ID Job ID Ran Files Coverage
1 #3281.1 01 Oct 2026 04:24PM UTC 44
87.25
Source Files on build #3281
  • Tree
  • List 44
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 1411debc on github
  • Prev Build on gh-readonly-queue/main/pr-1006-663ad08853cd4537e2936e4ba14917cda2abe127
  • Next Build on main
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