Repository navigation
Include ABI layout probe in PR smoke - #773
luisleo526 wants to merge 4 commits into
Conversation
Build and select the existing ABI layout probe alongside the eleven existing fast executables. Update the derived membership pin, preserve prior checks, and exercise removal of the actual ABI row through the real workflow checker. Documentation replacement: the sentence "names its eleven real executables; configure refuses" now names twelve executables and explains the existing probe's Linux x86_64 GNU libstdc++ applicability.
The ABI smoke explanation adds two documentation lines. Correct both exact line-count expectations from 2060 to 2062 while retaining all substantive runner, slow-inventory and same-size negative checks.
Bring the merged hosted release workflow and its CI documentation and checks into the candidate without rewriting the existing commits.
Retain the ABI smoke selector and its tests alongside the current engine changes.
There was a problem hiding this comment.
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 the existing test_abi_layout_probe to the PR smoke's fast set, so PINEFORGE_PR_FAST_TESTS now builds and runs twelve executables instead of eleven. Its size and offset pins only apply on Linux x86_64 with GNU libstdc++. The preflight's pinned fast-rows hash is updated to match, and a new test confirms that removing the probe from the CMake list is refused with the existing "PR fast rows must keep one pinned CMake label list" finding. docs/ci.md now documents the twelve rows and the platform caveat, and the two tests that pin its line count go from 2060 to 2062.
No blocking issues surfaced.
Analysis details — impact, health, verification
Impact & health
Graphify review
Impact — 928 functions depend on the 900 functions this change touches.
Health — this change adds coupling hotspots:
- worse:
ci_workflow_findings()— 84 callers, 24 callees
Verification — 928 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: 928 function(s) in the blast radius were not formally verified this run
· 1 more finding(s) on lines outside this diff (see the check run).
Combine six engine pull requests into one change, gated once. Source pull requests and the heads merged here: - #774 Add live drawing capacity to the runtime limit vocabulary (99b0bfe) - #764 Preserve direction in trade size accessors (834333f) - #765 ci: reduce sanitizer debug info footprint (be68cab) - #773 Include ABI layout probe in PR smoke (4f31c10) - #772 ci: promote the engine baseline on parity alone (349418e) - #759 Write bounded drawing arenas in place and share their slots between checkpoints (cecedc0) Gate on head b4c316b (tree 1a4b2ea): required CI green; one parity sweep over 7,989 probes with no lost coverage, no band movement and no hard regression; one review of the combined diff. In the post-merge native run on the same tree, every native shard and the thread-sanitizer leg pass; the address-sanitizer legs fail on runner disk space (No space left on device), the same jobs that fail on main. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Add the existing ABI layout probe to the twelve-executable PR smoke list so Release and Debug checks exercise the x86 layout assertions before merging. Keep the selector fingerprint, regression coverage and CI documentation in sync.
Regression coverage removes the ABI row to check that the selector rejects its absence. Validation on this head is pending the GitHub-hosted Ubuntu24.04 Release and Debug jobs.
🤖 Generated with Claude Code