Skip to content

Conversation

@dotandev
Copy link

@dotandev dotandev commented Jan 29, 2026

Description

This PR adds a step to the GitHub Actions CI pipeline to run MIRI (Undefined Behavior detector) on the codebase.

Changes

  • Modified .github/workflows/reusable-build.yml:
    • Added rustup component add miri.
    • Added Miri Check step to the Linux build job.
    • Configured to run cargo miri test --workspace with exclusions for crates that use LLVM bindings (FFI) which are currently unsupported by MIRI:
      • inference-wasm-codegen (depends on inkwell)
      • inference (depends on wasm-codegen)
      • inference-cli (depends on inference)
      • infs (app)
      • inference-lsp (uses inkwell)
      • inference-ide & inference-ide-db (excluded to reduce noise/compile time, focusing on core logic first)

Verification

  • Verified MIRI installation command locally.
  • CI pipeline will now report any UB found in the core crates (AST, Type Checker, etc).

closes #17

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds Miri (MIR Interpreter) checks to the CI pipeline to detect undefined behavior in Rust code. The workflow focuses on testing "logical crates" - core library components that don't involve FFI/LLVM bindings, which Miri doesn't support.

Changes:

  • Added a new GitHub Actions workflow file to run Miri tests on pull requests and pushes to main
  • Configured Miri to test specific crates: inference-ast, inference-type-checker, inf-wasmparser, wat-fmt, inf-wast, and wasm-fmt

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@0xGeorgii 0xGeorgii added the tests Unit, fuzzing, performance, etc. label Jan 30, 2026
@codecov
Copy link

codecov bot commented Jan 30, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@0xGeorgii
Copy link
Contributor

@dotandev thanks for PR, I see in the run MIRI checks dependencies but not core crates code. please take a look so we need to check only our code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

tests Unit, fuzzing, performance, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add MIRI check

2 participants