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

ponder-lab / Hybridize-Functions-Refactoring / #3879
89%
main: 90%

Build:
Build:
LAST BUILD BRANCH: ariadne-snapshot
DEFAULT BRANCH: main
Ran 27 Oct 2026 09:55AM UTC
Jobs 1
Files 51
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

27 Oct 2026 09:41AM UTC coverage: 89.491% (+0.04%) from 89.449%
#3879

push

github

web-flow
Refuse a function that passes a tensor parameter to tf.constant (#1174)

* Refuse a function that passes a shape's value across its boundary

Inside one graph, shape inference partially evaluates a shape tensor
such as `tf.shape(x)[1:]` back to static extents, so a reshape by it
keeps a static result shape. Across a tf.function call only the
tensor's type crosses, not its value, so the dimensions become None and
a caller that reads them statically, such as a Keras lazy `build`,
raises. Refuse the eager-to-hybrid conversion when a parameter's value
reaches the shape operand of a returned op (inbound) or a returned
value derives from a dynamic shape op (outbound). Conservative: no
downstream static read is proven.

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

* Mark the closure and recursion misses of the shape-value walk

A shape built in a nested scope, such as a list comprehension, is not
followed, and the optimistic cycle guard misses a shape returned only
through recursion the same way. The follow-up should follow the
lexical-read precedent of #1061.

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

* Ask the engine which TensorFlow API a call invokes

The shape-value check identified ops by decoding the engine's summary
class names and following trampolines itself. Ask
`TensorFlowApis.of(builder, node, call)` instead
(ponder-lab/ML#1084), matching its fully-qualified names against the
existing catalogs. Build against 0.52.111-SNAPSHOT, which carries it
once published.

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

* Ask the engine which program functions a call runs

The shape-value walk found the user functions to descend into by
following trampolines itself, which missed a class method called as
`C.k(x)... (continued)

32 of 32 new or added lines in 5 files covered. (100.0%)

5842 of 6528 relevant lines covered (89.49%)

0.89 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #3879.1 27 Oct 2026 09:55AM UTC 51
89.49
Source Files on build #3879
  • Tree
  • List 51
  • Changed 5
  • Source Changed 5
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 1113b07c on github
  • Prev Build on gh-readonly-queue/main/pr-1176-8d3390692958168987c80da8b264a9ec76365cbf
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