Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
liquid-java
/
liquidjava
Public
Notifications
You must be signed in to change notification settings
Fork
36
Star
67
Code
Issues
16
Pull requests
7
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Security and quality
Insights
Soundness holes: Tests and fixes
- #257
#257
Closed
GUIpsp
wants to merge 21 commits into
main
liquid-java/liquidjava:main
from
soundness-hole-fixes
liquid-java/liquidjava:soundness-hole-fixes
Copy head branch name to clipboard
Conversation
Commits
21
(21)
Checks
Files changed
Closed
Soundness holes: Tests and fixes
#257
GUIpsp
wants to merge 21 commits into
main
liquid-java/liquidjava:main
from
soundness-hole-fixes
liquid-java/liquidjava:soundness-hole-fixes
Copy head branch name to clipboard
Commits
Commits on Jun 15, 2026
Add TestSoundnessHoleRuntime: runtime validation for soundness-hole tests
Show description for 6519c7b
GUIpsp
and
claude
committed
6519c7b
View commit details
Copy full SHA for 6519c7b
Browse repository at this point
Add soundness-hole test: double remainder (IEEE vs fmod)
Show description for 4eb45ac
GUIpsp
and
claude
committed
4eb45ac
View commit details
Copy full SHA for 4eb45ac
Browse repository at this point
Fix floating-point % to use Java fmod, not IEEE-754 remainder
Show description for 5c6a6ab
GUIpsp
and
claude
committed
5c6a6ab
View commit details
Copy full SHA for 5c6a6ab
Browse repository at this point
Add soundness-hole test: float precision (FP64 vs binary32)
Show description for 9ee52f7
GUIpsp
and
claude
committed
9ee52f7
View commit details
Copy full SHA for 9ee52f7
Browse repository at this point
Model Java float as 32-bit FP (binary32) with float->double promotion
Show description for 1b64f32
GUIpsp
and
claude
committed
1b64f32
View commit details
Copy full SHA for 1b64f32
Browse repository at this point
Add soundness-hole test: short-circuit RHS side effect applied
Show description for 5d3f1c2
GUIpsp
and
claude
committed
5d3f1c2
View commit details
Copy full SHA for 5d3f1c2
Browse repository at this point
Discard assignments in the short-circuited operand of && / ||
Show description for c23f819
GUIpsp
and
claude
committed
c23f819
View commit details
Copy full SHA for c23f819
Browse repository at this point
Add soundness-hole test: field refinement assumed not established
Show description for cc0ae00
GUIpsp
and
claude
committed
cc0ae00
View commit details
Copy full SHA for cc0ae00
Browse repository at this point
Read an unestablished external field at its default, not its refinement
Show description for 7ffc2ac
GUIpsp
and
claude
committed
7ffc2ac
View commit details
Copy full SHA for 7ffc2ac
Browse repository at this point
Add soundness-hole test: loop modeled as one iteration
Show description for ff8623f
GUIpsp
and
claude
committed
ff8623f
View commit details
Copy full SHA for ff8623f
Browse repository at this point
Havoc variables written in loop bodies
Show description for e5ce861
GUIpsp
and
claude
committed
e5ce861
View commit details
Copy full SHA for e5ce861
Browse repository at this point
Add soundness-hole test: exceptional control flow ignored
Show description for 9dcb850
GUIpsp
and
claude
committed
9dcb850
View commit details
Copy full SHA for 9dcb850
Browse repository at this point
Havoc variables written in try/catch bodies
Show description for 95aef14
GUIpsp
and
claude
committed
95aef14
View commit details
Copy full SHA for 95aef14
Browse repository at this point
Add soundness-hole test: narrowing cast ignored
Show description for 1b7d95a
GUIpsp
and
claude
committed
1b7d95a
View commit details
Copy full SHA for 1b7d95a
Browse repository at this point
Model floating-point to integral narrowing casts as truncation
Show description for 12a6cf3
GUIpsp
and
claude
committed
12a6cf3
View commit details
Copy full SHA for 12a6cf3
Browse repository at this point
Add soundness-hole test: typestate stale under aliasing
Show description for 671ad43
GUIpsp
and
claude
committed
671ad43
View commit details
Copy full SHA for 671ad43
Browse repository at this point
Invalidate aliased typestate on a state transition
Show description for 9106d32
GUIpsp
and
claude
committed
9106d32
View commit details
Copy full SHA for 9106d32
Browse repository at this point
Add soundness-hole test: int multiplication overflow
Show description for f134911
GUIpsp
and
claude
committed
f134911
View commit details
Copy full SHA for f134911
Browse repository at this point
Add soundness-hole test: int negative modulo
Show description for 6243c93
GUIpsp
and
claude
committed
6243c93
View commit details
Copy full SHA for 6243c93
Browse repository at this point
Add soundness-hole test: long division truncation
Show description for a6c5b85
GUIpsp
and
claude
committed
a6c5b85
View commit details
Copy full SHA for a6c5b85
Browse repository at this point
Model Java integral types as fixed-width BitVectors
Show description for 11c748c
GUIpsp
and
claude
committed
11c748c
View commit details
Copy full SHA for 11c748c
Browse repository at this point
You can’t perform that action at this time.