Skip to content

Add jeff program verification helpers#65

Closed
Forage409 wants to merge 2 commits into
unitaryfoundation:mainfrom
Forage409:add-jeff-verifier-57
Closed

Add jeff program verification helpers#65
Forage409 wants to merge 2 commits into
unitaryfoundation:mainfrom
Forage409:add-jeff-verifier-57

Conversation

@Forage409

Copy link
Copy Markdown

Closes #57.

This adds a small verification module to the Rust reader API:

  • verify(&impl ReadJeff) and verify_module(Module) entry points
  • schema major-version and entrypoint validation
  • function signature value resolution checks
  • dataflow checks for values used before they are defined
  • nested structured-control-flow region checks
  • function-call target validation
  • tests covering the existing example programs plus an invalid entrypoint case

Tested with:

CARGO_HTTP_CHECK_REVOKE=false cargo test -q

Disclosure: I used AI assistance while implementing and checking this change.

@denialhaag denialhaag self-requested a review June 7, 2026 08:35
@Forage409 Forage409 mentioned this pull request Jun 7, 2026

@denialhaag denialhaag left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for your interest in contributing to jeff, @Forage409! 🙂

Before I can review this, please add more tests (at least one negative test per bullet point in #57, but more is always better). That way, we both get a sense of what your implementation already covers. If you need help with generating jeff programs, see encode_examples.sh or generate_test_cases.py.

@denialhaag

Copy link
Copy Markdown
Collaborator

We have decided to go with #68 to resolve #57, so I'll close this PR.

Thanks again for your interest in contributing to jeff, @Forage409! 🙂

@denialhaag denialhaag closed this Jun 18, 2026
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.

Add verification tool

2 participants