Skip to content

Test the declared drawing-count refusal again - #335

Merged
luisleo526 merged 2 commits into
mainfrom
test/drawing-count-bounds
Nov 6, 2026
Merged

luisleo526 merged 2 commits into
mainfrom
test/drawing-count-bounds

Conversation

@luisleo526

Copy link
Copy Markdown
Contributor

Restores test coverage for the declared drawing-count refusal (PF-E0036) after the bounded drawing arenas were reverted in #327, which removed tests/test_drawing_arena_bounds.py with them. The refusal code itself was not changed.

The file holds only rows that do not depend on the arena text:

  • a declared max_lines_count / max_boxes_count / max_labels_count above 2147483642 is refused at its literal with PF-E0036 (exact message, line and column);
  • the largest accepted value, 2147483642, still translates;
  • an oversized count in a script that draws nothing is not refused and emits no drawing arena.

Test-only; no generated C++ changes. tests/test_drawing_arena_bounds.py: 21 passed on Linux aarch64.

🤖 Generated with Claude Code

Retain the accepted native count boundary and the overflow refusal rows while
keeping unused oversized counts legal without emitting a drawing arena.

@graphify-labs graphify-labs Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Graphify reviewed this change.

No issues found by static checks — no coupling regressions or blocking issues in the code graph. That is not the same as safe to merge: see what was not checked.

Not checked: tests were not run; no formal proof of the changed code.


Graphify review — findings

Adds boundary tests for the declared max_lines_count, max_boxes_count and max_labels_count values, covering line, box and label drawings. Counts above 2147483642 (including INT32_MAX, int32-wrapping values like 4294967297 and 4294967346, and the float spelling 3e9) must fail with a single PF-E0036 diagnostic pinned to the line and column of the offending literal. The at-boundary test only checks that transpile doesn't raise and never inspects the emitted output, so "emitted unchanged" is claimed but not verified. A final test confirms an oversized count with no drawings stays legal and emits no DrawingArena<.

No blocking issues surfaced.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 6 functions depend on the 6 functions this change touches.

Health — grade A; no new coupling hotspots.

Verification — 6 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 6 function(s) in the blast radius were not formally verified this run

Cross-repo impact

Cross-repo impact

This change impacts 2 symbol(s) across 1 peer repo(s) — blast radius over derived cross-repo edges:

  • pineforge-4pass/pineforge-hpo — python/pineforge_hpo/transpile.py (via import_moniker, heuristic), tests/python/test_transpile.py (via import_moniker, heuristic)

1 peer repo(s) in this group are not yet indexed — cross-repo impact may be incomplete.

Cross-repo linkage is derived (SCIP-moniker matches are sound; name/contract matches are heuristic) and ADVISORY — it never affects this check's conclusion.

@luisleo526
luisleo526 merged commit 9546778 into main Nov 6, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant