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

ponder-lab / Hybridize-Functions-Refactoring / #2093
79%

Build:
DEFAULT BRANCH: main
Ran 23 Jun 2026 07:06PM UTC
Jobs 1
Files 32
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

23 Jun 2026 06:59PM UTC coverage: 80.169%. Remained the same
#2093

push

github

web-flow
Add a full-⊤ regression fixture pinning a parameter's `(UNKNOWN, null)` tensor type (#651)

* Add a full-⊤ regression fixture pinning a parameter's `(UNKNOWN, null)` tensor type

`testInferredTensorTypesDtypeTop` pins the full-⊤ marker `TensorType(UNKNOWN,
null)`—both the dtype and shape axes simultaneously unknown—on a decorated
parameter, end-to-end through Ariadne. This fills the dtype-⊤ axis left
uncovered by `testInferredTensorTypesUnknownShapeTop` (shape-⊤ with a concrete
`float32` dtype).

The source is `tf.constant(np.array([1.0, 2.0, 3.0]))` with no `dtype=`
argument:

- dtype-⊤: `NpArray.getDefaultDTypes` returns `EnumSet.of(DType.UNKNOWN)` when
  the `dtype` argument is absent (numpy infers the dtype from data at runtime,
  which a static points-to analysis does not model), per the wala/ML lattice
  contract; `tf.constant` propagates it.
- shape-⊤: `NpArray.getDefaultShapes` returns the shape of arg 0, and a bare
  Python list literal's shape is not modeled, so it falls through to `null`.

The `tf.constant` wrap is load-bearing: a bare `np.array(...)` does not classify
the parameter as tensor-typed, so the `tf.constant` TensorFlow tensor is what
carries the ⊤ type to the parameter. This is a durable full-⊤ source—both axes
are unknown by construction rather than by defeating a specific Ariadne model—
unlike the `json.loads` shape-⊤ source, which is fragile against wala/ML#536.

The shape-⊤ fixture's comment is updated to note the durable source now exists.

Closes #491.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FuhM8SsTRB6BraLt3Ph7ZC

* Cross-reference wala/ML#598 for the load-bearing `tf.constant` wrap

The fixture's `tf.constant` wrap is required because a bare `numpy.array(...)`
value's `TensorType` does not propagate to the callee parameter (Ariadne-side
gap, wala/ML#598). Cite the tracking issue from the test's Javadoc.

Co-Authored-By: Claude Opus 4.8 (1M con... (continued)

1613 of 2012 relevant lines covered (80.17%)

0.8 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #2093.1 23 Jun 2026 07:06PM UTC 32
80.17
Source Files on build #2093
  • Tree
  • List 32
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • af77fd85 on github
  • Prev Build on gh-readonly-queue/main/pr-650-1cb9788cd1c6958225c3c99c6d99cc44f28467f6
  • Next Build on main
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